|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T t
Length: 5521 (0x1591) Types: TextFile Names: »tsap.h«
└─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0 └─⟦e83f91978⟧ »EurOpenD22/isode/osimis-2.0.tar.Z« └─⟦d846658bd⟧ └─⟦this⟧ »osimis/misode/h/tsap.h« └─⟦2d1937cfd⟧ Bits:30007241 EUUGD22: P.P 5.0 └─⟦35176feda⟧ »EurOpenD22/isode/isode-6.tar.Z« └─⟦de7628f85⟧ └─⟦this⟧ »isode-6.0/h/tsap.h«
/* tsap.h - include file for transport users (TS-USER) */ /* * $Header: /f/osi/h/RCS/tsap.h,v 7.1 89/12/18 17:50:50 mrose Exp $ * * * $Log: tsap.h,v $ * Revision 7.1 89/12/18 17:50:50 mrose * update * * Revision 7.0 89/11/23 21:56:08 mrose * Release 6.0 * */ /* * NOTICE * * Acquisition, use, and distribution of this module and related * materials are subject to the restrictions of a license agreement. * Consult the Preface in the User's Manual for the full terms of * this agreement. * */ #ifndef _TSAP_ #define _TSAP_ #ifndef _MANIFEST_ #include "manifest.h" #endif #ifndef _GENERAL_ #include "general.h" #endif #ifndef _ISOADDRS_ #include "isoaddrs.h" #endif /* \f */ struct TSAPstart { /* T-CONNECT.INDICATON */ int ts_sd; /* TRANSPORT descriptor */ struct TSAPaddr ts_calling; /* address of peer calling */ struct TSAPaddr ts_called; /* address of peer called */ int ts_expedited; /* EXPEDITED DATA ok */ int ts_tsdusize; /* largest atomic TSDU */ struct QOStype ts_qos; /* quality of service */ /* initial DATA from peer */ #define TS_SIZE 32 int ts_cc; /* length */ char ts_data[TS_SIZE]; /* data */ }; struct TSAPconnect { /* T-CONNECT.CONFIRMATION */ int tc_sd; /* TRANSPORT descriptor */ struct TSAPaddr tc_responding;/* address of peer responding */ int tc_expedited; /* EXPEDITED DATA ok */ int tc_tsdusize; /* largest atomic TSDU */ struct QOStype tc_qos; /* quality of service */ /* initial DATA from peer */ #define TC_SIZE 32 int tc_cc; /* length */ char tc_data[TC_SIZE]; /* data */ }; struct TSAPdata { /* T-READ.INDICATION */ int tx_expedited; /* DATA from peer */ #define TX_SIZE 16 /* EXPEDITED DATA only */ int tx_cc; /* total length */ struct qbuf tx_qbuf; /* chained data */ }; #define TXFREE(tx) QBFREE (&((tx) -> tx_qbuf)) struct TSAPdisconnect { /* T-DISCONNECT.INDICATION */ int td_reason; /* reason for DISCONNECT, from ISO8072: */ #define DR_BASE 0x80 #define DR_NORMAL (DR_BASE + 0) /* NORMAL disconnect by SESSION entity */ #define DR_REMOTE (DR_BASE + 1) /* Remote TRANSPORT entity congested at connect request time */ #define DR_CONNECT (DR_BASE + 2) /* Connection negotiation failed */ #define DR_DUPLICATE (DR_BASE + 3) /* Duplicate source reference detected for the same pair of NSAPs */ #define DR_MISMATCH (DR_BASE + 4) /* Mismatched references */ #define DR_PROTOCOL (DR_BASE + 5) /* Protocol error */ #define DR_OVERFLOW (DR_BASE + 7) /* Reference overflow */ #define DR_REFUSED (DR_BASE + 8) /* Connect request refused on this network connection */ #define DR_LENGTH (DR_BASE + 10) /* Header or parameter length invalid */ /* begin UNOFFICIAL */ #define DR_NETWORK (DR_BASE + 11) /* Network disconnect */ #define DR_PARAMETER (DR_BASE + 12) /* Invalid parameter */ #define DR_OPERATION (DR_BASE + 13) /* Invalid operation */ #define DR_TIMER (DR_BASE + 14) /* Timer expired */ #define DR_WAITING (DR_BASE + 15) /* Indications waiting */ /* end UNOFFICIAL */ #define DR_UNKNOWN 0 /* Reason not specifed */ #define DR_CONGEST 1 /* Congestion at TSAP */ #define DR_SESSION 2 /* Session entity not attached to TSAP */ #define DR_ADDRESS 3 /* Address unknown */ #ifdef notdef #define DR_FATAL(r) ((r) < DR_BASE || (r) < DR_PARAMETER) #define DR_OFFICIAL(r) ((r) < DR_BASE || (r) < DR_NETWORK) #else #define DR_FATAL(r) ((r) < DR_PARAMETER) #define DR_OFFICIAL(r) ((r) < DR_NETWORK) #endif /* disconnect DATA from peer */ #define TD_SIZE 64 int td_cc; /* length */ char td_data[TD_SIZE]; /* data */ }; /* \f */ extern char *tsapversion; #ifdef TCP int T_TCP_Exec (); /* SERVER only */ #endif #ifdef X25 int T_X25_Exec (); /* .. */ #endif #ifdef BRIDGE_X25 int T_Bridge_Exec (); /* .. */ #endif #ifdef TP4 int T_TP4_Exec (); /* .. */ #endif int TInit (); /* T-CONNECT.INDICATION */ int TConnResponse (); /* T-CONNECT.RESPONSE */ /* T-CONNECT.REQUEST (backwards-compatible) */ #define TConnRequest(a1,a2,a3,a4,a5,a6,a7,a8) \ TAsynConnRequest(a1,a2,a3,a4,a5,a6,a7,a8,0) int TAsynConnRequest (); /* T-(ASYN-)CONNECT.REQUEST */ int TAsynRetryRequest (); /* T-ASYN-RETRY.REQUEST (pseudo) */ int TDataRequest (); /* T-DATA.REQUEST */ int TWriteRequest (); /* T-WRITE.REQUEST (pseudo) */ int TExpdRequest (); /* T-EXPEDITED-DATA.REQUEST */ int TReadRequest (); /* T-READ.REQUEST (pseudo) */ int TDiscRequest (); /* T-DISCONNECT.REQUEST */ int TSetIndications (); /* define vectors for INDICATION events */ int TSelectMask (); /* map transport descriptors for select() */ int TSelectOctets (); /* estimate of octets that might be returned */ int TGetAddresses (); /* get TSAPs */ int TSetManager (); /* defining transport manager */ char *TErrString (); /* return TSAP error code in string form */ int TNetListen (); /* start listenting on an TSAP */ int TNetUnique (); /* start listenting on a set of unique TSAPs */ #define TNetAccept(p,v,n,r,w,e,s,t) \ TNetAcceptAux ((p), (v), NULLIP, NULLTA, (n), (r), (w), (e), (s), (t)) int TNetAcceptAux (); /* accept a call on an TSAP */ int TNetClose (); /* stop listening on an TSAP */ int TSetQueuesOK (); /* enable/disable queued (non-blocking) writes */ #define TLocalHostName getlocalhost char *TLocalHostName (); /* return name of local host (sigh) */ #endif