*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> bcanput (9r)              



NAME    [Toc]    [Back]

       bcanput  -  STREAMS: Tests for flow control in a specified
       priority band

SYNOPSIS    [Toc]    [Back]

       #include <sys/stream.h>

       int bcanput(
               queue_t *message_queue,
               unsigned char pri );

ARGUMENTS    [Toc]    [Back]

       Specifies a pointer to  the  message  queue.  The  typedef
       queue_t  is  an  alternate  name for struct queue_entry *.
       Specifies the priority of the message.

DESCRIPTION    [Toc]    [Back]

       The bcanput interface, like the canput interface, searches
       through  the stream (starting at the message queue identified
 by the message_queue argument) until it finds a queue
       that contains a service interface where the message can be
       enqueued or until it reaches the end  of  the  stream.  If
       bcanput finds a service interface in a queue, it tests the
       queue to determine if there  is  space  in  the  queue  to
       accommodate  a message. If the queue is full, bcanput sets
       the q_flag member of  the  queue_entry  structure  pointer
       (the  message queue) to the constant QWANTW to back-enable
       the caller's service interface.

       If the pri argument is zero (0), bcanput calls the  canput
       interface,  which  performs the task of checking for space
       in the message queue.

NOTES    [Toc]    [Back]

       You are responsible for both testing a queue with  bcanput
       and not placing a message on the queue if bcanput fails.

RETURN VALUES    [Toc]    [Back]

       The bcanput interface returns a value of 1 if a message of
       priority pri can be placed on the message queue, or if the
       band  does  not  yet  exist  on  the  queue. The interface
       returns a value of zero (0) if the priority band is  flowcontrolled.

SEE ALSO    [Toc]    [Back]

       Kernel Routines: canput(9r), putbq(9r), putnext(9r)

       Programmer's Guide: STREAMS

[ Back ]
 Similar pages
Name OS Title
flushband Tru64 STREAMS: Flushes messages for a specified priority band
tcflow Tru64 Perform flow control functions
canput Tru64 STREAMS: Tests for room in a message queue
datamsg Tru64 STREAMS: Tests whether a message is a data message
putctl Tru64 STREAMS: Puts a control message on a queue
STRCTLSZ HP-UX maximum size of streams message control (bytes)
strctlsz HP-UX maximum size of streams message control (bytes)
vxibc HP-UX perform VERITAS Volume Replicator In-Band Control Messaging operations
cflow Tru64 Generates a C language flow graph of external references
ifnet Tru64 STREAMS ifnet module for bridging STREAMS device drivers to sockets
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service