*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> tirdwr (7)              
Title
Content
Arch
Section
 

Contents


tirdwr(7)							     tirdwr(7)


NAME    [Toc]    [Back]

     tirdwr - Transport	Interface read/write interface STREAMS module

DESCRIPTION    [Toc]    [Back]

     tirdwr is a STREAMS module	that provides an alternate interface to	a
     transport provider	which supports the Transport Interface (TI) functions
     of	the Network Services library (see Section 3N).	This alternate
     interface allows a	user to	communicate with the transport protocol
     provider using the	read(2)	and write(2) system calls.  The	putmsg(2) and
     getmsg(2) system calls may	also be	used.  However,	putmsg and getmsg can
     only transfer data	messages between user and stream.

     The tirdwr	module must only be pushed [see	I_PUSH in streamio(7)] onto a
     stream terminated by a transport protocol provider	which supports the TI.
     After the tirdwr module has been pushed onto a stream, none of the
     Transport Interface functions can be used.	 Subsequent calls to TI
     functions will cause an error on the stream.  Once	the error is detected,
     subsequent	system calls on	the stream will	return an error	with errno set
     to	EPROTO.

     The following are the actions taken by the	tirdwr module when pushed on
     the stream, popped	[see I_POP in streamio(7)] off the stream, or when
     data passes through it.

     push      When the	module is pushed onto a	stream,	it will	check any
	       existing	data destined for the user to ensure that only regular
	       data messages are present.  It will ignore any messages on the
	       stream that relate to process management, such as messages that
	       generate	signals	to the user processes associated with the
	       stream.	If any other messages are present, the I_PUSH will
	       return an error with errno set to EPROTO.

     write     The module will take the	following actions on data that
	       originated from a write system call:

	       -  All messages with the	exception of messages that contain
		  control portions (see	the putmsg and getmsg system calls)
		  will be transparently	passed onto the	module's downstream
		  neighbor.

	       -  Any zero length data messages	will be	freed by the module
		  and they will	not be passed onto the module's	downstream
		  neighbor.

	       -  Any messages with control portions will generate an error,
		  and any further system calls associated with the stream will
		  fail with errno set to EPROTO.

     read      The module will take the	following actions on data that
	       originated from the transport protocol provider:





									Page 1






tirdwr(7)							     tirdwr(7)



	       -  All messages with the	exception of those that	contain
		  control portions (see	the putmsg and getmsg system calls)
		  will be transparently	passed onto the	module's upstream
		  neighbor.

	       -  The action taken on messages with control portions will be
		  as follows:

		    [] Messages	that represent expedited data will generate an
		       error.  All further system calls	associated with	the
		       stream will fail	with errno set to EPROTO.

		    [] Any data	messages with control portions will have the
		       control portions	removed	from the message prior to
		       passing the message on to the upstream neighbor.

		    [] Messages	that represent an orderly release indication
		       from the	transport provider will	generate a zero	length
		       data message, indicating	the end	of file, which will be
		       sent to the reader of the stream.  The orderly release
		       message itself will be freed by the module.

		    [] Messages	that represent an abortive disconnect
		       indication from the transport provider will cause all
		       further write and putmsg	system calls to	fail with
		       errno set to ENXIO.  All	further	read and getmsg	system
		       calls will return zero length data (indicating end of
		       file) once all previous data has	been read.

		    [] With the	exception of the above rules, all other
		       messages	with control portions will generate an error
		       and all further system calls associated with the	stream
		       will fail with errno set	to EPROTO.

	       -  Any zero length data messages	will be	freed by the module
		  and they will	not be passed onto the module's	upstream
		  neighbor.

     pop       When the	module is popped off the stream	or the stream is
	       closed, the module will take the	following action:

	       -  If an	orderly	release	indication has been previously
		  received, then an orderly release request will be sent to
		  the remote side of the transport connection.

SEE ALSO    [Toc]    [Back]

      
      
     streamio(7), timod(7)
     intro(2), getmsg(2), putmsg(2), read(2), write(2),	intro(3)


									PPPPaaaaggggeeee 2222
[ Back ]
 Similar pages
Name OS Title
timod IRIX Transport Interface cooperating STREAMS module
tirdwr HP-UX STREAMS module for reads and writes by Transport Interface users
timod HP-UX STREAMS module for converting ioctl() calls into Transport Interface messages
tirdwr Tru64 STREAMS module for reads and writes by TI transport users
stio Tru64 routines that provide a binary read/write interface to the symbol table
stio IRIX routines that provide a binary read/write interface to the MIPS symbol table
pseudo Tru64 Starts a non-STREAMS pty interface for a STREAMS device
AFreadmisc IRIX read from / write to / move logical read/write pointer for data in a miscellaneous chunk in an audio file
xpt FreeBSD CAM transport layer interface
ifnet Tru64 STREAMS ifnet module for bridging STREAMS device drivers to sockets
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service