streamtab(9S) Data Structures for Drivers streamtab(9S)NAME
streamtab - STREAMS entity declaration structure
SYNOPSIS
#include <sys/stream.h>
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
DESCRIPTION
Each STREAMS driver or module must have a streamtab structure.
streamtab is made up of qinit structures for both the read and write queue portions of each module or driver. Multiplexing drivers require
both upper and lower qinit structures. The qinit structure contains the entry points through which the module or driver routines are
called.
Normally, the read QUEUE contains the open and close routines. Both the read and write queue can contain put and service procedures.
STRUCTURE MEMBERS
struct qinit *st_rdinit; /* read QUEUE */
struct qinit *st_wrinit; /* write QUEUE */
struct qinit *st_muxrinit; /* lower read QUEUE*/
struct qinit *st_muxwinit; /* lower write QUEUE*/
SEE ALSO qinit(9S)
STREAMS Programming Guide
SunOS 5.10 11 Apr 1991 streamtab(9S)
Check Out this Related Man Page
strmod_add(2) System Calls Manual strmod_add(2)NAME
strmod_add - Adds STREAMS modules and drivers
SYNOPSIS
#include <sys/stream.h> dev_t strmod_add ( dev_t devno, struct streamtab *streamtab, struct streamadm *streamadm);
PARAMETERS
The device number (cdevsw slot) to use when adding a driver. If NODEV is supplied, the first available slot is used. This parameter is
ignored for modules. A pointer to the streamtab structure that contains the entry points. The actual streamtab structure has to be allo-
cated permanently in the driver's data space (as specified by System V Release 3.2). A pointer to the streamadm structure that contains
the administration parameters for the STREAMS module or driver. The actual streamadm structure is needed only for the duration of the
call. It does not have to be allocated permanently by the caller.
DESCRIPTION
The strmod_add() interface is used to configure STREAMS modules and drivers into the kernel. Specifically, it allows STREAMS drivers to
add entry points in character device switch tables. Modules are added to the STREAMS modules switch.
When adding a driver only, strmod_add() takes a device number, which is used to determine the device switch slot for the entry points. A
STREAMS driver can supply NODEV instead of a device number. In this case, strmod_add() finds the first available device switch slot and
returns the number actually used. If a device switch slot is already in use or if there are no slots available, NODEV is returned.
The streamtab parameter is a pointer to a traditional (System V Release 3.2) streamtab structure. The structure contains pointers to entry
points for the module's read and write queue routines.
The streamadm points to a streamadm structure. The streamadm structure provides additional information that is required under Tru64 UNIX.
NOTES
The device number can be constructed from the major number through the makedev macro, which is defined in /usr/include/sys/types.h.
RETURN VALUES
Upon successful completion, strmod_add() returns the device number associated with the device switch table. Otherwise, it returns NODEV.
RELATED INFORMATION
Data Structures: streamadm(4)
Routines: strmod_del(2) delim off
strmod_add(2)
How do we pronounciate bdevsw and cdevsw Kernel resources ?
I presume it as block or charcter device software table. Am I Correct in my assumption ?
Thanks in advance. (9 Replies)
Hi all,
I have a AIX kernel STREAMS question need your help,
I need to implement a firewall on AIX and get packet raw data then decide pass or drop it,
I've seen similiar firewall code on HP-UX,
on HP-UX, you have to implement a "dlpi STREAMS driver", and specify it as a "dlpi" driver in... (1 Reply)