1 /*
2  *  Template MIB group interface - at.h
3  *
4  */
5 
6 #ifndef _MIBGROUP_AT_H
7 #define _MIBGROUP_AT_H
8 
9 #if HAVE_NET_ROUTE_H
10 #include <net/route.h>
11 #endif
12 
13      extern void     init_at(void);
14      extern FindVarMethod var_atEntry;
15 
16 
17 #define ATIFINDEX	0
18 #define ATPHYSADDRESS	1
19 #define ATNETADDRESS	2
20 
21 #define IPMEDIAIFINDEX          0
22 #define IPMEDIAPHYSADDRESS      1
23 #define IPMEDIANETADDRESS       2
24 #define IPMEDIATYPE             3
25 
26 /* InfiniBand uses HW addr > 6 */
27 #define MAX_MAC_ADDR_LEN 32
28 
29 #if defined(linux) || defined(irix6)
30 /*
31  * arp struct to pass flags, hw-addr and ip-addr in bsd manner:
32  */
33      struct arptab {
34          int             at_flags;
35          char            at_enaddr[MAX_MAC_ADDR_LEN];
36          int             at_enaddr_len;
37          struct in_addr  at_iaddr;
38          int             if_index;
39      };
40 #endif
41 
42 #if !defined(WIN32) && !defined(cygwin) && !defined(solaris2)
43 void     ARP_Scan_Init(void);
44 int      ARP_Scan_Next(in_addr_t *, char *, int *, u_long *, u_short *);
45 #endif
46 
47 #if defined(WIN32) || defined(cygwin)
48 config_require(mibII/data_access/at_iphlpapi)
49 #elif defined(solaris2)
50 config_require(kernel_sunos5)
51 config_require(mibII/data_access/at_solaris)
52 #elif defined(linux)
53 config_require(mibII/data_access/at_linux)
54 config_require(mibII/data_access/at_unix)
55 #elif defined(HAVE_SYS_SYSCTL_H) && (defined(RTF_LLINFO) || defined(RTF_LLDATA))
56 config_require(mibII/data_access/at_sysctl)
57 config_require(mibII/data_access/at_unix)
58 #elif defined(HAVE_NLIST_H)
59 config_require(mibII/data_access/at_nlist)
60 config_require(mibII/data_access/at_unix)
61 #endif
62 
63 #endif                          /* _MIBGROUP_AT_H */
64