Annotation of 43BSDReno/contrib/isode-beta/h/tp4.h, revision 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.