freeb - STREAMS: Frees a message block
MBLKP message_block_ptr );
Specifies a pointer to the message block to be deallocated.
The typedef MBLKP is an alternate name for typedef
struct msgb *.
The freeb interface deallocates a message block. If the
reference count of the db_ref member of the datab structure
is greater than the value 1, freeb decrements the
count. If db_ref equals the value 1, freeb deallocates the
message block and the corresponding data block and buffer.
If the data buffer to be freed was allocated in a call to
the esballoc interface, the buffer may be a non-STREAMS
resource. In that case, the driver must be notified that
the attached data buffer needs to be freed by calling the
driver's freeing interface. To make this process independent
of the driver used in the stream, freeb finds the
free_rtn structure associated with the buffer. The
free_rtn structure contains a pointer to the driver-independent
interface that releases the buffer. Once this is
accomplished, freeb releases the STREAMS resources associated
with the buffer.
Kernel Interfaces: allocb(9r), dupb(9r), esballoc(9r)
Programmer's Guide: STREAMS
[ Back ]