Conveys one XID data link service data unit (DLSDU) from the data link service (DLS) user to the DLS provider for transmission to a peer DLS user.
The message consists of one M_PROTO message block, which contains the following structure, followed by zero or more M_DATA blocks containing zero or more bytes of data:
typedef struct { ulong dl_primitive; ulong dl_flag; ulong dl_dest_addr_length; ulong dl_dest_addr_offset; } dl_xid_req_t;
This structure is defined in /usr/include/sys/dlpi.h.
Conveys one XID DLSDU from the DLS user to the DLS provider for transmission to a peer DLS user.
A DL_ERROR_ACK primitive is always returned.
Note: This primitive applies to XID and test operations.
Valid | The primitive is valid in the DL_IDLE or DL_DATAXFER state. |
New | The resulting state is unchanged. |
Unsuccessful | The DL_ERROR_ACK primitive is returned for an invalid XID request. |
Note: It is recommended that the DLS user use a timeout procedure to recover from a situation when there is no response from the peer DLS User.
DL_OUTSTATE | The primitive was issued from an invalid state. |
DL_BADADDR | The DLSAP address information was invalid or was in an incorrect format. |
DL_BADDATA | The amount of data in the current DLSDU exceeded the DLS provider's DLSDU limit. |
DL_SYSERR | A system error has occurred. The system error is indicated in the DL_ERROR_ACK primitive. |
DL_XIDAUTO | Indicates the previous bind request specified that the provider would handle XID. |
This primitive is part of Base Operating System (BOS) Runtime.
The DL_BIND_ACK primitive, DL_ERROR_ACK primitive.