MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Kernel Functions for Drivers                      putnextctl1(9F)



NAME
     putnextctl1 - send a control message with a one-byte parame-
     ter to a queue

SYNOPSIS
     #include 



     int putnextctl1(queuet *q, int type, int p);


INTERFACE LEVEL
     Architecture independent level 1 (DI/DKI).

PARAMETERS
     q       Queue to which the message is to be sent.


     type    Type of message.


     p       One-byte parameter.


DESCRIPTION
     The putnextctl1() function, like putctl1(9F), tests the type
     argument  to  make  sure a data type has not been specified,
     and attempts to allocate a message block.  The  p  parameter
     can be used, for example, to specify how long the delay will
     be when an MDELAY  message  is  being  sent.  putnextctl1()
     fails if type is MDATA, MPROTO, or MPCPROTO, or if a mes-
     sage block cannot be allocated. If successful, putnextctl1()
     calls  the put(9E) routine of the queue pointed to by q with
     the newly allocated and initialized message.


     A call to putnextctl1(q,type, p) is an atomic equivalent  of
     putctl1(q->qnext,  type, p). The STREAMS framework provides
     whatever mutual exclusion is necessary to insure that  dere-
     ferencing  q  through  its  qnext  field  and then invoking
     putctl1(9F)  proceeds  without   interference   from   other
     threads.


     The putnextctl1() function should always be used in  prefer-
     ence to putctl1(9F)

RETURN VALUES
     On success, 1 is returned. 0 is returned if type is  a  data
     type, or if a message block cannot be allocated.




SunOS 5.11          Last change: 16 Jan 2006                    1






Kernel Functions for Drivers                      putnextctl1(9F)



CONTEXT
     The putnextctl1() function can be called from  user,  inter-
     rupt, or kernel context.

EXAMPLES
     See the putnextctl(9F) function page for an example of  put-
     nextctl1().

SEE ALSO
     put(9E),     allocb(9F),      datamsg(9F),      putctl1(9F),
     putnextctl(9F)


     Writing Device Drivers


     STREAMS Programming Guide






































SunOS 5.11          Last change: 16 Jan 2006                    2



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™