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

1.1       root        1: /* interfaces.h - support for MIB realization of the Interfaces group */
                      2: 
                      3: /* 
                      4:  * $Header: /f/osi/snmp/RCS/interfaces.h,v 7.2 90/03/24 10:54:06 mrose Exp $
                      5:  *
                      6:  * Contributed by NYSERNet Inc.  This work was partially supported by the
                      7:  * U.S. Defense Advanced Research Projects Agency and the Rome Air Development
                      8:  * Center of the U.S. Air Force Systems Command under contract number
                      9:  * F30602-88-C-0016.
                     10:  *
                     11:  *
                     12:  * $Log:       interfaces.h,v $
                     13:  * Revision 7.2  90/03/24  10:54:06  mrose
                     14:  * update
                     15:  * 
                     16:  * Revision 7.1  90/01/11  18:34:08  mrose
                     17:  * real-sync
                     18:  * 
                     19:  * Revision 7.0  89/11/23  22:23:06  mrose
                     20:  * Release 6.0
                     21:  * 
                     22:  */
                     23: 
                     24: /*
                     25:  *                               NOTICE
                     26:  *
                     27:  *    Acquisition, use, and distribution of this module and related
                     28:  *    materials are subject to the restrictions of a license agreement.
                     29:  *    Consult the Preface in the User's Manual for the full terms of
                     30:  *    this agreement.
                     31:  *
                     32:  */
                     33: 
                     34: 
                     35: #include "internet.h"
                     36: #include <net/if.h>
                     37: #include <netinet/if_ether.h>          /* to get struct arpcom */
                     38: #include "clnp.h"
                     39: 
                     40: /*  */
                     41: 
                     42: extern int     ifNumber;
                     43: 
                     44: struct interface {
                     45:     int            ifn_index;                  /* 1..ifNumber */
                     46:     int            ifn_indexmask;              /* 1 << (index - 1) */
                     47: 
                     48:     int            ifn_ready;                  /* has an address associated with it */
                     49: 
                     50:     struct arpcom ifn_interface;       /* ifnet+physaddr */
                     51:     unsigned long ifn_offset;          /* where in kmem */
                     52: 
                     53:     char    ifn_descr[IFNAMSIZ];       /* e.g., "lo0" */
                     54: 
                     55:     int            ifn_type;                   /* ifType */
                     56:     int            ifn_speed;                  /* ifSpeed */
                     57:     int            ifn_admin;                  /* ifAdminStatus */
                     58: 
                     59:     struct interface *ifn_next;
                     60: };
                     61: 
                     62: extern struct interface *ifs;
                     63: 
                     64: 
                     65: int    set_interface (), sort_interface ();
                     66: 
                     67: /*  */
                     68: 
                     69: union sockaddr_un {            /* 'cause sizeof (struct sockaddr_iso) == 32 */
                     70:     struct sockaddr        sa;
                     71: 
                     72:     struct sockaddr_in     un_in;
                     73: #ifdef BSD44
                     74:     struct sockaddr_iso            un_iso;
                     75: #endif
                     76: };
                     77: 
                     78: 
                     79: struct address {
                     80: #define        ADR_SIZE        (20 + 1 + 1)    /* object instance */
                     81:     unsigned int    adr_instance[ADR_SIZE];
                     82:     int            adr_insize;
                     83: 
                     84:     union sockaddr_un adr_address;     /* address */
                     85:     union sockaddr_un adr_broadaddr;   /*   broadcast, only if AF_INET */
                     86:     union sockaddr_un adr_netmask;     /*   network mask */
                     87: 
                     88:     int            adr_indexmask;              /* mask of interfaces with address */
                     89: 
                     90:     struct address *adr_next;
                     91: };
                     92: 
                     93: extern struct address *afs_inet;
                     94: #ifdef BSD44
                     95: extern struct address *afs_iso;
                     96: #endif
                     97: 
                     98: 
                     99: struct address *find_address (), *get_addrent ();
                    100: 
                    101: 
                    102: #if    defined(BSD44) || defined(BSD43_Tahoe) || defined(RT) || defined(MIPS)
                    103: #define        NEW_AT
                    104: #else
                    105: #undef NEW_AT
                    106: #endif

unix.superglobalmegacorp.com

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