Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > T

t_snddis(3)

HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

t_snddis() — send user-initiated disconnect request

SYNOPSIS

#include <xti.h> /* for X/OPEN Transport Interface - XTI */ /* or */ #include <tiuser.h> /* for Transport Layer Interface - TLI */ int t_snddis (fd, call); int fd; struct t_call *call;

DESCRIPTION

The t_snddis() 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 t_call structure which contains the following members:

struct netbuf addr; struct netbuf opt; struct netbuf udata; int sequence;

The type netbuf structure is defined in the <xti.h> or <tiuser.h> header file. This structure, which is used to define buffer parameters, has the following members:

unsigned int maxlen

maximum byte length of the data buffer

unsigned int len

actual byte length of data written to buffer

char *buf

points to buffer location

The values in call have different semantics, depending on the context of the call to t_snddis(). 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 T_INCON 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 t_call 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 transport provider as returned in the discon field of the info argument of t_open() or t_getinfo(). If the len field of udata is zero, no data will be sent to the remote user.

Valid States

T_DATAXFER, T_OUTCON, T_OUTREL, T_INREL, T_INCON (ocnt > 0).

Caveats

t_snddis() is an abortive disconnect. Therefore a t_snddis() issued on a connection endpoint may cause data previously sent via t_snd() or data not yet received to be lost (even if an error is returned).

Fork Safety

t_snddis is not fork-safe.

RETURN VALUE

Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and t_errno is set to indicate the error.

ERRORS

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

[TBADF]

The specified identifier does not refer to a transport 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 endpoint 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 endpoint may be lost.

[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.

[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 other suitable XTI ( t_errno).

STANDARDS CONFORMANCE

t_snddis(): SVID2, XPG3, XPG4

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.