scapy.contrib.hicp
HICP
Support for HICP (Host IP Control Protocol).
This protocol is used by HMS Anybus software for device discovery and configuration.
Note : As the specification is not public, this layer was built based on the Wireshark dissector and HMS’s HICP DLL. It was tested with a Anybus X-gateway device. Therefore, this implementation may differ from what is written in the standard.
- class scapy.contrib.hicp.HICP(_pkt, /, *, hicp_command=b'')[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICP'>, <class 'scapy.packet.Packet'>]
- payload_guess: List[Tuple[Dict[str, Any], Type[Packet]]] = [({'hicp_command': b'Module scan'}, <class 'scapy.contrib.hicp.HICPModuleScan'>), ({'hicp_command': b'Module scan response'}, <class 'scapy.contrib.hicp.HICPModuleScanResponse'>), ({'hicp_command': b'Wink'}, <class 'scapy.contrib.hicp.HICPWink'>), ({'hicp_command': b'Configure'}, <class 'scapy.contrib.hicp.HICPConfigure'>), ({'hicp_command': b'Reconfigured'}, <class 'scapy.contrib.hicp.HICPReconfigured'>), ({'hicp_command': b'Invalid Configuration'}, <class 'scapy.contrib.hicp.HICPInvalidConfiguration'>), ({'hicp_command': b'Invalid Password'}, <class 'scapy.contrib.hicp.HICPInvalidPassword'>)]
- class scapy.contrib.hicp.HICPConfigure(_pkt, /, *, target='ff:ff:ff:ff:ff:ff', password=b'', new_password=b'', ip_address='255.255.255.255', subnet_mask='255.255.255.0', gateway_address='0.0.0.0', dhcp=b'OFF', hostname=b'', dns1='0.0.0.0', dns2='0.0.0.0', padding=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPConfigure'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<MACField (HICPConfigure).target>, <StrField (HICPConfigure).password>, <StrField (HICPConfigure).new_password>, <IPField (HICPConfigure).ip_address>, <IPField (HICPConfigure).subnet_mask>, <IPField (HICPConfigure).gateway_address>, <StrField (HICPConfigure).dhcp>, <StrField (HICPConfigure).hostname>, <IPField (HICPConfigure).dns1>, <IPField (HICPConfigure).dns2>, <ByteField (HICPConfigure).padding>]
- class scapy.contrib.hicp.HICPInvalidConfiguration(_pkt, /, *, source='ff:ff:ff:ff:ff:ff')[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPInvalidConfiguration'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.hicp.HICPInvalidPassword(_pkt, /, *, source='ff:ff:ff:ff:ff:ff')[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPInvalidPassword'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.hicp.HICPModuleScan(_pkt, /, *, hicp_command=b'Module scan', padding=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPModuleScan'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.hicp.HICPModuleScanResponse(_pkt, /, *, protocol_version=b'1.00', fieldbus_type=b'', module_version=b'', mac_address='ff:ff:ff:ff:ff:ff', ip_address='255.255.255.255', subnet_mask='255.255.255.0', gateway_address='0.0.0.0', dhcp=b'OFF', password=b'OFF', hostname=b'', dns1='0.0.0.0', dns2='0.0.0.0', padding=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPModuleScanResponse'>, <class 'scapy.packet.Packet'>]
- fields_desc: ClassVar[List[Field[Any, Any] | _FieldContainer]] = [<StrField (HICPModuleScanResponse).protocol_version>, <StrField (HICPModuleScanResponse).fieldbus_type>, <StrField (HICPModuleScanResponse).module_version>, <MACField (HICPModuleScanResponse).mac_address>, <IPField (HICPModuleScanResponse).ip_address>, <IPField (HICPModuleScanResponse).subnet_mask>, <IPField (HICPModuleScanResponse).gateway_address>, <StrField (HICPModuleScanResponse).dhcp>, <StrField (HICPModuleScanResponse).password>, <StrField (HICPModuleScanResponse).hostname>, <IPField (HICPModuleScanResponse).dns1>, <IPField (HICPModuleScanResponse).dns2>, <ByteField (HICPModuleScanResponse).padding>]
- class scapy.contrib.hicp.HICPReconfigured(_pkt, /, *, source='ff:ff:ff:ff:ff:ff')[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPReconfigured'>, <class 'scapy.packet.Packet'>]
- class scapy.contrib.hicp.HICPWink(_pkt, /, *, target='ff:ff:ff:ff:ff:ff', padding=0)[source]
Bases:
Packet- aliastypes = [<class 'scapy.contrib.hicp.HICPWink'>, <class 'scapy.packet.Packet'>]