t_sndrel(3) — Subroutines
NAME
t_sndrel − Initiate an endpoint connect orderly release
SYNOPSIS
#include <xti.h>
int t_sndrel(
int fd );
LIBRARY
XTI Library (libxti.a)
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
t_sndrel(): XNS4.0, XNS5.0
Refer to the standards(5) reference page for more information about industry standards and associated tags.
PARAMETERS
The following table summarizes the relevance of input parameter data before and after t_sndrel() is called:
| Parameter | Before Call | After Call |
| fd | y | n |
Notes to Table:
yThis is a meaningful parameter.
nThis is not a meaningful parameter.
fdSpecifies a file descriptor returned by the t_open() function that identifies a local transport endpoint where an orderly release is wanted.
DESCRIPTION
The t_sndrel() XTI function is used in connection-oriented mode to initiate an orderly release at a transport endpoint specified by a file descriptor previously returned by the t_open() function.
After this orderly release is indicated, the transport user should not try to send more data through that transport endpoint; an attempt to send more data to a released transport endpoint may block continuously. However, a transport user may continue to receive data over the connection until an orderly release indication is received.
The t_sndrel() function should not be used unless the servtype type-of-service returned by the t_open() or t_getinfo() function is T_COTS_ORD (supports connection-mode service with the optional orderly release facility).
RETURN VALUES
Upon successful completion, a value of 0 (zero) is returned. Otherwise, a value of -1 is returned and t_errno is set to indicate an error.
ERRORS
If the t_sndrel() function fails, t_errno may be set to one of the following values:
[TBADF]
File descriptor fd does not refer to a valid transport endpoint.
[TFLOW]
Asynchronous mode is indicated because O_NONBLOCK was set, but the transport provider cannot accept a release because of flow−control restrictions.
[TLOOK]
An asynchronous event has occurred on this transport endpoint and requires immediate attention.
[TNOTSUPPORT]
This function is not supported by the underlying transport provider.
[TOUTSTATE]
The t_sndrel() function was issued in the wrong sequence at the transport endpoint specified by the fd parameter.
[TSYSERR]
A system error occurred during execution of this function.
[TPROTO]
This error indicates that a communication problem has been detected between XTI and the transport provider for which there is no other suitable XTI(t_errno).
VALID STATES
The t_sndrel() function can be called only in the T_DATAXFER and T_INREL transport provider states.
SEE ALSO
Functions: t_getinfo(3), t_open(3), t_rcvrel(3)
Standards: standards(5)
Network Programmer’s Guide