dlbindack, dlphysaddrack, dlokack, dlerrorack, dluderrorind - DLPI device driver helper functions
#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);
Solaris DDI specific (Solaris DDI).
wq
mp
sap
addrp
addrlen
maxconind
xidtest
correct_primitive
error_primitive
error
unix_errno
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 formulating 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.
These functions are not required if you are are writing a DLPI device driver using gld(7D).
All DLPI helper functions can be called from user, interrupt, or kernel context.
Writing Device Drivers
STREAMS Programming Guide
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |