and added files
[bcm963xx.git] / userapps / opensource / net-snmp / agent / mibgroup / mibII / kernel_linux.h
1 /*
2  *  MIB statistics gathering routines
3  *      for Linux architecture
4  */
5
6 #ifndef _MIBGROUP_KERNEL_LINUX_H
7 #define _MIBGROUP_KERNEL_LINUX_H
8
9 struct ip_mib {
10     unsigned long   ipForwarding;
11     unsigned long   ipDefaultTTL;
12     unsigned long   ipInReceives;
13     unsigned long   ipInHdrErrors;
14     unsigned long   ipInAddrErrors;
15     unsigned long   ipForwDatagrams;
16     unsigned long   ipInUnknownProtos;
17     unsigned long   ipInDiscards;
18     unsigned long   ipInDelivers;
19     unsigned long   ipOutRequests;
20     unsigned long   ipOutDiscards;
21     unsigned long   ipOutNoRoutes;
22     unsigned long   ipReasmTimeout;
23     unsigned long   ipReasmReqds;
24     unsigned long   ipReasmOKs;
25     unsigned long   ipReasmFails;
26     unsigned long   ipFragOKs;
27     unsigned long   ipFragFails;
28     unsigned long   ipFragCreates;
29     unsigned long   ipRoutingDiscards;
30 };
31
32 struct icmp_mib {
33     unsigned long   icmpInMsgs;
34     unsigned long   icmpInErrors;
35     unsigned long   icmpInDestUnreachs;
36     unsigned long   icmpInTimeExcds;
37     unsigned long   icmpInParmProbs;
38     unsigned long   icmpInSrcQuenchs;
39     unsigned long   icmpInRedirects;
40     unsigned long   icmpInEchos;
41     unsigned long   icmpInEchoReps;
42     unsigned long   icmpInTimestamps;
43     unsigned long   icmpInTimestampReps;
44     unsigned long   icmpInAddrMasks;
45     unsigned long   icmpInAddrMaskReps;
46     unsigned long   icmpOutMsgs;
47     unsigned long   icmpOutErrors;
48     unsigned long   icmpOutDestUnreachs;
49     unsigned long   icmpOutTimeExcds;
50     unsigned long   icmpOutParmProbs;
51     unsigned long   icmpOutSrcQuenchs;
52     unsigned long   icmpOutRedirects;
53     unsigned long   icmpOutEchos;
54     unsigned long   icmpOutEchoReps;
55     unsigned long   icmpOutTimestamps;
56     unsigned long   icmpOutTimestampReps;
57     unsigned long   icmpOutAddrMasks;
58     unsigned long   icmpOutAddrMaskReps;
59 };
60
61 struct udp_mib {
62     unsigned long   udpInDatagrams;
63     unsigned long   udpNoPorts;
64     unsigned long   udpInErrors;
65     unsigned long   udpOutDatagrams;
66 };
67
68 struct tcp_mib {
69     unsigned long   tcpRtoAlgorithm;
70     unsigned long   tcpRtoMin;
71     unsigned long   tcpRtoMax;
72     unsigned long   tcpMaxConn;
73     unsigned long   tcpActiveOpens;
74     unsigned long   tcpPassiveOpens;
75     unsigned long   tcpAttemptFails;
76     unsigned long   tcpEstabResets;
77     unsigned long   tcpCurrEstab;
78     unsigned long   tcpInSegs;
79     unsigned long   tcpOutSegs;
80     unsigned long   tcpRetransSegs;
81     unsigned long   tcpInErrs;
82     unsigned long   tcpOutRsts;
83     short           tcpInErrsValid;
84     short           tcpOutRstsValid;
85 };
86
87
88 int             linux_read_ip_stat(struct ip_mib *);
89 int             linux_read_icmp_stat(struct icmp_mib *);
90 int             linux_read_udp_stat(struct udp_mib *);
91 int             linux_read_tcp_stat(struct tcp_mib *);
92 extern marker_t linux_mibII_stats_cache_marker;
93
94 #endif                          /* _MIBGROUP_KERNEL_LINUX_H */