scapy.contrib.aoe

class scapy.contrib.aoe.AOE(_pkt, /, *, version=1, flags=<Flag 0 ()>, error=0, major=65535, minor=255, cmd=1, tag=0, i_ata_cmd=<IssueATACommand  |>, q_conf_info=<QueryConfigInformation  |>, mac_m_list=<MacMaskList  |>, res_rel=<ReserveRelease  |>)[源代码]

基类: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

<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(_pkt, /, *, reserved=0, dcmd=0, mac_addr='00:00:00:00:00:00')[源代码]

基类: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(_pkt, /, *, flags=<Flag 0 ()>, err_feature=0, sector_count=1, cmd_status=236, lba0=0, lba1=0, lba2=0, lba3=0, lba4=0, lba5=0, reserved=0, data=b'')[源代码]

基类: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

<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(_pkt, /, *, reserved=0, mcmd=0, merror=0, dir_count=None, directives=[])[源代码]

基类: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(_pkt, /, *, buffer_count=0, firmware=0, sector_count=0, aoe=0, ccmd=0, config_length=None, config=None)[源代码]

基类: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

0

config_length

FieldLenField

None

config

StrLenField

None

class scapy.contrib.aoe.ReserveRelease(_pkt, /, *, rcmd=0, nb_mac=None, mac_addrs=[])[源代码]

基类: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

[]