DL_DISCONNECT_REQ Primitive

Purpose

Requests that an active data link be disconnected.

Structure

The primitive consists of one M_PROTO message block, which contains the following structure:

typedef struct
{
   ulong  dl_primitive;
   ulong  dl_reason;
   ulong  dl_correlation;
} dl_disconnect_req_t;

Description

The DL_DISCONNECT_REQ primitive requests the data link service (DLS) provider to disconnect an active data link connection or one that was in the process of activation. The DL_DISCONNECT_REQ primitive can be sent in response to a previously issued DL_CONNECT_IND or DL_CONNECT_REQ primitive. If an incoming DL_CONNECT_IND primitive is being refused, the correlation number associated with that connect indication must be supplied. The message indicates the reason for the disconnect.

Note: This primitive applies to connection mode.

Parameters

Item Description
dl_primitive Specifies the DL_DISCONNECT_REQ primitive.
dl_reason Indicates one of the following reasons for the disconnect:
DL_DISC_NORMAL_CONDITION
Indicates normal release of a data link connection.
DL_DISC_ABNORMAL_CONDITION
Indicates abnormal release of a data link connection.
DL_CONREJ_PERMANENT_COND
Indicates a permanent condition caused the rejection of a connect request.
DL_CONREJ_TRANSIENT_COND
Indicates a transient condition caused the rejection of a connect request.
DL_DISC_UNSPECIFIED
Indicates the connection was closed for an unspecified reason.
dl_correlation Specifies one of the following values:
0
Indicates either the disconnect request is releasing an established connection or is cancelling a previously sent DL_CONNECT_REQ primitive.
>0
Specifies the correlation number that was contained in the DL_CONNECT_IND primitive being rejected. This value permits the DLS provider to associate the primitive with the proper DL_CONNECT_IND primitive when rejecting an incoming connection.

States

Item Description
Valid The primitive is valid in any of the following states:
  • DL_DATAXFER
  • DL_INCON_PENDING
  • DL_OUTCON_PENDING
  • DL_PROV_RESET_PENDING
  • DL_USER_RESET_PENDING
New DL_DISCON11_PENDING

Acknowledgments

Item Description
Successful The DL_OK_ACK primitive is sent to the DLS user resulting in the DL_IDLE state.
Unsuccessful The DL_ERROR_ACK primitive is returned, and the resulting state is unchanged.

Error Codes

Item Description
DL_BADCORR Indicates the correlation number specified in this primitive does not correspond to a pending connect indication.
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.