dlbindack(9F) Kernel Functions for Drivers dlbindack(9F)NAME
dlbindack, dlphysaddrack, dlokack, dlerrorack, dluderrorind - DLPI
device driver helper functions
SYNOPSIS
#include <sys/dlpi.h>
void dlokack(queue_t *wq, mblk_t *mp, t_uscalar_t correct_primitive);
void dlerrorack(queue_t *wq, mblk_t *mp, t_uscalar_t error_primitive,
t_uscalar_t error, t_uscalar_t unix_errno);
void dlbindack(queue_t *wq, mblk_t *mp, t_scalar_t sap, const void
*addrp, t_uscalar_t addrlen, t_uscalar_t maxconind, t_uscalar_t
xidtest);
void dlphysaddrack(queue_t *wq, mblk_t *mp, const void *addrp,
t_uscalar_t addrlen);
void dluderrorind(queue_t *wq, mblk_t *mp, const void *addrp,
t_uscalar_t addrlen, t_uscalar_t error, t_uscalar_t unix_errno);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).
PARAMETERS
wq
Streams write queue.
mp
Pointer to the bind request message.
sap
Service access point being requested.
addrp
Pointer to the dlpi layer source address.
addrlen
Size of the dlpi layer address pointed to by addr.
maxconind
Maximum number of DL_CONNECT_IND messages allowed to be outstanding
per stream.
xidtest
The XID and TEST responses supported.
correct_primitive
Identifies the DL primitive completing successfully.
error_primitive
Identifies the DL primitive in error.
error
DLPI error associated with the failure in the DLPI request.
unix_errno
Corresponding UNIX system error that can be associated with the
failure in the DLPI request.
DESCRIPTION
All functions described in this manpage take a pointer to the message
passed to the DLPI provider (mblk_t) and attempt to reuse it in formuā
lating the M_PROTO reply. If the message block is too small to be
reused, it is freed and a new one is allocated.
All functions reply upstream using qreply(9F). The write-side queue
pointer must be provided.
The dlokack() function provides the successfull acknowledgement
DL_OK_ACK message reply to the DLPI provider and is used to complete
many of the DLPI requests in the DLPI consumer.
The dlerrorack() function provides the unsuccessfull acknowledgement
DL_ERROR_ACK message reply to the DLPI provider and is used for error
completions were required for DLPI requests in the DLPI consumer.
The dlbindack() function provides the DL_BIND_ACK message reply to the
DLPI provider and is used to complete the DL_BIND_REQ processing in the
DLPI consumer.
The dlphysaddrack() function provides the DL_PHYS_ADDR_ACK message
reply used to complete the DL_PHYS_ADDR_ACK processing.
The dluderrorind() function provides the DL_UDERROR_IND message reply
used to complete an unsuccessful DL_UNITDATA_REQ.
RETURN VALUES
None.
NOTES
These functions are not required if you are are writing a DLPI device
driver using gld(7D).
CONTEXT
All DLPI helper functions can be called from user, interrupt, or kernel
context.
SEE ALSOgld(7D), dlpi(7P), qreply(9F)
Writing Device Drivers
STREAMS Programming Guide
SunOS 5.10 16 Jan 2006 dlbindack(9F)