[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]

Communications Programming Concepts

List of STREAMS Programming References

The list includes:

For information about STREAMS commands for configuring and managing, see List of Streams Commands.


streamio Lists the ioctl operations which perform a variety of control functions on streams.

Modules and Drivers

The following modules and drivers are used in the STREAMS environment. The references are found in the list of subroutines.

pfmod Selectively removes upstream data messages on a stream.
timod Converts a set of streamio operations into STREAMS messages.
tirdwr Supports the Transport Interface functions of the Network Services library.
xtiso Provides access to sockets-based protocols to STREAMS applications.
dlpi Provides an interface to the data link provider.


t_accept Accepts a connect request.
t_alloc Allocates a library structure.
t_bind Binds an address to a transport endpoint.
t_close Closes a transport endpoint.
t_connect Establishes a connection with another transport user.
t_error Produces an error message.
t_free Frees a library structure.
t_getinfo Gets protocol-specific service information.
t_getstate Gets the current state.
t_listen Listens for a connect request.
t_look Looks at the current event on a transport endpoint.
t_open Establishes a transport endpoint.
t_optmgmt Manages options for a transport endpoint.
t_rcv Receives normal data or expedited data sent over a connection.
t_rcvconnect Receives the confirmation from a connect request.
t_rcvdis Retrieves information from disconnect.
t_rcvrel Acknowledges receipt of an orderly release indication.
t_rcvudata Receives a data unit.
t_rcvuderr Receives a unit data error indication.
t_snd Sends data or expedited data over a connection.
t_snddis Sends a user-initiated disconnect request.
t_sndrel Initiates an orderly release of a transport connection.
t_sndudata Sends a data unit to another transport user.
t_sync Synchronizes transport library.
t_unbind Disables a transport endpoint.


isastream Tests a file descriptor.

System Calls

getmsg Gets the next message off a stream.
getpmsg Gets the next priority message off a stream.
putmsg Sends a message on a stream.
putpmsg Sends a priority message on a stream.


The following utilities are used by STREAMS:

adjmsg Trims bytes in a message.
allocb Allocates message and data blocks.
backq Returns a pointer to the queue behind a given queue.
bcanput Tests for flow control in the given priority band.
bufcall Recovers from a failure of the allocb utility.
canput Tests for available room in a queue.
copyb Copies a message block.
copymsg Copies a message.
datamsg Tests whether message is a data message.
dupb Duplicates a message-block descriptor.
dupmsg Duplicates a message.
enableok Enables a queue to be scheduled for service.
esballoc Allocates message and data blocks.
flushband Flushes the messages in a given priority band.
flushq Flushes a queue.
freeb Frees a single message block.
freemsg Frees all message blocks in a message.
getadmin Returns a pointer to a module.
getmid Returns a module ID.
getq Gets a message from a queue.
insq Puts a message at a specific place in a queue.
linkb Concatenates two messages into one.
mi_bufcall Provides a reliable alternative to the bufcall utility.
mi_close_comm Performs housekeeping during STREAMS module close operations.
mi_next_ptr Traverses a STREAMS module's linked list of open streams.
mi_open_comm Performs housekeeping during STREAMS module open operations.
msgdsize Gets the number of data bytes in a message.
noenable Prevents a queue from being scheduled.
OTHERQ Returns the pointer to the mate queue.
pullupmsg Concatenates and aligns bytes in a message.
putbq Returns a message to the beginning of a queue.
putctl Passes a control message.
putctl1 Passes a control message with a one-byte parameter.
putnext Passes a message to the next queue.
putq Puts a message on a queue.
qenable Enables a queue.
qreply Sends a message on a stream in the reverse direction.
qsize Finds the number of messages on a queue.
RD Gets the pointer to the read queue.
rmvb Removes a message block from a message.
rmvq Removes a message from a queue.
splstr Sets the processor level.
splx Terminates a section of code.
srv Services queued messages for STREAMS modules or drivers.
str_install Installs STREAMS modules and drivers.
strlog Generates STREAMS error-logging and event-tracing messages.
strqget Obtains information about a queue or band of the queue.
testb Checks for an available buffer.
timeout Schedules a function to be called after a specified interval.
unbufcall Cancels a bufcall request.
unlinkb Removes a message block from the head of a message.
untimeout Cancels a pending time-out request.
unweldq Removes a previously established weld connection between STREAMS queues.
wantio Register direct I/O entry points with the stream head.
weldq Establishes a unidirectional connection between STREAMS queues.
WR Retrieves a pointer to the write queue.

[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]