t_rcvdis(3N) NETWORK FUNCTIONS t_rcvdis(3N)
NAME
t_rcvdis - retrieve information from disconnect
SYNOPSIS
#include <tiuser.h>
t_rcvdis (int fd, struct t_discon *discon);
DESCRIPTION
This function is used to identify the cause of a disconnect,
and to retrieve any user data sent with the disconnect. fd
identifies the local transport endpoint where the connection
existed, and discon points to a t_discon structure contain-
ing the following members:
struct netbuf udata;
int reason;
int sequence;
netbuf is described in intro(3). reason specifies the rea-
son for the disconnect through a protocol-dependent reason
code, udata identifies any user data that was sent with the
disconnect, and sequence may identify an outstanding connect
indication with which the disconnect is associated.
sequence is only meaningful when t_rcvdis is issued by a
passive transport user who has executed one or more t_listen
functions and is processing the resulting connect indica-
tions. If a disconnect indication occurs, sequence can be
used to identify which of the outstanding connect indica-
tions is associated with the disconnect.
If a user does not care if there is incoming data and does
not need to know the value of reason or sequence, discon may
be NULL and any user data associated with the disconnect
will be discarded. However, if a user has retrieved more
than one outstanding connect indication (via t_listen) and
discon is NULL, the user will be unable to identify which
connect indication the disconnect is associated with. On
failure, t_errno may be set to one of the following:
[TBADF] The specified file descriptor does not
refer to a transport endpoint.
[TNODIS] No disconnect indication currently
exists on the specified transport end-
point.
[TBUFOVFLW] The number of bytes allocated for incom-
ing data is not sufficient to store the
data. The provider's state, as seen by
the user, will change to T_IDLE, and the
disconnect indication information to be
Last change: Networking Support Utilities 1
t_rcvdis(3N) NETWORK FUNCTIONS t_rcvdis(3N)
returned in discon will be discarded.
[TNOTSUPPORT] This function is not supported by the
underlying transport provider.
[TSYSERR] A system error has occurred during exe-
cution of this function.
Last change: Networking Support Utilities 2
t_rcvdis(3N) NETWORK FUNCTIONS t_rcvdis(3N)
SEE ALSO
intro(3), t_connect(3N), t_listen(3N), t_open(3N),
t_snddis(3N).
UNIX System V Network Programmer's Guide.
DIAGNOSTICS
t_rcvdis returns 0 on success and -1 on failure and t_errno
is set to indicate the error.
Last change: Networking Support Utilities 3