Annotation of 42BSD/sys/vaxif/if_hy.h, revision 1.1.1.1

1.1       root        1: /*     if_hy.h 6.1     83/07/29        */
                      2: 
                      3: /*
                      4:  * Network Systems Corporation Hyperchannel
                      5:  *     routing database
                      6:  */
                      7: 
                      8: #define HYRSIZE  37    /* max number of adapters in routing tables */
                      9: 
                     10: struct hyroute {
                     11:        struct  timeval hyr_lasttime;           /* last update time */
                     12:        struct hy_hash {
                     13:                u_short hyr_flags;      /* status flags - see below */
                     14:                u_short hyr_key;                /* desired address */
                     15:                union {
                     16:                        /*
                     17:                         * direct entry (can get there directly)
                     18:                         */
                     19:                        struct {
                     20:                                u_short hyru_dst;               /* adapter number & port */
                     21:                                u_short hyru_ctl;               /* trunks to try */
                     22:                                u_short hyru_access;    /* access code (mostly unused) */
                     23:                        } hyr_d;
                     24: #define        hyr_dst         hyr_u.hyr_d.hyru_dst
                     25: #define        hyr_ctl         hyr_u.hyr_d.hyru_ctl
                     26: #define        hyr_access      hyr_u.hyr_d.hyru_access
                     27:                        /*
                     28:                         * indirect entry (one or more hops required)
                     29:                         */
                     30:                        struct {
                     31:                                u_char hyru_pgate;      /* 1st gateway slot */
                     32:                                u_char hyru_egate;      /* # gateways */
                     33:                                u_char hyru_nextgate;   /* gateway to use next */
                     34:                        } hyr_i;
                     35: #define        hyr_pgate       hyr_u.hyr_i.hyru_pgate
                     36: #define        hyr_egate       hyr_u.hyr_i.hyru_egate
                     37: #define        hyr_nextgate    hyr_u.hyr_i.hyru_nextgate
                     38:                } hyr_u;
                     39:        } hyr_hash[HYRSIZE];
                     40:        u_char hyr_gateway[256];
                     41: };
                     42: 
                     43: #ifdef KERNEL
                     44: struct hyroute hy_route[NHY];
                     45: #endif
                     46: 
                     47: #define HYR_INUSE      0x01    /* entry in use */
                     48: #define HYR_DIR                0x02    /* direct entry */
                     49: #define HYR_GATE       0x04    /* gateway entry */
                     50: 
                     51: #define HYRHASH(x) (((x) ^ ((x) >> 16)) % HYRSIZE)
                     52: 
                     53: #define        HYSETROUTE      _IOW(H, 0x80, sizeof (struct hyroute))
                     54: #define        HYGETROUTE      _IOR(H, 0x81, sizeof (struct hyroute))

unix.superglobalmegacorp.com

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