scapy.contrib.pnio_rpc

PNIO RPC endpoints

class scapy.contrib.pnio_rpc.ARBlockReq(_pkt, /, *, block_type=257, block_length=None, block_version_high=1, block_version_low=0, ARType=1, ARUUID=None, SessionKey=0, CMInitiatorMacAdd=None, CMInitiatorObjectUUID=None, ARProperties_PullModuleAlarmAllowed=0, ARProperties_StartupMode=0, ARProperties_reserved_3=0, ARProperties_reserved_2=0, ARProperties_AcknowledgeCompanionAR=0, ARProperties_CompanionAR=0, ARProperties_DeviceAccess=0, ARProperties_reserved_1=0, ARProperties_ParametrizationServer=0, ARProperties_SupervisorTakeoverAllowed=0, ARProperties_State=1, CMInitiatorActivityTimeoutFactor=1000, CMInitiatorUDPRTPort=34962, StationNameLength=None, CMInitiatorStationName=b'')[source]

Bases: Block

Application relationship block request

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             ARTYPE            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SESSIONKEY          |       CMINITIATORMACADD       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     CMINITIATOROBJECTUUID                     |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|A|A|ARPROPERTIE|ARPROPERTIES RESERVED 2|A|ARP|A|ARPRO|A|A|ARPRO|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|CMINITIATORACTIVITYTIMEOUTFACTO|      CMINITIATORUDPRTPORT     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       STATIONNAMELENGTH       |     CMINITIATORSTATIONNAME    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. ARBlockReq                          
ARBlockReq fields

block_type

ShortEnumField

257

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

ARType

XShortEnumField

1

ARUUID

UUIDField

None

SessionKey

ShortField

0

CMInitiatorMacAdd

MACField

None

CMInitiatorObjectUUID

UUIDField

None

ARProperties_PullModuleAlarmAllowed

BitField (1 bit)

0

ARProperties_StartupMode

BitEnumField

0

ARProperties_reserved_3

BitField (6 bits)

0

ARProperties_reserved_2

BitField (12 bits)

0

ARProperties_AcknowledgeCompanionAR

BitField (1 bit)

0

ARProperties_CompanionAR

BitEnumField

0

ARProperties_DeviceAccess

BitEnumField

0

ARProperties_reserved_1

BitField (3 bits)

0

ARProperties_ParametrizationServer

BitEnumField

0

ARProperties_SupervisorTakeoverAllowed

BitField (1 bit)

0

ARProperties_State

BitEnumField

1

CMInitiatorActivityTimeoutFactor

ShortField

1000

CMInitiatorUDPRTPort

ShortField

34962

StationNameLength

FieldLenField

None

CMInitiatorStationName

StrLenField

b''

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

class scapy.contrib.pnio_rpc.ARBlockRes(_pkt, /, *, block_type=33025, block_length=None, block_version_high=1, block_version_low=0, ARType=1, ARUUID=None, SessionKey=0, CMResponderMacAdd=None, CMResponderUDPRTPort=34962)[source]

Bases: Block

Application relationship block response

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             ARTYPE            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SESSIONKEY          |       CMRESPONDERMACADD       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      CMRESPONDERUDPRTPORT     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. ARBlockRes                          
ARBlockRes fields

block_type

ShortEnumField

33025

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

ARType

XShortEnumField

1

ARUUID

UUIDField

None

SessionKey

ShortField

0

CMResponderMacAdd

MACField

None

CMResponderUDPRTPort

ShortField

34962

class scapy.contrib.pnio_rpc.AdjustDCPBoundary(_pkt, /, *, block_type=549, block_length=None, block_version_high=1, block_version_low=0, padding1=b'', dcpBoundary=0, adjustProperties=0, padding2=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING1           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          DCPBOUNDARY                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADJUSTPROPERTIES       |            PADDING2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. AdjustDCPBoundary                      
AdjustDCPBoundary fields

block_type

ShortEnumField

549

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding1

StrFixedLenField

b''

dcpBoundary

IntField

0

adjustProperties

ShortField

0

padding2

PadField

0

class scapy.contrib.pnio_rpc.AdjustDomainBoundary(_pkt, /, *, block_type=521, block_length=None, block_version_high=1, block_version_low=0, padding1=b'', DomainBoundaryIngress=0, DomainBoundaryEgress=0, adjustProperties=0, padding2=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING1           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                     DOMAINBOUNDARYINGRESS                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      DOMAINBOUNDARYEGRESS                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADJUSTPROPERTIES       |            PADDING2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. AdjustDomainBoundary                     
AdjustDomainBoundary fields

block_type

ShortEnumField

521

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding1

StrFixedLenField

b''

DomainBoundaryIngress

IntEnumField

0

DomainBoundaryEgress

IntEnumField

0

adjustProperties

ShortField

0

padding2

PadField

0

class scapy.contrib.pnio_rpc.AdjustLinkState(_pkt, /, *, block_type=539, block_length=None, block_version_high=1, block_version_low=0, padding=b'', LinkState=0, AdjustProperties=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           LINKSTATE           |        ADJUSTPROPERTIES       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. AdjustLinkState                       
AdjustLinkState fields

block_type

ShortEnumField

539

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

LinkState

XShortEnumField

0

AdjustProperties

ShortField

0

class scapy.contrib.pnio_rpc.AdjustMauType(_pkt, /, *, block_type=526, block_length=None, block_version_high=1, block_version_low=0, padding=0, MAUType=1, adjustProperties=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            MAUTYPE            |        ADJUSTPROPERTIES       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. AdjustMauType                        
AdjustMauType fields

block_type

ShortEnumField

526

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

PadField

0

MAUType

XShortEnumField

1

adjustProperties

ShortField

0

class scapy.contrib.pnio_rpc.AdjustMauTypeExtension(_pkt, /, *, block_type=553, block_length=None, block_version_high=1, block_version_low=0, padding=0, MAUTypeExtension=0, adjustProperties=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        MAUTYPEEXTENSION       |        ADJUSTPROPERTIES       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. AdjustMauTypeExtension                    
AdjustMauTypeExtension fields

block_type

ShortEnumField

553

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

PadField

0

MAUTypeExtension

XShortEnumField

0

adjustProperties

ShortField

0

class scapy.contrib.pnio_rpc.AdjustMulticastBoundary(_pkt, /, *, block_type=528, block_length=None, block_version_high=1, block_version_low=0, padding1=b'', MulticastAddress=0, adjustProperties=0, padding2=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING1           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        MULTICASTADDRESS                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADJUSTPROPERTIES       |            PADDING2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. AdjustMulticastBoundary                   
AdjustMulticastBoundary fields

block_type

ShortEnumField

528

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding1

StrFixedLenField

b''

MulticastAddress

IntField

0

adjustProperties

ShortField

0

padding2

PadField

0

class scapy.contrib.pnio_rpc.AdjustPeerToPeerBoundary(_pkt, /, *, block_type=548, block_length=None, block_version_high=1, block_version_low=0, padding1=b'', peerToPeerBoundary=0, adjustProperties=0, padding2=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING1           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       PEERTOPEERBOUNDARY                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADJUSTPROPERTIES       |            PADDING2           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Fig. AdjustPeerToPeerBoundary                   
AdjustPeerToPeerBoundary fields

block_type

ShortEnumField

548

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding1

StrFixedLenField

b''

peerToPeerBoundary

IntField

0

adjustProperties

ShortField

0

padding2

PadField

0

class scapy.contrib.pnio_rpc.AlarmCRBlockReq(_pkt, /, *, block_type=259, block_length=None, block_version_high=1, block_version_low=0, AlarmCRType=1, LT=34962, AlarmCRProperties_Priority=0, AlarmCRProperties_Transport=0, AlarmCRProperties_Reserved1=0, AlarmCRProperties_Reserved2=0, RTATimeoutFactor=1, RTARetries=3, LocalAlarmReference=3, MaxAlarmDataLength=200, AlarmCRTagHeaderHigh=49152, AlarmCRTagHeaderLow=40960)[source]

Bases: Block

Alarm CR block request

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|          ALARMCRTYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               LT              |A|A|ALARMCRPROPERTIES RESERVED1|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |ALARMCRPROPERTI|        RTATIMEOUTFACTOR       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           RTARETRIES          |      LOCALALARMREFERENCE      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       MAXALARMDATALENGTH      |      ALARMCRTAGHEADERHIGH     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      ALARMCRTAGHEADERLOW      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. AlarmCRBlockReq                       
AlarmCRBlockReq fields

block_type

ShortEnumField

259

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

AlarmCRType

XShortEnumField

1

LT

ShortField

34962

AlarmCRProperties_Priority

BitField (1 bit)

0

AlarmCRProperties_Transport

BitEnumField

0

AlarmCRProperties_Reserved1

BitField (22 bits)

0

AlarmCRProperties_Reserved2

BitField (8 bits)

0

RTATimeoutFactor

ShortField

1

RTARetries

ShortField

3

LocalAlarmReference

ShortField

3

MaxAlarmDataLength

ShortField

200

AlarmCRTagHeaderHigh

ShortField

49152

AlarmCRTagHeaderLow

ShortField

40960

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

post_build(p, pay)[source]
class scapy.contrib.pnio_rpc.AlarmCRBlockRes(_pkt, /, *, block_type=33027, block_length=None, block_version_high=1, block_version_low=0, AlarmCRType=1, LocalAlarmReference=0, MaxAlarmDataLength=0)[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|          ALARMCRTYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      LOCALALARMREFERENCE      |       MAXALARMDATALENGTH      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. AlarmCRBlockRes                       
AlarmCRBlockRes fields

block_type

ShortEnumField

33027

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

AlarmCRType

XShortEnumField

1

LocalAlarmReference

ShortField

0

MaxAlarmDataLength

ShortField

0

class scapy.contrib.pnio_rpc.AlarmItem(_pkt, /, *, UserStructureIdentifier=0, load=b'')[source]

Bases: Packet

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |              LOAD             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. AlarmItem                          
AlarmItem fields

UserStructureIdentifier

XShortField

0

load

PacketField

b''

class scapy.contrib.pnio_rpc.AlarmNotificationPDU(_pkt, /, *, block_type=None, block_length=None, block_version_high=1, block_version_low=0, AlarmType=0, API=0, SlotNumber=0, SubslotNumber=0, ModuleIdentNumber=0, SubmoduleIdentNUmber=0, AlarmSpecifier=0, AlarmPayload=[])[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|           ALARMTYPE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       MODULEIDENTNUMBER                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      SUBMODULEIDENTNUMBER                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         ALARMSPECIFIER        |          ALARMPAYLOAD         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. AlarmNotificationPDU                     
AlarmNotificationPDU fields

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

AlarmType

ShortField

0

API

XIntField

0

SlotNumber

ShortField

0

SubslotNumber

ShortField

0

ModuleIdentNumber

XIntField

0

SubmoduleIdentNUmber

XIntField

0

AlarmSpecifier

XShortField

0

AlarmPayload

PacketListField

[]

class scapy.contrib.pnio_rpc.AlarmNotification_High(_pkt, /, *, block_type=1, block_length=None, block_version_high=1, block_version_low=0, AlarmType=0, API=0, SlotNumber=0, SubslotNumber=0, ModuleIdentNumber=0, SubmoduleIdentNUmber=0, AlarmSpecifier=0, AlarmPayload=[])[source]

Bases: AlarmNotificationPDU

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|           ALARMTYPE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       MODULEIDENTNUMBER                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      SUBMODULEIDENTNUMBER                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         ALARMSPECIFIER        |          ALARMPAYLOAD         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                   Fig. AlarmNotification_High                    
AlarmNotification_High fields

block_type

ShortEnumField

1

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

AlarmType

ShortField

0

API

XIntField

0

SlotNumber

ShortField

0

SubslotNumber

ShortField

0

ModuleIdentNumber

XIntField

0

SubmoduleIdentNUmber

XIntField

0

AlarmSpecifier

XShortField

0

AlarmPayload

PacketListField

[]

class scapy.contrib.pnio_rpc.AlarmNotification_Low(_pkt, /, *, block_type=2, block_length=None, block_version_high=1, block_version_low=0, AlarmType=0, API=0, SlotNumber=0, SubslotNumber=0, ModuleIdentNumber=0, SubmoduleIdentNUmber=0, AlarmSpecifier=0, AlarmPayload=[])[source]

Bases: AlarmNotificationPDU

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|           ALARMTYPE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                       MODULEIDENTNUMBER                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                      SUBMODULEIDENTNUMBER                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         ALARMSPECIFIER        |          ALARMPAYLOAD         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. AlarmNotification_Low                    
AlarmNotification_Low fields

block_type

ShortEnumField

2

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

AlarmType

ShortField

0

API

XIntField

0

SlotNumber

ShortField

0

SubslotNumber

ShortField

0

ModuleIdentNumber

XIntField

0

SubmoduleIdentNUmber

XIntField

0

AlarmSpecifier

XShortField

0

AlarmPayload

PacketListField

[]

class scapy.contrib.pnio_rpc.Alarm_High(_pkt, /, *, AlarmDstEndpoint=0, AlarmSrcEndpoint=0, PDUTypeType=0, PDUTypeVersion=0, AddFlags=0, SendSeqNum=0, AckSeqNum=0, VarPartLen=0, RTA_SDU=None)[source]

Bases: 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ALARMDSTENDPOINT       |        ALARMSRCENDPOINT       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PDUTYPE|PDUTYPE|    ADDFLAGS   |           SENDSEQNUM          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ACKSEQNUM           |           VARPARTLEN          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            RTA SDU            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. Alarm_High                          
Alarm_High fields

AlarmDstEndpoint

ShortField

0

AlarmSrcEndpoint

ShortField

0

PDUTypeType

BitEnumField

0

PDUTypeVersion

BitEnumField

0

AddFlags

BitField (8 bits)

0

SendSeqNum

XShortField

0

AckSeqNum

XShortField

0

VarPartLen

XShortField

0

RTA_SDU

PacketField

None

class scapy.contrib.pnio_rpc.Alarm_Low(_pkt, /, *, AlarmDstEndpoint=0, AlarmSrcEndpoint=0, PDUTypeType=0, PDUTypeVersion=0, AddFlags=0, SendSeqNum=0, AckSeqNum=0, VarPartLen=0, RTA_SDU=None)[source]

Bases: 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ALARMDSTENDPOINT       |        ALARMSRCENDPOINT       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PDUTYPE|PDUTYPE|    ADDFLAGS   |           SENDSEQNUM          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ACKSEQNUM           |           VARPARTLEN          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            RTA SDU            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. Alarm_Low                          
Alarm_Low fields

AlarmDstEndpoint

ShortField

0

AlarmSrcEndpoint

ShortField

0

PDUTypeType

BitEnumField

0

PDUTypeVersion

BitEnumField

0

AddFlags

BitField (8 bits)

0

SendSeqNum

XShortField

0

AckSeqNum

XShortField

0

VarPartLen

XShortField

0

RTA_SDU

PacketField

None

class scapy.contrib.pnio_rpc.Block(_pkt, /, *, block_type=0, block_length=None, block_version_high=1, block_version_low=0, load=b'')[source]

Bases: Packet

A generic block packet for PNIO RPC

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|              LOAD             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            Fig. Block                            
Block fields

block_type

ShortEnumField

0

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

load

StrLenField

b''

payload_length()[source]

A function for each block, to determine the length of the payload

post_build(p, pay)[source]
class scapy.contrib.pnio_rpc.BlockHeader(_pkt, /, *, block_type=None, block_length=None, block_version_high=1, block_version_low=0)[source]

Bases: Packet

Abstract packet to centralize block headers fields

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. BlockHeader                         
BlockHeader fields

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

class scapy.contrib.pnio_rpc.DiagnosisItem(_pkt, /, *, UserStructureIdentifier=0, ChannelNumber=0, ChannelProperties=0, ChannelErrorType=0, ExtChannelErrorType=0, ExtChannelAddValue=0, QualifiedChannelQualifier=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |         CHANNELNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       CHANNELPROPERTIES       |        CHANNELERRORTYPE       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      EXTCHANNELERRORTYPE      |       EXTCHANNELADDVALUE      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |   QUALIFIEDCHANNELQUALIFIER   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. DiagnosisItem                        
DiagnosisItem fields

UserStructureIdentifier

XShortField

0

ChannelNumber

XShortField

0

ChannelProperties

XShortField

0

ChannelErrorType

XShortField

0

ExtChannelErrorType

XShortField (Cond)

0

ExtChannelAddValue

XIntField (Cond)

0

QualifiedChannelQualifier

XIntField (Cond)

0

class scapy.contrib.pnio_rpc.ExpectedSubmodule(_pkt, /, *, SubslotNumber=0, SubmoduleIdentNumber=0, SubmoduleProperties_reserved_2=0, SubmoduleProperties_reserved_1=0, SubmoduleProperties_DiscardIOXS=0, SubmoduleProperties_ReduceOutputSubmoduleDataLength=0, SubmoduleProperties_ReduceInputSubmoduleDataLength=0, SubmoduleProperties_SharedInput=0, SubmoduleProperties_Type=0, DataDescription=[])[source]

Bases: Packet

Description of a submodule in an API of an expected submodule

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         SUBSLOTNUMBER         |      SUBMODULEIDENTNUMBER     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |SUBMODULEPROPER|SUB|S|S|S|S|SUB|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        DATADESCRIPTION        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. ExpectedSubmodule                      
ExpectedSubmodule fields

SubslotNumber

XShortField

0

SubmoduleIdentNumber

XIntField

0

SubmoduleProperties_reserved_2

XByteField

0

SubmoduleProperties_reserved_1

BitField (2 bits)

0

SubmoduleProperties_DiscardIOXS

BitField (1 bit)

0

SubmoduleProperties_ReduceOutputSubmoduleDataLength

BitField (1 bit)

0

SubmoduleProperties_ReduceInputSubmoduleDataLength

BitField (1 bit)

0

SubmoduleProperties_SharedInput

BitField (1 bit)

0

SubmoduleProperties_Type

BitEnumField

0

DataDescription

PacketListField

[]

class scapy.contrib.pnio_rpc.ExpectedSubmoduleAPI(_pkt, /, *, API=0, SlotNumber=0, ModuleIdentNumber=0, ModuleProperties=0, NumberOfSubmodules=None, Submodules=[])[source]

Bases: Packet

Description of an API in the expected submodules blocks

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |       MODULEIDENTNUMBER       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |        MODULEPROPERTIES       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       NUMBEROFSUBMODULES      |           SUBMODULES          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Fig. ExpectedSubmoduleAPI                     
ExpectedSubmoduleAPI fields

API

XIntField

0

SlotNumber

XShortField

0

ModuleIdentNumber

XIntField

0

ModuleProperties

XShortField

0

NumberOfSubmodules

FieldLenField

None

Submodules

PacketListField

[]

class scapy.contrib.pnio_rpc.ExpectedSubmoduleBlockReq(_pkt, /, *, block_type=260, block_length=None, block_version_high=1, block_version_low=0, NumberOfAPIs=None, APIs=[])[source]

Bases: Block

Expected submodule block request

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|          NUMBEROFAPIS         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              APIS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Fig. ExpectedSubmoduleBlockReq                  
ExpectedSubmoduleBlockReq fields

block_type

ShortEnumField

260

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

NumberOfAPIs

FieldLenField

None

APIs

PacketListField

[]

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

class scapy.contrib.pnio_rpc.ExpectedSubmoduleDataDescription(_pkt, /, *, DataDescription=0, SubmoduleDataLength=0, LengthIOCS=0, LengthIOPS=0)[source]

Bases: Packet

Description of the data of a submodule

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        DATADESCRIPTION        |      SUBMODULEDATALENGTH      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   LENGTHIOCS  |   LENGTHIOPS  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

              Fig. ExpectedSubmoduleDataDescription               
ExpectedSubmoduleDataDescription fields

DataDescription

XShortEnumField

0

SubmoduleDataLength

ShortField

0

LengthIOCS

ByteField

0

LengthIOPS

ByteField

0

class scapy.contrib.pnio_rpc.FParametersBlock(_pkt, /, *, F_Prm_Flag1_Reserved_7=0, F_CRC_Seed=0, F_CRC_Length=0, F_SIL=2, F_Check_iPar=0, F_Check_SeqNr=0, F_Par_Version=1, F_Block_ID=0, F_Prm_Flag2_Reserved=0, F_Passivation=0, F_Source_Add=0, F_Dest_Add=0, F_WD_Time=0, F_WD_Time_2=0, F_iPar_CRC=0, F_Par_CRC=0)[source]

Bases: Packet

F-Parameters configuration block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|F|F C|F S|F|F|F P|F BLO|F P|F|          F SOURCE ADD         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           F DEST ADD          |           F WD TIME           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          F WD TIME 2          |           F IPAR CRC          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |           F PAR CRC           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. FParametersBlock                       
FParametersBlock fields

F_Prm_Flag1_Reserved_7

BitField (1 bit)

0

F_CRC_Seed

BitField (1 bit)

0

F_CRC_Length

BitEnumField

0

F_SIL

BitEnumField

2

F_Check_iPar

BitField (1 bit)

0

F_Check_SeqNr

BitField (1 bit)

0

F_Par_Version

BitEnumField

1

F_Block_ID

BitEnumField

0

F_Prm_Flag2_Reserved

BitField (2 bits)

0

F_Passivation

BitField (1 bit)

0

F_Source_Add

XShortField

0

F_Dest_Add

XShortField

0

F_WD_Time

ShortField

0

F_WD_Time_2

ShortField (Cond)

0

F_iPar_CRC

XIntField (Cond)

0

F_Par_CRC

XShortField

0

payload_guess

Possible sublayers: Padding

class scapy.contrib.pnio_rpc.IM0Block(_pkt, /, *, block_type=32, block_length=None, block_version_high=1, block_version_low=0, VendorIDHigh=0, VendorIDLow=0, OrderID=b'', IMSerialNumber=b'', IMHardwareRevision=0, IMSWRevisionPrefix=b'V', IMSWRevisionFunctionalEnhancement=0, IMSWRevisionBugFix=0, IMSWRevisionInternalChange=0, IMRevisionCounter=0, IMProfileID=0, IMProfileSpecificType=0, IMVersionMajor=1, IMVersionMinor=1, IMSupported=0)[source]

Bases: Block

Identification and Maintenance 0

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|  VENDORIDHIGH |  VENDORIDLOW  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            ORDERID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                         IMSERIALNUMBER                        |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       IMHARDWAREREVISION      |IMSWREVISIONPRE|IMSWREVISIONFUN|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|IMSWREVISIONBUG|IMSWREVISIONINT|       IMREVISIONCOUNTER       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          IMPROFILEID          |     IMPROFILESPECIFICTYPE     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IMVERSIONMAJOR| IMVERSIONMINOR|          IMSUPPORTED          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. IM0Block                           
IM0Block fields

block_type

ShortEnumField

32

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

VendorIDHigh

ByteField

0

VendorIDLow

ByteField

0

OrderID

StrFixedLenField

b''

IMSerialNumber

StrFixedLenField

b''

IMHardwareRevision

ShortField

0

IMSWRevisionPrefix

StrFixedLenField

b'V'

IMSWRevisionFunctionalEnhancement

ByteField

0

IMSWRevisionBugFix

ByteField

0

IMSWRevisionInternalChange

ByteField

0

IMRevisionCounter

ShortField

0

IMProfileID

ShortField

0

IMProfileSpecificType

ShortField

0

IMVersionMajor

ByteField

1

IMVersionMinor

ByteField

1

IMSupported

ShortField

0

class scapy.contrib.pnio_rpc.IM1Block(_pkt, /, *, block_type=33, block_length=None, block_version_high=1, block_version_low=0, IMTagFunction=b'', IMTagLocation=b'')[source]

Bases: Block

Identification and Maintenance 1

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|         IMTAGFUNCTION         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |         IMTAGLOCATION         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. IM1Block                           
IM1Block fields

block_type

ShortEnumField

33

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IMTagFunction

StrFixedLenField

b''

IMTagLocation

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.IM2Block(_pkt, /, *, block_type=34, block_length=None, block_version_high=1, block_version_low=0, IMDate=b'')[source]

Bases: Block

Identification and Maintenance 2

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             IMDATE            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. IM2Block                           
IM2Block fields

block_type

ShortEnumField

34

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IMDate

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.IM3Block(_pkt, /, *, block_type=35, block_length=None, block_version_high=1, block_version_low=0, IMDescriptor=b'')[source]

Bases: Block

Identification and Maintenance 3

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|          IMDESCRIPTOR         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. IM3Block                           
IM3Block fields

block_type

ShortEnumField

35

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IMDescriptor

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.IM4Block(_pkt, /, *, block_type=36, block_length=None, block_version_high=1, block_version_low=0, IMSignature=b'')[source]

Bases: Block

Identification and Maintenance 4

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|          IMSIGNATURE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. IM4Block                           
IM4Block fields

block_type

ShortEnumField

36

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IMSignature

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.IOCRAPI(_pkt, /, *, API=0, NumberOfIODataObjects=None, IODataObjects=[], NumberOfIOCS=None, IOCSs=[])[source]

Bases: Packet

API description used in IOCR block

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     NUMBEROFIODATAOBJECTS     |         IODATAOBJECTS         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          NUMBEROFIOCS         |             IOCSS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. IOCRAPI                           
IOCRAPI fields

API

XIntField

0

NumberOfIODataObjects

FieldLenField

None

IODataObjects

PacketListField

[]

NumberOfIOCS

FieldLenField

None

IOCSs

PacketListField

[]

class scapy.contrib.pnio_rpc.IOCRAPIObject(_pkt, /, *, SlotNumber=0, SubslotNumber=0, FrameOffset=0)[source]

Bases: Packet

API item descriptor used in API description of IOCR blocks

aliastypes
extract_padding(s)[source]
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          FRAMEOFFSET          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. IOCRAPIObject                        
IOCRAPIObject fields

SlotNumber

XShortField

0

SubslotNumber

XShortField

0

FrameOffset

ShortField

0

class scapy.contrib.pnio_rpc.IOCRBlockReq(_pkt, /, *, block_type=258, block_length=None, block_version_high=1, block_version_low=0, IOCRType=1, IOCRReference=1, LT=34962, IOCRProperties_reserved3=0, IOCRProperties_reserved2=0, IOCRProperties_reserved1=0, IOCRProperties_RTClass=0, DataLength=40, FrameID=32768, SendClockFactor=32, ReductionRatio=32, Phase=1, Sequence=0, FrameSendOffset=4294967295, WatchdogFactor=10, DataHoldFactor=10, IOCRTagHeader_IOUserPriority=6, IOCRTagHeader_reserved=0, IOCRTagHeader_IOCRVLANID=0, IOCRMulticastMACAdd=None, NumberOfAPIs=None, APIs=[])[source]

Bases: Block

IO Connection Relationship block request

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            IOCRTYPE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         IOCRREFERENCE         |               LT              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|IOCRPROPERTIES |IOCRPROPERTIES RESERV|IOCRPROPERTIES RE|IOCRPRO|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           DATALENGTH          |            FRAMEID            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        SENDCLOCKFACTOR        |         REDUCTIONRATIO        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             PHASE             |            SEQUENCE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        FRAMESENDOFFSET                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         WATCHDOGFACTOR        |         DATAHOLDFACTOR        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|IOCRT|I|IOCRTAGHEADER IOCRVLANI|      IOCRMULTICASTMACADD      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          NUMBEROFAPIS         |              APIS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. IOCRBlockReq                         
IOCRBlockReq fields

block_type

ShortEnumField

258

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IOCRType

XShortEnumField

1

IOCRReference

XShortField

1

LT

XShortField

34962

IOCRProperties_reserved3

BitField (8 bits)

0

IOCRProperties_reserved2

BitField (11 bits)

0

IOCRProperties_reserved1

BitField (9 bits)

0

IOCRProperties_RTClass

BitEnumField

0

DataLength

ShortField

40

FrameID

XShortField

32768

SendClockFactor

ShortField

32

ReductionRatio

ShortField

32

Phase

ShortField

1

Sequence

ShortField

0

FrameSendOffset

XIntField

4294967295

WatchdogFactor

ShortField

10

DataHoldFactor

ShortField

10

IOCRTagHeader_IOUserPriority

BitEnumField

6

IOCRTagHeader_reserved

BitField (1 bit)

0

IOCRTagHeader_IOCRVLANID

BitField (12 bits)

0

IOCRMulticastMACAdd

MACField

None

NumberOfAPIs

FieldLenField

None

APIs

PacketListField

[]

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

class scapy.contrib.pnio_rpc.IOCRBlockRes(_pkt, /, *, block_type=33026, block_length=None, block_version_high=1, block_version_low=0, IOCRType=1, IOCRReference=1, FrameID=32768)[source]

Bases: Block

IO Connection Relationship block response

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            IOCRTYPE           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         IOCRREFERENCE         |            FRAMEID            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. IOCRBlockRes                         
IOCRBlockRes fields

block_type

ShortEnumField

33026

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

IOCRType

XShortEnumField

1

IOCRReference

XShortField

1

FrameID

XShortField

32768

class scapy.contrib.pnio_rpc.IODControlReq(_pkt, /, *, block_type=None, block_length=None, block_version_high=1, block_version_low=0, padding=b'', ARUUID=None, SessionKey=0, AlarmSequenceNumber=0, ControlCommand_reserved=0, ControlCommand_PrmBegin=0, ControlCommand_ReadyForRT_CLASS_3=0, ControlCommand_ReadyForCompanion=0, ControlCommand_Done=0, ControlCommand_Release=0, ControlCommand_ApplicationReady=0, ControlCommand_PrmEnd=0, ControlBlockProperties=0)[source]

Bases: Block

IODControl request block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SESSIONKEY          |      ALARMSEQUENCENUMBER      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|CONTROLCOMMAND RE|C|C|C|C|C|C|C|     CONTROLBLOCKPROPERTIES    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. IODControlReq                        
IODControlReq fields

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

ARUUID

UUIDField

None

SessionKey

ShortField

0

AlarmSequenceNumber

XShortField

0

ControlCommand_reserved

BitField (9 bits)

0

ControlCommand_PrmBegin

BitField (1 bit)

0

ControlCommand_ReadyForRT_CLASS_3

BitField (1 bit)

0

ControlCommand_ReadyForCompanion

BitField (1 bit)

0

ControlCommand_Done

BitField (1 bit)

0

ControlCommand_Release

BitField (1 bit)

0

ControlCommand_ApplicationReady

BitField (1 bit)

0

ControlCommand_PrmEnd

BitField (1 bit)

0

ControlBlockProperties

XShortField

0

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

post_build(p, pay)[source]
class scapy.contrib.pnio_rpc.IODControlRes(_pkt, /, *, block_type=33040, block_length=None, block_version_high=1, block_version_low=0, padding=b'', ARUUID=None, SessionKey=0, AlarmSequenceNumber=0, ControlCommand_reserved=0, ControlCommand_PrmBegin=0, ControlCommand_ReadyForRT_CLASS_3=0, ControlCommand_ReadyForCompanion=0, ControlCommand_Done=1, ControlCommand_Release=0, ControlCommand_ApplicationReady=0, ControlCommand_PrmEnd=0, ControlBlockProperties=0)[source]

Bases: Block

IODControl response block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SESSIONKEY          |      ALARMSEQUENCENUMBER      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|CONTROLCOMMAND RE|C|C|C|C|C|C|C|     CONTROLBLOCKPROPERTIES    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. IODControlRes                        
IODControlRes fields

block_type

ShortEnumField

33040

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

ARUUID

UUIDField

None

SessionKey

ShortField

0

AlarmSequenceNumber

XShortField

0

ControlCommand_reserved

BitField (9 bits)

0

ControlCommand_PrmBegin

BitField (1 bit)

0

ControlCommand_ReadyForRT_CLASS_3

BitField (1 bit)

0

ControlCommand_ReadyForCompanion

BitField (1 bit)

0

ControlCommand_Done

BitField (1 bit)

1

ControlCommand_Release

BitField (1 bit)

0

ControlCommand_ApplicationReady

BitField (1 bit)

0

ControlCommand_PrmEnd

BitField (1 bit)

0

ControlBlockProperties

XShortField

0

class scapy.contrib.pnio_rpc.IODReadReq(_pkt, /, *, block_type=9, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=0, slotNumber=0, subslotNumber=0, padding=b'', index=0, recordDataLength=None, RWPadding=b'')[source]

Bases: Block

IODRead request block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. IODReadReq                          
IODReadReq fields

block_type

ShortEnumField

9

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

0

slotNumber

XShortField

0

subslotNumber

XShortField

0

padding

StrFixedLenField

b''

index

XShortEnumField

0

recordDataLength

LenField

None

RWPadding

StrFixedLenField

b''

get_response()[source]
payload_length()[source]
class scapy.contrib.pnio_rpc.IODReadRes(_pkt, /, *, block_type=32777, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=0, slotNumber=0, subslotNumber=0, padding=b'', index=0, recordDataLength=None, additionalValue1=0, additionalValue2=0, RWPadding=b'')[source]

Bases: Block

IODRead response block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADDITIONALVALUE1       |        ADDITIONALVALUE2       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. IODReadRes                          
IODReadRes fields

block_type

ShortEnumField

32777

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

0

slotNumber

XShortField

0

subslotNumber

XShortField

0

padding

StrFixedLenField

b''

index

XShortEnumField

0

recordDataLength

LenField

None

additionalValue1

XShortField

0

additionalValue2

XShortField

0

RWPadding

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.IODWriteMultipleReq(_pkt, /, *, block_type=8, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=4294967295, slotNumber=65535, subslotNumber=65535, padding=b'', index=57408, recordDataLength=None, RWPadding=b'', blocks=[])[source]

Bases: Block

IODWriteMultiple request

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. IODWriteMultipleReq                     
IODWriteMultipleReq fields

block_type

ShortEnumField

8

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

4294967295

slotNumber

XShortField

65535

subslotNumber

XShortField

65535

padding

StrFixedLenField

b''

index

XShortEnumField

57408

recordDataLength

FieldLenField

None

RWPadding

StrFixedLenField

b''

blocks

FieldListField

[]

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

post_build(p, pay)[source]
class scapy.contrib.pnio_rpc.IODWriteMultipleRes(_pkt, /, *, block_type=32776, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=4294967295, slotNumber=65535, subslotNumber=65535, padding=b'', index=57408, recordDataLength=None, additionalValue1=0, additionalValue2=0, status=0, RWPadding=b'', blocks=[])[source]

Bases: Block

IODWriteMultiple response

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADDITIONALVALUE1       |        ADDITIONALVALUE2       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             STATUS                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. IODWriteMultipleRes                     
IODWriteMultipleRes fields

block_type

ShortEnumField

32776

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

4294967295

slotNumber

XShortField

65535

subslotNumber

XShortField

65535

padding

StrFixedLenField

b''

index

XShortEnumField

57408

recordDataLength

FieldLenField

None

additionalValue1

XShortField

0

additionalValue2

XShortField

0

status

IntEnumField

0

RWPadding

StrFixedLenField

b''

blocks

FieldListField

[]

post_build(p, pay)[source]
class scapy.contrib.pnio_rpc.IODWriteReq(_pkt, /, *, block_type=8, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=0, slotNumber=0, subslotNumber=0, padding=b'', index=0, recordDataLength=None, RWPadding=b'')[source]

Bases: Block

IODWrite request block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. IODWriteReq                         
IODWriteReq fields

block_type

ShortEnumField

8

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

0

slotNumber

XShortField

0

subslotNumber

XShortField

0

padding

StrFixedLenField

b''

index

XShortEnumField

0

recordDataLength

LenField

None

RWPadding

StrFixedLenField

b''

get_response()[source]

Generate the response block of this request. Careful: it only sets the fields which can be set from the request

payload_guess

Possible sublayers: FParametersBlock

payload_length()[source]
class scapy.contrib.pnio_rpc.IODWriteRes(_pkt, /, *, block_type=32776, block_length=None, block_version_high=1, block_version_low=0, seqNum=0, ARUUID=None, API=0, slotNumber=0, subslotNumber=0, padding=b'', index=0, recordDataLength=None, additionalValue1=0, additionalValue2=0, status=0, RWPadding=b'')[source]

Bases: Block

IODWrite response block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|             SEQNUM            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             ARUUID                            |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              API                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |             INDEX             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                        RECORDDATALENGTH                       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ADDITIONALVALUE1       |        ADDITIONALVALUE2       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             STATUS                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           RWPADDING                           |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+                                                               +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. IODWriteRes                         
IODWriteRes fields

block_type

ShortEnumField

32776

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

seqNum

ShortField

0

ARUUID

UUIDField

None

API

XIntField

0

slotNumber

XShortField

0

subslotNumber

XShortField

0

padding

StrFixedLenField

b''

index

XShortEnumField

0

recordDataLength

LenField

None

additionalValue1

XShortField

0

additionalValue2

XShortField

0

status

IntEnumField

0

RWPadding

StrFixedLenField

b''

class scapy.contrib.pnio_rpc.MaintenanceItem(_pkt, /, *, UserStructureIdentifier=0, block_type=None, block_length=None, block_version_high=1, block_version_low=0, padding=b'', MaintenanceStatus=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |           BLOCK TYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          BLOCK LENGTH         |BLOCK VERSION H|BLOCK VERSION L|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |       MAINTENANCESTATUS       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. MaintenanceItem                       
MaintenanceItem fields

UserStructureIdentifier

XShortField

0

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

MaintenanceStatus

XIntField

0

class scapy.contrib.pnio_rpc.NDRData(_pkt, /, *, args_length=None, max_count=None, offset=0, actual_count=None, blocks=[])[source]

Bases: Packet

Base NDRData to centralize some fields. It can’t be instantiated

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ARGS LENGTH                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           MAX COUNT                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             OFFSET                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ACTUAL COUNT                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. NDRData                           
NDRData fields

args_length

EField

None

max_count

EField

None

offset

EField

0

actual_count

EField

None

blocks

PacketListField

[]

class scapy.contrib.pnio_rpc.PDPortDataAdjust(_pkt, /, *, block_type=514, block_length=None, block_version_high=1, block_version_low=0, padding=b'', slotNumber=0, subslotNumber=0, blocks=[])[source]

Bases: Block

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           BLOCK TYPE          |          BLOCK LENGTH         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|BLOCK VERSION H|BLOCK VERSION L|            PADDING            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           SLOTNUMBER          |         SUBSLOTNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. PDPortDataAdjust                       
PDPortDataAdjust fields

block_type

ShortEnumField

514

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

slotNumber

XShortField

0

subslotNumber

XShortField

0

blocks

PacketListField

[]

class scapy.contrib.pnio_rpc.PE_AlarmItem(_pkt, /, *, UserStructureIdentifier=0, block_type=None, block_length=None, block_version_high=1, block_version_low=0, PE_OperationalMode=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |           BLOCK TYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          BLOCK LENGTH         |BLOCK VERSION H|BLOCK VERSION L|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PE OPERATIONALM|
+-+-+-+-+-+-+-+-+

                        Fig. PE_AlarmItem                         
PE_AlarmItem fields

UserStructureIdentifier

XShortField

0

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

PE_OperationalMode

ByteEnumField

0

class scapy.contrib.pnio_rpc.PNIORealTimeAcyclicPDUHeader(_pkt, /, *, AlarmDstEndpoint=0, AlarmSrcEndpoint=0, PDUTypeType=0, PDUTypeVersion=0, AddFlags=0, SendSeqNum=0, AckSeqNum=0, VarPartLen=0)[source]

Bases: 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        ALARMDSTENDPOINT       |        ALARMSRCENDPOINT       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|PDUTYPE|PDUTYPE|    ADDFLAGS   |           SENDSEQNUM          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           ACKSEQNUM           |           VARPARTLEN          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                Fig. PNIORealTimeAcyclicPDUHeader                 
PNIORealTimeAcyclicPDUHeader fields

AlarmDstEndpoint

ShortField

0

AlarmSrcEndpoint

ShortField

0

PDUTypeType

BitEnumField

0

PDUTypeVersion

BitEnumField

0

AddFlags

BitField (8 bits)

0

SendSeqNum

XShortField

0

AckSeqNum

XShortField

0

VarPartLen

XShortField

0

class scapy.contrib.pnio_rpc.PNIOServiceReqPDU(_pkt, /, *, args_max=None, args_length=None, max_count=None, offset=0, actual_count=None, blocks=[])[source]

Bases: Packet

PNIO PDU for RPC Request

aliastypes
classmethod can_handle(pkt, rpc)[source]

heuristic guess_payload_class

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            ARGS MAX                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ARGS LENGTH                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           MAX COUNT                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             OFFSET                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ACTUAL COUNT                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. PNIOServiceReqPDU                      
PNIOServiceReqPDU fields

args_max

EField

None

args_length

EField

None

max_count

EField

None

offset

EField

0

actual_count

EField

None

blocks

PacketListField

[]

class scapy.contrib.pnio_rpc.PNIOServiceResPDU(_pkt, /, *, status=0, args_length=None, max_count=None, offset=0, actual_count=None, blocks=[])[source]

Bases: Packet

PNIO PDU for RPC Response

aliastypes
classmethod can_handle(pkt, rpc)[source]

heuristic guess_payload_class

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             STATUS                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ARGS LENGTH                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           MAX COUNT                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             OFFSET                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          ACTUAL COUNT                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|             BLOCKS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. PNIOServiceResPDU                      
PNIOServiceResPDU fields

status

EField

0

args_length

EField

None

max_count

EField

None

offset

EField

0

actual_count

EField

None

blocks

PacketListField

[]

class scapy.contrib.pnio_rpc.PRAL_AlarmItem(_pkt, /, *, UserStructureIdentifier=0, ChannelNumber=0, PRAL_ChannelProperties=0, PRAL_Reason=0, PRAL_ExtReason=0, PRAL_ReasonAddValue=b'')[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |         CHANNELNUMBER         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     PRAL CHANNELPROPERTIES    |          PRAL REASON          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         PRAL EXTREASON        |      PRAL REASONADDVALUE      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. PRAL_AlarmItem                        
PRAL_AlarmItem fields

UserStructureIdentifier

XShortField

0

ChannelNumber

XShortField

0

PRAL_ChannelProperties

XShortField

0

PRAL_Reason

XShortField

0

PRAL_ExtReason

XShortField

0

PRAL_ReasonAddValue

StrLenField

b''

class scapy.contrib.pnio_rpc.PadFieldWithLen(fld: Field[Any, Any] | _FieldContainer, align: int, padwith: bytes | None = None)[source]

Bases: PadField

PadField which handles the i2len function to include padding

fld
i2len(pkt, val)[source]

get the length of the field, including the padding length

class scapy.contrib.pnio_rpc.RS_AlarmItem(_pkt, /, *, UserStructureIdentifier=0, RS_AlarmInfo=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |          RS ALARMINFO         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. RS_AlarmItem                         
RS_AlarmItem fields

UserStructureIdentifier

XShortField

0

RS_AlarmInfo

XShortField

0

class scapy.contrib.pnio_rpc.UploadRetrievalItem(_pkt, /, *, UserStructureIdentifier=0, block_type=None, block_length=None, block_version_high=1, block_version_low=0, padding=b'', URRecordIndex=0, URRecordLength=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |           BLOCK TYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          BLOCK LENGTH         |BLOCK VERSION H|BLOCK VERSION L|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |         URRECORDINDEX         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |         URRECORDLENGTH        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Fig. UploadRetrievalItem                     
UploadRetrievalItem fields

UserStructureIdentifier

XShortField

0

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

URRecordIndex

XIntField

0

URRecordLength

XIntField

0

scapy.contrib.pnio_rpc.dce_rpc_endianness(pkt)[source]

determine the symbol for the endianness of a the DCE/RPC

class scapy.contrib.pnio_rpc.iParameterItem(_pkt, /, *, UserStructureIdentifier=0, block_type=None, block_length=None, block_version_high=1, block_version_low=0, padding=b'', iPar_Req_Header=0, Max_Segm_Size=0, Transfer_Index=0, Total_iPar_Size=0)[source]

Bases: AlarmItem

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    USERSTRUCTUREIDENTIFIER    |           BLOCK TYPE          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|          BLOCK LENGTH         |BLOCK VERSION H|BLOCK VERSION L|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            PADDING            |        IPAR REQ HEADER        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |         MAX SEGM SIZE         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |         TRANSFER INDEX        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |        TOTAL IPAR SIZE        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. iParameterItem                        
iParameterItem fields

UserStructureIdentifier

XShortField

0

block_type

ShortEnumField

None

block_length

ShortField

None

block_version_high

ByteField

1

block_version_low

ByteField

0

padding

StrFixedLenField

b''

iPar_Req_Header

XIntField

0

Max_Segm_Size

XIntField

0

Transfer_Index

XIntField

0

Total_iPar_Size

XIntField

0