Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

dup(2)

exec(2)

fork(2)

open(2)



  t_sync(3)                           CLIX                           t_sync(3)



  NAME

    t_sync - Synchronize transport library

  LIBRARY

    The Transport Layer Interface (TLI) Library (libnsl_s.a)

  SYNOPSIS

    #include <tiuser.h>

    int t_sync(
      int fd );

  PARAMETERS

    fd   Specifies the transport endpoint.

  DESCRIPTION

    For the transport endpoint specified by fd, the t_sync() function
    synchronizes the data structures managed by the transport library with
    information from the underlying transport provider.  In doing so, it can
    convert a raw file descriptor (obtained with open(), dup(), or as a result
    of a fork() and exec()) to an initialized transport endpoint, assuming
    that file descriptor referenced a transport provider.  This function also
    allows two cooperating processes to synchronize their interaction with a
    transport provider.

    For example, if a process forks a new process and issues an exec, the new
    process must issue a t_sync() call to build the private library data
    structure associated with a transport endpoint and to synchronize the data
    structure with the relevant provider information.

    It is important to remember that the transport provider treats all users
    of a transport endpoint as a single user.  If multiple processes are using
    the same endpoint, they should coordinate their activities so as not to
    violate the state of the provider.  The t_sync() function returns the
    current state of the provider to the user, thereby enabling the user to
    verify the state before taking further action.  This coordination is only
    valid among cooperating processes; it is possible that a process or an
    incoming event could change the provider's state after a t_sync() call is
    issued.

    If the provider is undergoing a state transition when t_sync() is called,
    the function will fail.

  RETURN VALUES

    The t_sync() function returns the state of the transport provider on



  2/94 - Intergraph Corporation                                              1






  t_sync(3)                           CLIX                           t_sync(3)



    successful completion and -1 on failure and t_errno is set to indicate the
    error.  The state returned may be one of the following:

    T_UNBND      unbound

    T_IDLE       idle

    T_OUTCON     outgoing connection pending

    T_INCON      incoming connection pending

    T_DATAXFER   data transfer

    T_OUTREL     outgoing orderly release (waiting for an orderly release
                 indication)

    T_INREL      incoming orderly release (waiting for an orderly release
                 request)

  ERRORS

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

    [TBADF]        The specified file descriptor is a valid open file
                   descriptor but does not refer to a transport endpoint.

    [TSTATECHNG]   The transport provider is undergoing a state change.

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

  RELATED INFORMATION

    Functions:  dup(2), exec(2), fork(2), open(2)

    AT&T UNIX System V Network Programmer's Guide


















  2                                              Intergraph Corporation - 2/94




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