NAME
t_look() — look at the current event on a transport endpoint
SYNOPSIS
#include <xti.h> /* for X/OPEN Transport Interface - XTI */
/* or */
#include <tiuser.h> /* for Transport Layer Interface - TLI */
int t_look (fd);
int fd;
DESCRIPTION
The
t_look()
function returns the current event on the transport endpoint
specified by
fd.
This function enables a transport provider to notify a
transport user of an asynchronous event when the user is calling functions in
synchronous mode. Certain events require immediate notification of the user
and are indicated by a specific error, [TLOOK], on the current or next function
to be executed.
This function also enables a transport user to poll a transport endpoint
periodically for asynchronous events.
Valid States
All - apart from
T_UNINIT.
XTI Internet Protocol-specific Information
As soon as a segment with the TCP urgent pointer set enters the TCP receive
buffer, the event
T_EXDATA
is indicated.
T_EXDATA
remains set until all data
up to the byte pointed to by the TCP urgent pointer has been received. If the
urgent pointer is updated, and the user has not yet received the byte
previously pointed to by the urgent pointer, the update is transparent to the
user.
Fork Safety
t_look
is not fork-safe.
RETURN VALUE
Upon success,
t_look()
returns a value that indicates which of the
following allowable events has occurred, or returns zero if no event exists.
One of the following events is returned:
- T_LISTEN
connection indication received.
- T_CONNECT
connect confirmation received.
- T_DATA
normal data received.
- T_ERROR
(TLI ONLY) fatal error occurred.
- T_EXDATA
expedited data received.
- T_DISCONNECT
disconnect received.
- T_UDERR
datagram error indication.
- T_ORDREL
orderly release indication.
- T_GODATA
(XTI only) flow control restrictions on normal data flow have been lifted.
Normal data may be sent again.
- T_GOEXDATA
(XTI only) flow control restrictions on expedited data flow have been lifted.
Expedited data may be sent again.
ERRORS
On failure,
t_errno
is set to one of the following:
- [TBADF]
The specified identifier does not refer to a transport endpoint.
- [TSYSERR]
A system error has occurred during execution of this function.
- [TPROTO]
(XTI only) This error indicates that a communication problem has been detected
between XTI and the transport provider for which there is no suitable XTI (t_errno).
STANDARDS CONFORMANCE
t_look(): SVID2, XPG3, XPG4