Requests the data link service (DLS) provider to unbind a data link service access point (DLSAP).
The message consists of one M_PROTO message block, which contains the following structure:
typedef struct
{
ulong dl_primitive;
} dl_unbind_req_t;
This structure is defined in /usr/include/sys/dlpi.h.
The DL_UNBIND_REQ primitive requests that the DLS provider unbind the DLSAP that had been bound by a previous DL_BIND_REQ primitive. If one or more DLSAPs were bound to the stream with a DL_SUBS_BIND_REQ primitive and have not been unbound with a DL_SUBS_UNBIND_REQ primitive, the DL_UNBIND_REQ primitive unbinds all the subsequent DLSAPs for that stream along with the DLSAP bound with the previous DL_BIND_REQ primitive.
At the successful completion of the request, the DLS user can issue a new DL_BIND_REQ primitive for a potentially new DLSAP.
Item | Description |
---|---|
dl_primitive | Specifies the DL_UNBIND_REQ primitive. |
Item | Description |
---|---|
Valid | The primitive is valid in the DL_IDLE state. |
New | The resulting state is DL_UNBIND_PENDING. |
Item | Description |
---|---|
Successful | The DL_OK_ACK primitive is sent to the DLS user, and the resulting state is DL_UNBOUND. |
Unsuccessful | The DL_ERROR_ACK primitive is returned, and the resulting state is unchanged. |
Item | Description |
---|---|
DL_OUTSTATE | Indicates the primitive was issued from an invalid state. |
DL_SYSERR | Indicates a system error occurred. The system error is indicated in the DL_ERROR_ACK primitive. |