Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ t_sync(3N) — Interactive 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

T_SYNC(3N)

dup(2)

exec(2)

fork(2)

open(2)



          T_SYNC(3N)           INTERACTIVE UNIX System           T_SYNC(3N)



          NAME
               t_sync - synchronize transport library

          SYNOPSIS
               #include <tiuser.h>

               int t_sync(fd)
               int fd;

          DESCRIPTION
               For the transport endpoint specified by fd, t_sync synchron-
               izes 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 via
               open(2), dup(2), or as a result of a fork(2) and exec(2)] 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 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.  t_sync returns the current state of
               the provider to the user, thereby enabling the user to ver-
               ify the state before taking further action.  This coordina-
               tion is only valid among cooperating processes; it is possi-
               ble that a process or an incoming event could change the
               provider's state after a t_sync is issued.

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

               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 execu-
                                  tion of this function.

          SEE ALSO


          Rev. Networking Support Utilities                          Page 1





          T_SYNC(3N)           INTERACTIVE UNIX System           T_SYNC(3N)



               dup(2), exec(2), fork(2), open(2).
               Programmer's Guide.

          DIAGNOSTICS
               The t_sync function returns the state of the transport pro-
               vider on 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).































          Rev. Networking Support Utilities                          Page 2



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