scapy.contrib.aoe

class scapy.contrib.aoe.AOE(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
extract_padding(s)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|VERSION| FLAGS |     ERROR     |             MAJOR             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     MINOR     |      CMD      |              TAG              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           I ATA CMD           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          Q CONF INFO          |           MAC M LIST          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            RES REL            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                             Fig. AOE                             
AOE fields

version

BitField (4 bits)

1

flags

FlagsField (4 bits)

<Flag 0 ()>

error

ByteEnumField

0

major

XShortField

65535

minor

XByteField

255

cmd

ByteEnumField

1

tag

XIntField

0

i_ata_cmd

PacketField (Cond)

<IssueATACommand  |>

q_conf_info

PacketField (Cond)

<QueryConfigInformation  |>

mac_m_list

PacketField (Cond)

<MacMaskList  |>

res_rel

PacketField (Cond)

<ReserveRelease  |>

payload_guess

Possible sublayers: IssueATACommand, MacMaskList, QueryConfigInformation, ReserveRelease

class scapy.contrib.aoe.Directive(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    RESERVED   |      DCMD     |            MAC ADDR           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                 +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. Directive                          
Directive fields

reserved

ByteField

0

dcmd

ByteEnumField

0

mac_addr

MACField

'00:00:00:00:00:00'

class scapy.contrib.aoe.IssueATACommand(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
extract_padding(s)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     FLAGS     |  ERR FEATURE  |  SECTOR COUNT |   CMD STATUS  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      LBA0     |      LBA1     |      LBA2     |      LBA3     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      LBA4     |      LBA5     |            RESERVED           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              DATA             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. IssueATACommand                       
IssueATACommand fields

flags

FlagsField (8 bits)

<Flag 0 ()>

err_feature

XByteField

0

sector_count

ByteField

1

cmd_status

XByteField

236

lba0

XByteField

0

lba1

XByteField

0

lba2

XByteField

0

lba3

XByteField

0

lba4

XByteField

0

lba5

XByteField

0

reserved

XShortField

0

data

StrLenField

b''

class scapy.contrib.aoe.MacMaskList(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
extract_padding(s)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    RESERVED   |      MCMD     |     MERROR    |   DIR COUNT   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           DIRECTIVES          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. MacMaskList                         
MacMaskList fields

reserved

ByteField

0

mcmd

ByteEnumField

0

merror

ByteEnumField

0

dir_count

FieldLenField

None

directives

PacketListField

[]

class scapy.contrib.aoe.QueryConfigInformation(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
extract_padding(s)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          BUFFER COUNT         |            FIRMWARE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  SECTOR COUNT |  AOE  |  CCMD |         CONFIG LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             CONFIG            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. QueryConfigInformation                    
QueryConfigInformation fields

buffer_count

ShortField

0

firmware

ShortField

0

sector_count

ByteField

0

aoe

BitField (4 bits)

0

ccmd

BitEnumField (4 bits)

0

config_length

FieldLenField

None

config

StrLenField

None

class scapy.contrib.aoe.ReserveRelease(*args, **kargs)

Bases: scapy.packet.Packet

aliastypes
extract_padding(s)
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      RCMD     |             NB MAC            |   MAC ADDRS   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. ReserveRelease                        
ReserveRelease fields

rcmd

ByteEnumField

0

nb_mac

FieldLenField

None

mac_addrs

FieldListField

[]