t_rcv man page on Ultrix

Man page or keyword search:  
man Server   3690 pages
apropos Keyword Search (all sections)
Output format
Ultrix logo
[printable version]

t_rcv(3xti)							   t_rcv(3xti)

Name
       t_rcv - receive data or expedited data sent over a connection

Syntax
       #include <xti.h>

       int t_rcv(fd, buf, nbytes, flags)
       int fd;
       char *buf;
       unsigned nbytes;
       int *flags;

Arguments
       fd	 Identifies  the  local	 transport endpoint through which data
		 arrives.

       buf	 Points to a receive buffer where user data is placed.

       nbytes	 Specifies the size of the receive buffer.

       flags	 Specifies optional flags. Can be set on return from

Description
       This function receives either normal or expedited data.

       By default, operates in synchronous mode and waits for data  to	arrive
       if none is currently available. However, if O_NONBLOCK is set (by means
       of or executes in asynchronous mode and fails if no data is available.

       On return from the call, if T_MORE is set in flags this indicates  that
       there  is  more data and the current transport service data unit (TSDU)
       or expedited transport service data (ETSDU) must be received in	multi‐
       ple  calls.  Each  with the T_MORE flag set indicates that another must
       follow immediately to get more data from the current TSDU. The  end  of
       the TSDU is identified by the return of a call with the T_MORE flag not
       set. If the transport provider does not support the concept of  a  TSDU
       as  indicated in the info argument on return from or the T_MORE flag is
       not meaningful and should be ignored.

       On return, the data returned is expedited data if T_EXPEDITED is set in
       flags.  If  the	number of bytes of expedited data exceeds nbytes, sets
       T_EXPEDITED and T_MORE on return	 from  the  initial  call.  Subsequent
       calls  to  retrieve the remaining ETSDU have T_EXPEDITED set on return.
       The end of the ETSDU is identified by the return of  a  call  with  the
       T_MORE flag not set.

       If  expedited  data  arrives  after  part of a TSDU has been retrieved,
       receipt of the remainder of the TSDU is suspended until the  ETSDU  has
       been  processed.	 Only  after the full ETSDU has been retrieved (T_MORE
       not set) will the remainder of the TSDU be available to the user.

       In synchronous mode, the only way for the user to be  notified  of  the
       arrival	of normal or expedited data is to issue this function or check
       for the T_DATA or T_EXDATA events using the function.

       ──────────────────────────────────────
       Parameters   Before Call	  After Call
       ──────────────────────────────────────
       fd	    x		  /
       buf	    x		  (x)
       nbytes	    x		  /

       flags	    /		  x
       ──────────────────────────────────────

Return Values
       Upon successful completion, returns the number of  bytes	 received.  On
       failure,	 a value of -1 is returned, and t_errno is set to indicate the
       error.

Diagnostics
       On failure, t_errno is set to one of the following:

       [TBADF]		   The specified file descriptor does not refer	 to  a
			   transport endpoint.

       [TOUTSTATE]	   The	function  was  issued in the wrong sequence on
			   the transport endpoint referenced by fd.

       [TNODATA]	   O_NONBLOCK was set, but no data is currently avail‐
			   able from the transport provider.

       [TLOOK]		   An asynchronous event has occurred on the transport
			   endpoint and requires immediate attention.

       [TNOTSUPPORT]	   This function is not supported  by  the  underlying
			   transport provider.

       [TSYSERR]	   A  system  error  has  occurred during execution of
			   this function.

See Also
       fcntl(2), t_getinfo(3xti), t_look(3xti), t_open(3xti), t_snd(3xti)

								   t_rcv(3xti)
[top]

List of man pages available for Ultrix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net