allocb(9r)allocb(9r)NAMEallocb - STREAMS: Allocates a message block
SYNOPSIS
#include <sys/stream.h>
MBLKP allocb(
int size,
uint pri );
ARGUMENTS
Specifies the number of bytes in the message block. Specifies the pri‐
ority of the request. You use this argument to determine if the alloca‐
tion of memory blocks (waits) on the request. If you call the allocb
interface at a high priority and it blocks on the request, the system
could deadlock. Typically, you pass the constant BPRI_WAITOK, which
signifies that allocb can block. If allocb cannot block, you should
pass the BPRI_HI constant.
DESCRIPTION
The allocb interface attempts to allocate a STREAMS message block. Buf‐
fer allocation fails only when the system is out of memory. If no buf‐
fer is available, you can call the bufcall interface, which helps a
module recover from a memory allocation failure.
RETURN VALUES
Upon successful completion, the allocb interface returns a pointer to
the allocated message block. This message block is of type struct msgb
*. The msgb data structure is defined in the
/usr/sys/include/sys/stream.h file.
If allocb cannot allocate a message block, it returns a NULL pointer.
SEE ALSO
Kernel Routines: bufcall(9r), esballoc(9r), testb(9r)
Programmer's Guide: STREAMS
allocb(9r)