scapy.contrib.enipTCP

class scapy.contrib.enipTCP.BaseSendPacket

Bases: scapy.packet.Packet

Abstract Class

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        INTERFACEHANDLE                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            TIMEOUT            |       ENCAPSULATEDPACKET      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. BaseSendPacket                        
BaseSendPacket fields

interfaceHandle

LEIntField

0

timeout

LEShortField

0

encapsulatedPacket

PacketField

None

class scapy.contrib.enipTCP.CommandSpecificData

Bases: scapy.packet.Packet

Command Specific Data Field Default

aliastypes
class scapy.contrib.enipTCP.ENIPListIdentityReply

Bases: scapy.packet.Packet

List Identity Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMCOUNT           |         IDENTITYITEMS         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. ENIPListIdentityReply                    
ENIPListIdentityReply fields

itemCount

FieldLenField

0

identityItems

PacketField

None

class scapy.contrib.enipTCP.ENIPListIdentityReplyItems

Bases: scapy.packet.Packet

List Identity Items Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ITEMTYPECODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMLENGTH          |            ITEMDATA           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                 Fig. ENIPListIdentityReplyItems                  
ENIPListIdentityReplyItems fields

itemTypeCode

LEIntField

0

itemLength

FieldLenField

0

itemData

StrLenField

b''

class scapy.contrib.enipTCP.ENIPListInterfacesReply

Bases: scapy.packet.Packet

List Interfaces Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMCOUNT           |         IDENTITYITEMS         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. ENIPListInterfacesReply                   
ENIPListInterfacesReply fields

itemCount

FieldLenField

0

identityItems

PacketField

0

class scapy.contrib.enipTCP.ENIPListInterfacesReplyItems

Bases: scapy.packet.Packet

List Interfaces Items Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ITEMTYPECODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMLENGTH          |            ITEMDATA           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Fig. ENIPListInterfacesReplyItems                 
ENIPListInterfacesReplyItems fields

itemTypeCode

LEIntField

0

itemLength

FieldLenField

0

itemData

StrLenField

b''

class scapy.contrib.enipTCP.ENIPListServicesReply

Bases: scapy.packet.Packet

List Services Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMCOUNT           |          TARGETITEMS          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. ENIPListServicesReply                    
ENIPListServicesReply fields

itemCount

FieldLenField

0

targetItems

PacketField

None

class scapy.contrib.enipTCP.ENIPListServicesReplyItems

Bases: scapy.packet.Packet

List Services Items Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ITEMTYPECODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           ITEMLENGTH                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    VERSION    |      FLAG     |          SERVICENAME          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                 Fig. ENIPListServicesReplyItems                  
ENIPListServicesReplyItems fields

itemTypeCode

LEIntField

0

itemLength

LEIntField

0

version

ByteField

1

flag

ByteField

0

serviceName

StrFixedLenField

None

class scapy.contrib.enipTCP.ENIPRegisterSession

Bases: scapy.contrib.enipTCP.CommandSpecificData

Register Session Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        PROTOCOLVERSION        |            OPTIONS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. ENIPRegisterSession                     
ENIPRegisterSession fields

protocolVersion

LEShortField

1

options

LEShortField

0

class scapy.contrib.enipTCP.ENIPSendRRData

Bases: scapy.contrib.enipTCP.BaseSendPacket

Send RR Data Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        INTERFACEHANDLE                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            TIMEOUT            |       ENCAPSULATEDPACKET      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. ENIPSendRRData                        
ENIPSendRRData fields

interfaceHandle

LEIntField

0

timeout

LEShortField

0

encapsulatedPacket

PacketField

None

class scapy.contrib.enipTCP.ENIPSendUnitData

Bases: scapy.contrib.enipTCP.BaseSendPacket

Send Unit Data Command Field

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        INTERFACEHANDLE                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            TIMEOUT            |       ENCAPSULATEDPACKET      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. ENIPSendUnitData                       
ENIPSendUnitData fields

interfaceHandle

LEIntField

0

timeout

LEShortField

0

encapsulatedPacket

PacketField

None

class scapy.contrib.enipTCP.ENIPTCP

Bases: scapy.packet.Packet

Ethernet/IP packet over TCP

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           COMMANDID           |             LENGTH            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            SESSION                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             STATUS                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         SENDERCONTEXT                         |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            OPTIONS                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      COMMANDSPECIFICDATA      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. ENIPTCP                           
ENIPTCP fields

commandId

LEShortEnumField

None

length

LEShortField

0

session

XLEIntField

0

status

LEIntEnumField

None

senderContext

LELongField

0

options

LEIntField

0

commandSpecificData

MultipleTypeField

None

post_build(pkt, pay)
class scapy.contrib.enipTCP.EncapsulatedPacket

Bases: scapy.packet.Packet

Encapsulated 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ITEMCOUNT           |              ITEM             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. EncapsulatedPacket                      
EncapsulatedPacket fields

itemCount

LEShortField

2

item

PacketListField

[]

class scapy.contrib.enipTCP.ItemData

Bases: scapy.packet.Packet

Common Packet Format

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             TYPEID            |             LENGTH            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              DATA             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. ItemData                           
ItemData fields

typeId

LEShortEnumField

0

length

LEShortField

0

data

XLEStrLenField

b''