DLCTOKEN Programming Interfaces

The token-ring data link control (DLCTOKEN) conforms to the generic data link control (GDLC) guidelines except where noted below.

Additional structures and definitions for DLCTOKEN can be found in the /usr/include/sys/trlextcb.h file.

Note: The dlc prefix is replaced with the trl prefix for DLCTOKEN.
Item Description
trlclose DLCTOKEN is fully compatible with the dlcclose GDLC interface.
trlconfig DLCTOKEN is fully compatible with the dlcconfig GDLC interface. No initialization parameters are required.
trlmpx DLCTOKEN is fully compatible with the dlcmpx GDLC interface.
trlopen DLCTOKEN is fully compatible with the dlcopen GDLC interface.
trlread DLCTOKEN is compatible with the dlcread GDLC interface with the following conditions:
  • The readx subroutines can have DLCTOKEN data link header information prefixed to the I-field being passed to the application. This is optional based on the readx subroutine data link header length extension parameter in the gdl_io_ext structure.
  • If this field is nonzero, DLCTOKEN copies the data link header and the I-field to user space and sets the actual length of the data link header into the length field.
  • If the field is 0, no data link header information is copied to user space. See the DLCTOKEN Frame Encapsulation figure (Figure 1) for more details.

The following kernel receive packet function handlers always have the DLCTOKEN data link header information within the communications memory buffer (mbuf) and can locate it by subtracting the length passed (in the gdl_io_ext structure) from the data offset field of the mbuf structure.

Item Description
trlselect DLCTOKEN is fully compatible with the dlcselect GDLC interface.
trlwrite DLCTOKEN is compatible with the dlcwrite GDLC interface, with the exception that network data can only be written as an unnumbered information (UI) packet and must have the complete data link header prefixed to the data. DLCTOKEN verifies that the local (source) service access point (SAP) is enabled and that the control byte is UI (0x03). See the DLCTOKEN Frame Encapsulation figure (Figure 1) for more details.
trlioctl DLCTOKEN is compatible with the dlcioctl GDLC interface, with conditions on the following operations: