|
|
1.1 root 1: /*
2: *
3: * SNMP MIB entries for the IP subsystem.
4: *
5: * Alan Cox <[email protected]>
6: *
7: * We don't chose to implement SNMP in the kernel (this would
8: * be silly as SNMP is a pain in the backside in places). We do
9: * however need to collect the MIB statistics and export them
10: * out of /proc (eventually)
11: *
12: * This program is free software; you can redistribute it and/or
13: * modify it under the terms of the GNU General Public License
14: * as published by the Free Software Foundation; either version
15: * 2 of the License, or (at your option) any later version.
16: *
17: */
18:
19: #ifndef _SNMP_H
20: #define _SNMP_H
21:
22: /*
23: * We use all unsigned longs. Linux will soon be so reliable that even these
24: * will rapidly get too small 8-). Seriously consider the IpInReceives count
25: * on the 20Gb/s + networks people expect in a few years time!
26: */
27:
28: struct ip_mib
29: {
30: unsigned long IpForwarding;
31: unsigned long IpDefaultTTL;
32: unsigned long IpInReceives;
33: unsigned long IpInHdrErrors;
34: unsigned long IpInAddrErrors;
35: unsigned long IpForwDatagrams;
36: unsigned long IpInUnknownProtos;
37: unsigned long IpInDiscards;
38: unsigned long IpInDelivers;
39: unsigned long IpOutRequests;
40: unsigned long IpOutDiscards;
41: unsigned long IpOutNoRoutes;
42: unsigned long IpReasmTimeout;
43: unsigned long IpReasmReqds;
44: unsigned long IpReasmOKs;
45: unsigned long IpReasmFails;
46: unsigned long IpFragOKs;
47: unsigned long IpFragFails;
48: unsigned long IpFragCreates;
49: };
50:
51:
52: struct icmp_mib
53: {
54: unsigned long IcmpInMsgs;
55: unsigned long IcmpInErrors;
56: unsigned long IcmpInDestUnreachs;
57: unsigned long IcmpInTimeExcds;
58: unsigned long IcmpInParmProbs;
59: unsigned long IcmpInSrcQuenchs;
60: unsigned long IcmpInRedirects;
61: unsigned long IcmpInEchos;
62: unsigned long IcmpInEchoReps;
63: unsigned long IcmpInTimestamps;
64: unsigned long IcmpInTimestampReps;
65: unsigned long IcmpInAddrMasks;
66: unsigned long IcmpInAddrMaskReps;
67: unsigned long IcmpOutMsgs;
68: unsigned long IcmpOutErrors;
69: unsigned long IcmpOutDestUnreachs;
70: unsigned long IcmpOutTimeExcds;
71: unsigned long IcmpOutParmProbs;
72: unsigned long IcmpOutSrcQuenchs;
73: unsigned long IcmpOutRedirects;
74: unsigned long IcmpOutEchos;
75: unsigned long IcmpOutEchoReps;
76: unsigned long IcmpOutTimestamps;
77: unsigned long IcmpOutTimestampReps;
78: unsigned long IcmpOutAddrMasks;
79: unsigned long IcmpOutAddrMaskReps;
80: };
81:
82: struct tcp_mib
83: {
84: unsigned long TcpRtoAlgorithm;
85: unsigned long TcpRtoMin;
86: unsigned long TcpRtoMax;
87: unsigned long TcpMaxConn;
88: unsigned long TcpActiveOpens;
89: unsigned long TcpPassiveOpens;
90: unsigned long TcpAttemptFails;
91: unsigned long TcpEstabResets;
92: unsigned long TcpCurrEstab;
93: unsigned long TcpInSegs;
94: unsigned long TcpOutSegs;
95: unsigned long TcpRetransSegs;
96: };
97:
98: struct udp_mib
99: {
100: unsigned long UdpInDatagrams;
101: unsigned long UdpNoPorts;
102: unsigned long UdpInErrors;
103: unsigned long UdpOutDatagrams;
104: };
105:
106:
107: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.