scapy.contrib.enipTCP
EtherNet/IP (Industrial Protocol)
Based on https://github.com/scy-phy/scapy-cip-enip EtherNet/IP Home: www.odva.org
- class scapy.contrib.enipTCP.ENIPListIdentity(_pkt, /, *, itemCount=0, items=[])[source]
Bases:
PacketList identity request and response
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListIdentity'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPListIdentityItem(_pkt, /, *, itemTypeCode=0, itemLength=0, protocolVersion=0, sinFamily=0, sinPort=0, sinAddress=None, sinZero=0, vendorId=0, deviceType=0, productCode=0, revisionMajor=0, revisionMinor=0, status=0, serialNumber=0, productNameLength=0, productName=None, state=0)[source]
Bases:
PacketList Identity Item Fields
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListIdentityItem'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEShortEnumField (ENIPListIdentityItem).itemTypeCode>, <LEFieldLenField (ENIPListIdentityItem).itemLength>, <LEShortField (ENIPListIdentityItem).protocolVersion>, <ShortField (ENIPListIdentityItem).sinFamily>, <ShortField (ENIPListIdentityItem).sinPort>, <IPField (ENIPListIdentityItem).sinAddress>, <LongField (ENIPListIdentityItem).sinZero>, <LEShortField (ENIPListIdentityItem).vendorId>, <LEShortEnumField (ENIPListIdentityItem).deviceType>, <LEShortField (ENIPListIdentityItem).productCode>, <ByteField (ENIPListIdentityItem).revisionMajor>, <ByteField (ENIPListIdentityItem).revisionMinor>, <LEShortField (ENIPListIdentityItem).status>, <XLEIntField (ENIPListIdentityItem).serialNumber>, <ByteField (ENIPListIdentityItem).productNameLength>, <StrLenField (ENIPListIdentityItem).productName>, <ByteField (ENIPListIdentityItem).state>]
- class scapy.contrib.enipTCP.ENIPListInterfaces(_pkt, /, *, itemCount=0, items=[])[source]
Bases:
PacketList Interfaces Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListInterfaces'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPListInterfacesItem(_pkt, /, *, itemTypeCode=0, itemLength=0, itemData=b'')[source]
Bases:
PacketList Interfaces Item Fields
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListInterfacesItem'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPListServices(_pkt, /, *, itemCount=0, items=[])[source]
Bases:
PacketList Services Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListServices'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPListServicesItem(_pkt, /, *, itemTypeCode=0, itemLength=0, protocolVersion=0, flag=0, serviceName=None)[source]
Bases:
PacketList Services Item Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPListServicesItem'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEShortEnumField (ENIPListServicesItem).itemTypeCode>, <LEFieldLenField (ENIPListServicesItem).itemLength>, <LEShortField (ENIPListServicesItem).protocolVersion>, <XLEShortField (ENIPListServicesItem).flag>, <StrFixedLenField (ENIPListServicesItem).serviceName>]
- class scapy.contrib.enipTCP.ENIPRegisterSession(_pkt, /, *, protocolVersion=1, options=0)[source]
Bases:
PacketRegister Session Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPRegisterSession'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPSendRRData(_pkt, /, *, interface=0, timeout=255, itemCount=0, items=[])[source]
Bases:
PacketSend RR Data Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPSendRRData'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPSendUnitData(_pkt, /, *, interface=0, timeout=255, itemCount=0, items=[])[source]
Bases:
PacketSend Unit Data Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPSendUnitData'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPTCP(_pkt, /, *, commandId=None, length=0, session=0, status=None, senderContext=0, options=0)[source]
Bases:
PacketEthernet/IP packet over TCP
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPTCP'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<LEShortEnumField (ENIPTCP).commandId>, <LEShortField (ENIPTCP).length>, <XLEIntField (ENIPTCP).session>, <LEIntEnumField (ENIPTCP).status>, <LELongField (ENIPTCP).senderContext>, <LEIntField (ENIPTCP).options>]
- payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'commandId': 1}, <class 'scapy.contrib.enipTCP.ENIPUnknownCommand'>), ({'commandId': 4}, <class 'scapy.contrib.enipTCP.ENIPListServices'>), ({'commandId': 99}, <class 'scapy.contrib.enipTCP.ENIPListIdentity'>), ({'commandId': 100}, <class 'scapy.contrib.enipTCP.ENIPListInterfaces'>), ({'commandId': 101}, <class 'scapy.contrib.enipTCP.ENIPRegisterSession'>), ({'commandId': 102}, <class 'scapy.contrib.enipTCP.ENIPUnregisterSession'>), ({'commandId': 111}, <class 'scapy.contrib.enipTCP.ENIPSendRRData'>), ({'commandId': 112}, <class 'scapy.contrib.enipTCP.ENIPSendUnitData'>)]
- class scapy.contrib.enipTCP.ENIPUnknownCommand(_pkt, /)[source]
Bases:
PacketUnknown Command reply
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPUnknownCommand'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.enipTCP.ENIPUnregisterSession(_pkt, /)[source]
Bases:
PacketUnregister Session Command Field
- aliastypes = [<class 'scapy.contrib.enipTCP.ENIPUnregisterSession'>, <class 'scapy.packet.Packet'>]