DLPI Primitives

Raw Mode Service Primitives

If the DLS provider accepts the data for transmission, there is no response. This does not, however, guarantee that the data will be delivered to the destination DLS user, since the connectionless data transfer is not a confirmed service.

If the request is erroneous, a DL_ERROR_ACK is returned, and the resulting state is unchanged.

Reasons for Failure

DL_BADPRIM

Request was issued from a state in which the

DL_HP_RAWDATA_REQ was not recognized.

DL_SYSERR

A system error has occurred and the UNIX system error is indicated in the DL_ERROR_ACK.

DL_HP_RAWDATA_IND

Conveys one completely formatted DLSDU from the DLS provider to the DLS user. The DLSDU contains the complete Link and MAC Level headers.

Format

The message consists of one M_PROTO message block containing the structure shown below, followed by one or more M_DATA message blocks containing at least one byte of data. The amount of user data that may be transferred in a single DLSDU is limited. This limit is conveyed by the parameter dl_max_sdu in the DL_INFO_ACK primitive.

typedef struct {

ulong dl_primitive; } dl_hp_rawdata_ind_t;

Parameters

dl_primitive

DL_HP_RAWDATA_IND

State

The message is valid in state DL_IDLE.

New State

92

Chapter 2