Kernel Functions for Drivers ldi_putmsg(9F)
NAME
ldi_putmsg, ldi_getmsg - Read/write message blocks from/to a
streamSYNOPSIS
#include
int ldi_putmsg(ldi_handle_t lh, mblk_t *smp);
int ldi_getmsg(ldi_handle_t lh, mblk_t **rmp, timestruc_t *timeo);
PARAMETERS
lh Layered handle. smp Message block to send. rmp Message block to receive. timeo Optional timeout for data reception.DESCRIPTION
The ldi_putmsg function allows a caller to send a message
block to a streams device specified by the layered handlelh. Once the message (smp) has been passed to ldi_putmsg(),
the caller must not free the message even if an error occurs.The ldi_getmsg() function allows a caller to receive a mes-
sage block from a streams device specified by the layered handle lh. Callers must free the message received with freemsg(9F). If a NULL timeout value is specified when the caller receives a message, the caller sleeps until a message is received.RETURN VALUES
The ldi_putmsg() and ldi_getmsg() functions return 0 upon
success. If a failure occurs before the request is passed tothe device, the possible return values are shown below. Oth-
erwise any other error number may be returned by the device. EINVAL Invalid input parameters.SunOS 5.11 Last change: 3 June 2003 1
Kernel Functions for Drivers ldi_putmsg(9F)
ENOTSUP Operation is not supported for this device.The ldi_getmsg() function may also return:
ETIME Returned if the timeout timeo expires with no messages received.CONTEXT
These functions may be called from user or kernel context.SunOS 5.11 Last change: 3 June 2003 2