MSGB(9S) Data Structures for Drivers MSGB(9S)

NAME


msgb, mblk - STREAMS message block structure

SYNOPSIS


#include <sys/stream.h>


INTERFACE LEVEL


Architecture independent level 1 (DDI/DKI)

DESCRIPTION


A STREAMS message is made up of one or more message blocks, referenced by
a pointer to a msgb structure. The b_next and b_prev pointers are used
to link messages together on a QUEUE. The b_cont pointer links message
blocks together when a message consists of more than one block.


Each msgb structure also includes a pointer to a datab(9S) structure,
the data block (which contains pointers to the actual data of the
message), and the type of the message.

STRUCTURE MEMBERS


struct msgb *b_next; /* next message on queue */
struct msgb *b_prev; /* previous message on queue */
struct msgb *b_cont; /* next message block */
unsigned char *b_rptr; /* 1st unread data byte of buffer */
unsigned char *b_wptr; /* 1st unwritten data byte of buffer */
struct datab *b_datap; /* pointer to data block */
unsigned char b_band; /* message priority */
unsigned short b_flag; /* used by stream head */


Valid flags are as follows:

MSGMARK
Last byte of message is marked.


MSGDELIM
Message is delimited.


The msgb structure is defined as type mblk_t.

SEE ALSO


datab(9S)


Writing Device Drivers


STREAMS Programming Guide

illumos April 11, 1991 MSGB(9S)