Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_accept(3N) — Amiga System V Release 4 Version 2.03

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(3)



t_accept(3N)            NETWORK FUNCTIONS            t_accept(3N)



NAME
     taccept - accept a connect request

SYNOPSIS
     #include <tiuser.h>

     int taccept ( int fd, int resfd, struct tcall *call);

DESCRIPTION
     This function is issued by a transport user to accept a con-
     nect  request.   fd  identifies the local transport endpoint
     where the connect indication arrived,  resfd  specifies  the
     local transport endpoint where the connection is to be esta-
     blished, and call contains information required by the tran-
     sport provider to complete the connection.  call points to a
     tcall structure that contains the following members:

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

     netbuf is described in  intro(3).   In  call,  addr  is  the
     address  of  the caller, opt indicates any protocol-specific
     parameters associated with the connection, udata  points  to
     any  user data to be returned to the caller, and sequence is
     the value returned by tlisten that uniquely associates  the
     response with a previously received connect indication.

     A transport user may accept a connection on either the same,
     or  on a different, local transport endpoint from the one on
     which the connect indication arrived.  If the same  endpoint
     is   specified  (i.e.,  resfd=fd),  the  connection  can  be
     accepted unless the following condition is true:   The  user
     has  received other indications on that endpoint but has not
     responded to them (with taccept  or  tsnddis).   For  this
     condition, taccept will fail and set terrno to TBADF.

     If a different transport endpoint is specified  (resfd!=fd),
     the endpoint must be bound to a protocol address and must be
     in the TIDLE state [see tgetstate(3N)] before the taccept
     is issued.

     For both types of endpoints,  taccept  will  fail  and  set
     terrno  to  TLOOK if there are indications (e.g., a connect
     or disconnect) waiting to be received on that endpoint.

     The values of parameters specified by opt and the syntax  of
     those  values  are  protocol  specific.   The udata argument
     enables the called transport user to send user data  to  the
     caller  and the amount of user data must not exceed the lim-
     its supported by the transport provider as returned  in  the



            Last change: Networking Support Utilities           1





t_accept(3N)            NETWORK FUNCTIONS            t_accept(3N)



     connect  field  of the info argument of topen or tgetinfo.
     If the len [see netbuf in intro(3)] field of udata is  zero,
     no data will be sent to the caller.  On failure, terrno may
     be set to one of the following:

     [TBADF]            The specified file  descriptor  does  not
                        refer  to  a  transport  endpoint, or the
                        user is illegally accepting a  connection
                        on  the  same transport endpoint on which
                        the connect indication arrived.

     [TOUTSTATE]        The function  was  issued  in  the  wrong
                        sequence on the transport endpoint refer-
                        enced by fd, or  the  transport  endpoint
                        referred to by resfd is not in the TIDLE
                        state.

     [TACCES]           The user  does  not  have  permission  to
                        accept  a  connection  on  the responding
                        transport endpoint or use  the  specified
                        options.

     [TBADOPT]          The  specified   options   were   in   an
                        incorrect  format  or  contained  illegal
                        information.

     [TBADDATA]         The amount of user data specified was not
                        within  the  bounds  allowed by the tran-
                        sport provider.

     [TBADSEQ]          An invalid sequence number was specified.

     [TLOOK]            An asynchronous event has occurred on the
                        transport  endpoint  referenced by fd and
                        requires immediate attention.

     [TNOTSUPPORT]      This function is  not  supported  by  the
                        underlying transport provider.

     [TSYSERR]          A system error has occurred during execu-
                        tion of this function.

SEE ALSO
     intro(3), tconnect(3N), tgetstate(3N), tlisten(3N),
     topen(3N), trcvconnect(3N).
     UNIX System V Network Programmer's Guide.

DIAGNOSTICS
     Upon successful completion, a value of 0 is returned.   Oth-
     erwise,  a  value  of  -1  is returned and terrno is set to
     indicate the error.




            Last change: Networking Support Utilities           2



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