Parameter Values (PV)¶
- class icspacket.proto.iso_ses.values.PI_Code(*values)[source]¶
Common Parameter Identifier (PI) codes — X.225 8.3
Note
Not all PI codes are mapped to PV implementations here; only those with common, structured bitfield encodings are represented.
Other PIs may be treated as raw byte values in other parts of the parser.
- class icspacket.proto.iso_ses.values.PV_VersionNumber(reserved: int = 0, version2: bool = True, version1: bool = False)[source]¶
Version Number PV — X.225
Indicates which protocol versions are proposed for use over this session connection.
- version2: bool = True¶
True if Protocol Version 2 is proposed.
- version1: bool = False¶
True if Protocol Version 1 is proposed.
- class icspacket.proto.iso_ses.values.PV_TokenSettingPairType(*values)[source]¶
Enumerated meaning of a token-setting bit pair
Each token position is indicated using a 2-bit value:
0 — Token initially with the initiator
1 — Token initially with the responder
2 — Token location decided by the SS-user (“user’s choice”)
3 — Reserved
- class icspacket.proto.iso_ses.values.PV_TokenSetting(release: PV_TokenSettingPairType = PV_TokenSettingPairType.INITIATOR, activity: PV_TokenSettingPairType = PV_TokenSettingPairType.INITIATOR, sync: PV_TokenSettingPairType = PV_TokenSettingPairType.INITIATOR, data: PV_TokenSettingPairType = PV_TokenSettingPairType.INITIATOR)[source]¶
Token Setting Item PV — X.225
If present, indicates the initial position of the protocol’s tokens.
- release: PV_TokenSettingPairType = 0¶
Initial position of the release token.
- activity: PV_TokenSettingPairType = 0¶
Initial position of the activity token.
- sync: PV_TokenSettingPairType = 0¶
Initial position of the synchronization token.
- data: PV_TokenSettingPairType = 0¶
Initial position of the data token.
- class icspacket.proto.iso_ses.values.PV_TokenItem(_reserved_1: bool = 0, release_token: bool = False, _reserved_2: bool = 0, activity_token: bool = False, _reserved_3: bool = 0, sync_minor_token: bool = False, _reserved_4: bool = 0, data_token: bool = False)[source]¶
Token Item PV — X.225
Indicates which tokens are requested by the called SS-user.
- release_token: bool = False¶
Request for the release token.
- activity_token: bool = False¶
Request for the activity token.
- sync_minor_token: bool = False¶
Request for the minor sync token.
- data_token: bool = False¶
Request for the data token.
- class icspacket.proto.iso_ses.values.PV_SessionRequirements(_reserved: int = 0, data_separation: bool = False, symmetric_sync: bool = False, typed: bool = False, exceptions: bool = False, capability_data_exchange: bool = False, negotiated_release: bool = False, activity_management: bool = False, resync: bool = False, major_sync: bool = False, minor_sync: bool = False, expedited: bool = False, duplex: bool = False, half_duplex: bool = False)[source]¶
Session Requirements PV — X.225
Indicates the functional units proposed by the calling SS-user.
- data_separation: bool = False¶
Functional unit: Data separation
- symmetric_sync: bool = False¶
Functional unit: Symmetric synchronization
- typed: bool = False¶
Functional unit: Typed data
- exceptions: bool = False¶
Functional unit: Exceptions
- capability_data_exchange: bool = False¶
Functional unit: Capability data exchange
- negotiated_release: bool = False¶
Functional unit: Negotiated release
- activity_management: bool = False¶
Functional unit: Activity management
- resync: bool = False¶
Functional unit: Resynchronization
- major_sync: bool = False¶
Functional unit: Major synchronization
- minor_sync: bool = False¶
Functional unit: Minor synchronization
- expedited: bool = False¶
Functional unit: Expedited data
- duplex: bool = False¶
Functional unit: Full-duplex
- half_duplex: bool = False¶
Functional unit: Half-duplex
- class icspacket.proto.iso_ses.values.PV_EnclosureItem(_reserved: int = 0, end: bool = False, start: bool = False)[source]¶
Enclosure Item PV — X.225
Indicates whether this SPDU is the start and/or end of an SSDU.
- end: bool = False¶
True if this SPDU is the end of the SSDU.
- start: bool = False¶
True if this SPDU is the start of the SSDU.
- class icspacket.proto.iso_ses.values.PV_ProtocolOptions(_reserved: int = 0, extended: bool = False)[source]¶
Protocol Options PV — X.225 §8.3.19
Indicates whether the initiator can receive extended concatenated SPDUs.
- extended: bool = False¶
True if extended concatenated SPDUs are supported.
- icspacket.proto.iso_ses.values.PV_TYPES = {PI_Code.TOKEN_ITEM: <class 'icspacket.proto.iso_ses.values.PV_TokenItem'>, PI_Code.PROTOCOL_OPTIONS: <class 'icspacket.proto.iso_ses.values.PV_ProtocolOptions'>, PI_Code.SESSION_REQUIREMENT: <class 'icspacket.proto.iso_ses.values.PV_SessionRequirements'>, PI_Code.TSDU_MAXIMUM_SIZE: <int32>, PI_Code.VERSION_NUMBER: <class 'icspacket.proto.iso_ses.values.PV_VersionNumber'>, PI_Code.ENCLOSUREITEM: <class 'icspacket.proto.iso_ses.values.PV_EnclosureItem'>, PI_Code.TOKEN_SETTING_ITEM: <class 'icspacket.proto.iso_ses.values.PV_TokenSetting'>}¶
Mapping from PI codes to their associated Parameter Value types.
This table is used during SPDU parameter decoding to instantiate the right PV object.