Kernel Functions for Drivers datamsg(9F)
NAME
datamsg - test whether a message is a data message
SYNOPSIS
#include
#include
int datamsg(unsigned char type);
INTERFACE LEVEL
Architecture independent level 1 (DI/DKI).
PARAMETERS
type The type of message to be tested. The dbtype field
of the datab(9S) structure contains the message
type. This field may be accessed through the message
block using mp->bdatap->dbtype.
DESCRIPTION
The datamsg() function tests the type of message to deter-
mine if it is a data message type (MDATA, MDELAY, MPROTO
, or MPCPROTO).
RETURN VALUES
datamsg returns
1 if the message is a data message
0 otherwise.
CONTEXT
The datamsg() function can be called from user, interrupt,
or kernel context.
EXAMPLES
The put(9E) routine enqueues all data messages for handling
by the srv(9E) (service) routine. All non-data messages are
handled in the put(9E) routine.
1 xxxput(q, mp)
2 queuet *q;
3 mblkt *mp;
4 {
5 if (datamsg(mp->bdatap->dbtype)) {
6 putq(q, mp);
7 return;
SunOS 5.11 Last change: 16 Jan 2006 1
Kernel Functions for Drivers datamsg(9F)
8 }
9 switch (mp->bdatap->dbtype) {
10 case MFLUSH:
...
11 }
12 }
SEE ALSO
put(9E), srv(9E), allocb(9F), datab(9S), msgb(9S)
Writing Device Drivers
STREAMS Programming Guide
SunOS 5.11 Last change: 16 Jan 2006 2
|