t_connect.3 (2010 09)

t
t_connect(3) t_connect(3)
NAME
t_connect() - establish a connection with another transport user
SYNOPSIS
#include <xti.h> /* for X/OPEN Transport Interface - XTI */
/* or */
#include <tiuser.h> /* for Transport Layer Interface - TLI */
int t_connect (fd, sndcall, rcvcall);
int fd;
struct t_call *sndcall;
struct t_call *rcvcall;
DESCRIPTION
This function enables a transport user to request a connection to the specified destination transport user.
This function can only be issued in the
T_IDLE state. fd identifies the local transport endpoint where
communication will be established. sndcall and rcvcall point 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
sndcall specifies information needed by the transport provider to establish a connection. rcvcall specifies
information that is associated with the newly established connection.
In sndcall , addr specifies the protocol address of the destination transport user. opt presents any
protocol-specific information that might be needed by the transport provider. udata points to optional
user data that may be passed to the destination transport user during connection establishment. sequence
has no meaning for this function.
On return in rcvcall , addr returns the protocol address associated with the responding transport end-
point. opt presents any protocol-specific information associated with the connection. udata points to
optional user data that may be returned by the destination transport user during connection establish-
ment. sequence has no meaning for this function.
The opt argument permits users to define the options that may be passed to the transport provider.
These options are specific to the underlying protocols of the transport provider and are described for ISO
and TCP protocols in Appendix A, "ISO Transport Protocol Information," Appendix B, "Internet Protocol-
specific Information," and Appendix F, "Headers and Definitions" of the CAE Specification X/Open Tran-
sport Interface (XTI) manual. The user may choose not to negotiate protocol options by setting the len
field of opt to zero. In this case, the provider may use default options.
If the opt argument is used, the sndcall->opt.buf structure must point to the corresponding options struc-
tures. For XTI over the OSI transport provider, the options buffer should be a struct of type
isoco_options or tcp_options. For TLI, see the documentation for the transport provider being
used. The maxlen and buf fields of the netbuf structure pointed by rcvcall->addr and rcvcall->opt must
be set before the call.
The udata argument enables the caller to pass user data to the destination transport user and receive
user data from the destination user during connection establishment. However, the amount of user data
must not exceed the limits supported by the transport provider as returned in the connect field of the info
argument of
t_open() or t_getinfo(). If the len of udata is zero in sndcall , no data will be sent to
the destination transport user.
On return, the addr , opt , and udata fields of rcvcall will be updated to reflect values associated with the
connection. Thus, the maxlen field of each argument must be set before issuing this function to indicate
the maximum size of the buffer for each. However, rcvcall may be a null pointer, in which case no infor-
mation is given to the user on return from
t_connect().
HP-UX 11i Version 3: September 2010 1 Hewlett-Packard Company 1

Summary of content (4 pages)