Protocol Utilities¶
- icspacket.proto.iso_ses.util.build_connect_spdu(*, extended: bool = False, version2: bool = True, requirements: PV_SessionRequirements | None = None, called_ses_sel: bytes | None = b'\x00\x01', calling_ses_sel: bytes | None = b'\x00\x01', user_data: bytes | None = None, extra_parameters: Iterable[Px_Unit] | None = None) SPDU[source]¶
Construct a
CONNECT SPDU(Session Protocol Data Unit).This initiates a COSP (X.225 / ISO 8327) session connection, encoding protocol version, session requirements, session selectors, and optional user data.
- Parameters:
extended (bool) – If
True, enables extended protocol options (e.g. extended addressing or token handling). Defaults toFalse.version2 (bool) – If
True, enables version 2 of the session protocol. IfFalse, version 1 is set. Defaults toTrue.requirements (PV_SessionRequirements | None) – Session requirements parameter block. If omitted, defaults to an empty
PV_SessionRequirementsinstance.called_ses_sel (bytes | None) – Selector of the called session entity. Used for identifying the target service access point.
calling_ses_sel (bytes | None) – Selector of the calling session entity. Used for identifying the initiating SAP.
user_data (bytes | None) – Optional user data to carry within the SPDU. Typically contains higher-layer negotiation payload.
extra_parameters (Iterable[Px_Unit] | None) – Additional session parameter elements (e.g. for vendor-specific extensions).
- Returns:
A fully constructed
SPDUrepresenting a connection request.- Return type:
Note
Future implementations may include negotiation of additional protocol features (e.g., token assignment, activity management, or session layer QoS). These can be injected via
extra_parametersto remain forward-compatible.
- icspacket.proto.iso_ses.util.build_data_tsdu(user_data: bytes, *, extra_parameters: Iterable[Px_Unit] | None = None) TSDU[source]¶
Construct a
DATA TSDU(Transport Service Data Unit).
- icspacket.proto.iso_ses.util.build_finish_spdu(*, user_data: bytes | None = None, extra_parameters: Iterable[Px_Unit] | None = None) SPDU[source]¶
Construct a
FINISH SPDUfor orderly session release.Encapsulates optional user data and any protocol-specific extension parameters, signaling graceful termination of the COSP session.
- Parameters:
user_data (bytes | None) – Optional user data to include in the SPDU (e.g., end-of-session diagnostics or higher-layer release information).
extra_parameters (Iterable[Px_Unit] | None) – Additional parameters to extend SPDU capabilities for session release.
- Returns:
A fully constructed
SPDUrepresenting session termination.- Return type: