putctl1(D3)putctl1(D3)NAMEputctl1 - send a control message with a one-byte parameter to a queue
SYNOPSIS
#include <sys/stream.h>
#include <sys/ddi.h>
int putctl1(queue_t *q, int type, int param);
Arguments
q Pointer to the queue to which the message is to be sent.
type Message type (must be a control type).
param One-byte parameter.
DESCRIPTION
putctl1, like putctl(D3), tests the type argument to make sure a data
type has not been specified, and attempts to allocate a message block.
The param parameter can be used, for example, to specify the signal
number when an M_PCSIG message is being sent. putctl1 fails if type is
M_DATA, M_PROTO, or M_PCPROTO, or if a message block cannot be allocated.
If successful, putctl1 calls the put(D2) routine of the queue pointed to
by q, passing it the allocated message.
Return Values
On success, 1 is returned. Otherwise, if type is a data type, or if a
message block cannot be allocated, 0 is returned.
Level
Base or Interrupt.
Synchronization Constraints
Does not sleep.
Driver-defined basic locks, read/write locks, and sleep locks may not be
held across calls to this function.
Examples
See putctl(D3) for an example of putctl1.
REFERENCESput(D2), putctl(D3)
Page 1