t_snddis(3)t_snddis(3)NAMEt_snddis() - send user-initiated disconnect request
SYNOPSISDESCRIPTION
The function is used to initiate an abortive release on an already
established connection or to reject a connect request. fd identifies
the local transport endpoint of the connection, and call specifies
information associated with the abortive release. call points to a
structure which contains the following members:
The type structure is defined in the or header file. This structure,
which is used to define buffer parameters, has the following members:
maximum byte length of the data buffer
actual byte length of data written to buffer
points to buffer location
The values in call have different semantics, depending on the context
of the call to When rejecting a connect request, call must be a non-
null pointer and contain a valid value of sequence to uniquely identify
the rejected connect indication to the transport provider. The
sequence parameter is only meaningful, if the transport connection is
in the state (see t_getstate(3)). The addr and opt fields of call are
ignored. In all other cases, call need only be used when data is being
sent with the disconnect request. The addr, opt, and sequence fields
of the structure are ignored. If the user does not wish to send data
to the remote user, the value of call may be a null pointer.
udata specifies the user data to be sent to the remote user. The
amount of user data must not exceed the limits supported by the trans‐
port provider as returned in the discon field of the info argument of
or If the len field of udata is zero, no data will be sent to the
remote user.
Valid States
(ocnt > 0).
Caveats
is an abortive disconnect. Therefore a issued on a connection endpoint
may cause data previously sent via or data not yet received to be lost
(even if an error is returned).
Fork Safety
is not fork-safe.
RETURN VALUE
Upon successful completion, a value of 0 is returned. Otherwise, a
value of −1 is returned and is set to indicate the error.
ERRORS
On failure, is set to one of the following:
[TBADF] The specified identifier does not refer to a trans‐
port endpoint.
[TOUTSTATE] This function was issued in the wrong sequence on
the transport endpoint referenced by fd.
[TBADDATA] (XTI only) The amount of user data specified was
not within the bounds allowed by the transport
provider. Some outbound data queued for this end‐
point may be lost.
[TBADSEQ] An invalid sequence was specified, or a null call
pointer was specified when rejecting a connect
request. Some outbound data queued for this end‐
point may be lost.
[TLOOK] An asynchronous event has occurred on this trans‐
port 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.
[TPROTO] (XTI only) This error indicates that a communica‐
tion problem has been detected between XTI and the
transport provider for which there is no other
suitable XTI (
SEE ALSOt_connect(3), t_getinfo(3), t_listen(3), t_open(3), thread_safety(5).
STANDARDS CONFORMANCEt_snddis(3)