Annotation of 43BSDReno/contrib/isode-beta/h/tp4.h, revision 1.1.1.1

1.1       root        1: /* tp4.h - TP4 abstractions */
                      2: 
                      3: /* 
                      4:  * $Header: /f/osi/h/RCS/tp4.h,v 7.4 90/07/27 08:44:49 mrose Exp $
                      5:  *
                      6:  *
                      7:  * $Log:       tp4.h,v $
                      8:  * Revision 7.4  90/07/27  08:44:49  mrose
                      9:  * update
                     10:  * 
                     11:  * Revision 7.3  90/02/19  13:09:27  mrose
                     12:  * update
                     13:  * 
                     14:  * Revision 7.2  89/12/19  22:26:13  mrose
                     15:  * touch-up
                     16:  * 
                     17:  * Revision 7.1  89/12/19  16:18:02  mrose
                     18:  * dgram
                     19:  * 
                     20:  * Revision 7.0  89/11/23  21:56:06  mrose
                     21:  * Release 6.0
                     22:  * 
                     23:  */
                     24: 
                     25: /*
                     26:  *                               NOTICE
                     27:  *
                     28:  *    Acquisition, use, and distribution of this module and related
                     29:  *    materials are subject to the restrictions of a license agreement.
                     30:  *    Consult the Preface in the User's Manual for the full terms of
                     31:  *    this agreement.
                     32:  *
                     33:  */
                     34: 
                     35: 
                     36: #ifndef        _TP4_
                     37: #define        _TP4_
                     38: 
                     39: /*  */
                     40: 
                     41: #ifdef BSD_TP4
                     42: #ifndef        SOCK_STREAM
                     43: #include <sys/socket.h>
                     44: #endif
                     45: #include <netiso/iso.h>
                     46: #include <netiso/iso_errno.h>
                     47: #include <netiso/tp_user.h>
                     48: 
                     49: union sockaddr_osi {
                     50:     struct sockaddr_iso    osi_sockaddr;
                     51:     char osi_bigaddr[104];
                     52: };
                     53: 
                     54: union osi_control_msg {
                     55:     struct {
                     56:        struct cmsghdr ocm_cmhdr;
                     57:        char    ocm_cmdata[128 - sizeof (struct cmsghdr)];
                     58:     }    ocm_control;
                     59: 
                     60:     char ocm_data[128];
                     61: };
                     62: 
                     63: int    gen2tp4 (), tp42gen ();
                     64: 
                     65: 
                     66: #define        CLTS                    /* have CL-mode transport service */
                     67: 
                     68: #ifndef        _DGRAM_
                     69: #include "dgram.h"
                     70: #endif
                     71: 
                     72: int    start_clts_server ();
                     73: #define        start_clts_client       start_clts_server
                     74: 
                     75: #define        join_clts_server(fd,sock) \
                     76:                join_dgram_aux ((fd), (struct sockaddr *) (sock), 0)
                     77: #define        join_clts_client(fd,sock) \
                     78:                join_dgram_aux ((fd), (struct sockaddr *) (sock), 1)
                     79: 
                     80: #define        read_clts_socket        read_dgram_socket
                     81: #define        write_clts_socket       write_dgram_socket
                     82: #define        close_clts_socket       close_dgram_socket
                     83: 
                     84: #define        select_clts_socket      select_dgram_socket
                     85: #endif
                     86: 
                     87: /*    SunLink OSI */
                     88: 
                     89: #ifdef SUN_TP4
                     90: #if    defined(SUNLINK_6_0) && !defined(SUNLINK_5_2)
                     91: #define        SUNLINK_5_2
                     92: #endif
                     93: 
                     94: #ifndef        SUNLINK_6_0
                     95: #include <sys/ieee802.h>
                     96: #else
                     97: #include <net/if_ieee802.h>
                     98: #endif
                     99: #ifndef        SOCK_STREAM
                    100: #include <sys/socket.h>
                    101: #endif
                    102: #include <netosi/osi.h>
                    103: #ifdef SUNLINK_5_2
                    104: #include <netosi/osi_profile.h>
                    105: #endif
                    106: #include <netosi/osi_addr.h>
                    107: #include <netosi/osi_error.h>
                    108: #include <netosi/tp_event.h>
                    109: 
                    110: 
                    111: #define        MSG_OOB         0x1     /* process out-of-band data */
                    112: 
                    113: 
                    114: struct tp4pkt {
                    115:     union {
                    116:        TP_MSG            tp_msg;
                    117:        TP_MSG_CONNECT    tp_connect;
                    118:        TP_MSG_DATA       tp_data;
                    119:        TP_MSG_X_DATA     tp_x_data;
                    120:        TP_MSG_DISCONNECT tp_disconnect;
                    121:     } tp_un;
                    122: #define tp4_event      tp_un.tp_msg.tp_event
                    123: #define tp4_called     tp_un.tp_connect.dst_address
                    124: #define tp4_calling    tp_un.tp_connect.src_address
                    125: #define tp4_expedited  tp_un.tp_connect.expedited_selected
                    126: #define tp4_qos                tp_un.tp_connect.tp_qos
                    127: #define tp4_eot                tp_un.tp_data.eot
                    128: #define tp4_reason     tp_un.tp_disconnect.reason
                    129: };
                    130: 
                    131: struct tp4pkt *newtp4pkt ();
                    132: #define        freetp4pkt(tp)  cfree ((char *) (tp))
                    133: 
                    134: int    gen2tp4 (), tp42gen ();
                    135: #endif
                    136: 
                    137: /*  */
                    138: 
                    139: #ifdef BSD_TP4
                    140: #define        close_tp4_socket        close
                    141: #define        select_tp4_socket       selsocket
                    142: #endif
                    143: 
                    144: #ifdef SUN_TP4
                    145: #define        close_tp4_socket        close
                    146: #define        select_tp4_socket       selsocket
                    147: #endif
                    148: 
                    149: int    close_tp4_socket ();
                    150: int    select_tp4_socket ();
                    151: 
                    152: #endif
                    153: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.