Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_snddis(S) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

netbuf(FP)


 t_snddis(S)               (TLI/XTI) 6 January 1993               t_snddis(S)


 Name

    t_snddis - send user-initiated disconnect request

 Syntax


    TLI syntax


    cc . . .  -lnsls


    #include <sys/tiuser.h>

    int t_snddis (fd, call)
    int fd;
    struct t_call *call;


    XTI syntax


    cc . . .  -lxti


    #include <xti.h>

    int t_snddis (fd, call)
    int fd;
    struct t_call *call;


 Description

    This function is used to initiate an abortive release on an already esta-
    blished connection or to reject a connect request.  fd identifies the
    local transport endpoint of the connection, and call specifies informa-
    tion associated with the abortive release.  call points to a tcall
    structure which contains the following members:

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

    netbuf is described in netbuf(FP).  The values in call have different
    semantics, depending on the context of the call to tsnddis.  When
    rejecting a connect request, call must be non-NULL and contain a valid
    value of sequence to uniquely identify the rejected connect indication to
    the transport provider.  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 tcall
    structure are ignored.  If the user does not wish to send data to the
    remote user, the value of call may be NULL.

    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 pro-
    vider as returned by topen or tgetinfo.  If the len field of udata is
    zero, data is not sent to the remote user.

    On failure, terrno may be set to one of the following:

    [TBADF]            The specified file descriptor does not refer to a
                       transport endpoint.

    [TBADDATA]         The amount of user data specified was not within the
                       bounds allowed by the transport provider.  The trans-
                       port provider's outgoing queue is flushed, so data may
                       be lost.

    [TBADSEQ]          An invalid sequence number was specified, or a NULL
                       call structure was specified when rejecting a connect
                       request.  The transport provider's outgoing queue is
                       flushed, so data may be lost.

    [TLOOK]            An asynchronous event has occurred on this transport
                       endpoint and requires immediate attention.

    [TNOTSUPPORT]      The TCLTS service type is not supported by the under-
                       lying transport provider.

    [TOUTSTATE]        The function was issued in the wrong sequence.  The
                       transport provider's outgoing queue may be flushed, so
                       data may be lost.

    [TSYSERR]          A system error has occurred during execution of this
                       function.

 Diagnostics

    The tsnddis function returns 0 on success and -1 on failure, and terrno
    is set to indicate the error.

 See also

    netbuf(FP), tconnect(S), tgetinfo(S), tlisten(S), topen(S)

 Standards conformance

    tsnddis is conformant with:
    AT&T SVID Issue 2;
    X/Open Portability Guide, Issue 3, 1989;
    and Intel386 Binary Compatibility Specification, Edition 2 (iBCSe2).


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026