HP-UX Reference (11i v2 07/12) - 3 Library Functions N-Z (vol 7)

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 com-
munication will be established. sndcall and rcvcall point to a
t_call structure which contains the follow-
ing 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 endpoint.
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 establishment. 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 Transport Inter-
face (XTI) manual. The user may choose not to negotiate protocol options by setting the len eld 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 argu-
ment 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 elds 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 information
is given to the user on return from t_connect() .
HP-UX 11i Version 2: December 2007 Update 1 Hewlett-Packard Company 493