DL_UNITDATA_IND Primitive

Purpose

Conveys one data link service data unit (DLSDU) from the data link service (DLS) provider to the DLS user.

Structure

The message consists of one M_PROTO message block, which contains the following structure, followed by one or more M_DATA blocks containing at least one byte of data:

typedef struct
{
   ulong  dl_primitive;
   ulong  dl_dest_addr_length;
   ulong  dl_dest_addr_offset;
   ulong  dl_src_addr_length;
   ulong  dl_src_addr_offset;
   ulong  dl_group_address;
} dl_unitdata_ind_t;

This structure is defined in /usr/include/sys/dlpi.h.

Description

The DL_UNITDATA_IND primitive conveys one DLSDU from the DLS provider to the DLS user.

Note: The amount of user data that may be transferred in a single DLSDU is limited. This limit is conveyed by the dl_max_sdu parameter of the DL_INFO_ACK primitive.

Parameters

Item Description
dl_primitive Specifies the DL_UNITDATA_IND primitive.
dl_dest_addr_length Specifies the length of the data link service access point (DLSAP) address of the destination DLS user. If the destination user is implemented using the Data Link Provider Interface (DLPI), the full DLSAP address is returned on the DL_BIND_ACK primitive.
dl_dest_addr_offset Indicates where the destination DLSAP address begins. The value of this parameter is the offset from the beginning of the M_PROTO message block.
dl_src_addr_length Specifies the length of the DLSAP address of the source DLS user.
dl_src_addr_offset Indicates where the source DLSAP address begins. The value of this parameter is the offset from the beginning of the M_PROTO message block.
dl_group_address Indicates the address set by the DLS provider upon receiving and passing upstream a data message when the destination address of the data message is a multicast or broadcast address.

States

Item Description
Valid The primitive is valid in the DL_IDLE state.
New The resulting state is unchanged.