DLPI Programmer's Guide
Chapter 2 51
DLPI Primitives
Local Management Primitives
Local Management Primitives
This section describes the local management service primitives. These
primitives support the information reporting, Attach and Bind. Once a
stream has been opened by a DLS user, these primitives initialize the
stream, preparing it for use.
PPA Initialization/De-initialization
The PPA associated with each stream must be initialized before the DLS
provider can transfer data over the medium. The initialization and
de-initialization of the PPA is a network management issue, but DLPI
must address the issue because of the impact such actions will have on a
DLS user. More specifically, DLPI requires the DLS provider to initialize
the PPA associated with a stream at some point before it completes the
processing of the DL_BIND_REQ. Guidelines for initialization and
de-initialization of a PPA by a DLS provider are presented here.
A DLS provider may initialize a PPA using the following methods:
• pre-initialized by some network management mechanism before the
DL_BIND_REQ is received; or
• automatic initialization on receipt of a DL_BIND_REQ or
DL_ATTACH_REQ.
A specific DLS provider may support either of these methods, or possibly
some combination of the two, but the method implemented has no impact
on the DLS user. From the DLS user’s viewpoint, the PPA is guaranteed
to be initialized on receipt of a DL_BIND_ACK. For automatic
initialization, this implies that the DL_BIND_ACK may not be issued
until the initialization has completed.
If pre-initialization has not been performed and/or automatic
initialization fails, the DLS provider will fail the DL_BIND_REQ. Two
errors, DL_INITFAILED and DL_NOTINIT, may be returned in the
DL_ERROR_ACK response to a DL_BIND_REQ if PPA initialization
fails. DL_INITFAILED is returned when a DLS provider supports
automatic PPA initialization, but the initialization attempt failed.
DL_NOTINIT is returned when the DLS provider requires
pre-initialization, but the PPA is not initialized before the
DL_BIND_REQ is received.