Previous section.

Data Link Provider Interface (DLPI), Version 2
Copyright © 2000 The Open Group


DL_ATTACH_REQ (dl_attach_req_t) - requests the DLS provider associate a physical point of attachment (PPA) with astream. DL_ATTACH_REQ is needed for style 2 DLS providers to identify the physical medium over which communication will transpire. The request may not be issued to a style 1 DLS provider; doing so may cause errors.

The DLS provider may initialize the physical line on receipt of this primitive or the DL_BIND_REQ. Otherwise, the line must be initialized through some management mechanism before this request is issued by the DLS user. Either way, the physical link must be initialized and ready for use on successful completion of the DL_BIND_REQ.


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

typedef struct {
    t_uscalar_t  dl_primitive;
    t_uscalar_t  dl_ppa;
} dl_attach_req_t;



conveys DL_ATTACH_REQ.


conveys the identifier of the physical point of attachment to be associated with the stream. The format of the identifier is provider-specific, and it must contain sufficient information to distinguish the desired PPA from all possible PPAs on a system. At a minimum, this must include identification of the physical medium over which communication will transpire. For media that multiplex multiple channels over a single physical medium, this identifier should also specify a specific channel to be used for communication (where each channel on a physical medium is associated with a separate PPA).

Because of the provider-specific nature of this value, DLS user software that is to be protocol independent should avoid hard-coding the PPA identifier. The DLS user should retrieve the necessary PPA identifier from some other entity (such as a management entity) and insert it without inspection into the DL_ATTACH_REQ.


The message is valid in state DL_UNATTACHED.


The resulting state is DL_ATTACH_PENDING.


If the attach request is successful, DL_OK_ACK is sent to the DLS user resulting in state DL_UNBOUND. If the request fails, message DL_ERROR_ACK is returned and the resulting state is unchanged.



The DLS user did not have proper permission to use the requested PPA.


The specified PPA is invalid.


The primitive was issued from an invalid state.


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

Contents Next section Index