MIOCACK(9F)             Kernel Functions for Drivers             MIOCACK(9F)
NAME
       miocack - Positively acknowledge an M_IOCTL message
SYNOPSIS
       #include <sys/stream.h>
       #include <sys/strsun.h>       
void miocack(
queue_t *wq, 
mblk_t *mp, 
intcount, 
int rval);
INTERFACE LEVEL
       illumos DDI specific (illumos DDI).
PARAMETERS
       wq                Write queue associated with the read queue to send the
                M_IOCACK on.       
mp                M_IOCTL message.       
count                Value to set the ioc_count of the 
iocblk(9S) to.       
rval                Value to set the ioc_rval of the 
iocblk(9S) to.
DESCRIPTION
       The 
miocack() function converts an M_IOCTL message into a M_IOCACK
       message and sends the resulting message upstream.
       To convert the message, 
miocack() changes the message type to
       M_IOCACK, sets the 'ioc_count' and 'ioc_rval' members of the       
iocblk(9S) associated with 
mp to the passed-in values, and clears the
       'ioc_error' field. If the caller specifies a non-zero value for
       count, it is expected that the caller has already set 'mp->b_cont'
       field to point to a message block with a length of at least 
count       bytes.
       Callers that only need to perform the message conversion, or need to
       perform additional steps between the conversion and the      sending
       of the M_IOCACK should use 
mioc2ack(9F).
RETURN VALUES
       None.
CONTEXT
       This function can be called from user, kernel or interrupt context.
NOTES
       Callers must not hold any locks across a 
miocack() that can be
       acquired as part of 
put(9E) processing.
SEE ALSO
       put(9E), 
mioc2ack(9F), 
iocblk(9S)       STREAMS Programming Guide                                June 9, 2004                     MIOCACK(9F)