GNU Linux-libre 4.9.337-gnu1
[releases.git] / include / uapi / linux / snmp.h
1 /*
2  * Definitions for MIBs
3  *
4  * Author: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
5  */
6
7 #ifndef _LINUX_SNMP_H
8 #define _LINUX_SNMP_H
9
10 /* ipstats mib definitions */
11 /*
12  * RFC 1213:  MIB-II
13  * RFC 2011 (updates 1213):  SNMPv2-MIB-IP
14  * RFC 2863:  Interfaces Group MIB
15  * RFC 2465:  IPv6 MIB: General Group
16  * draft-ietf-ipv6-rfc2011-update-10.txt: MIB for IP: IP Statistics Tables
17  */
18 enum
19 {
20         IPSTATS_MIB_NUM = 0,
21 /* frequently written fields in fast path, kept in same cache line */
22         IPSTATS_MIB_INPKTS,                     /* InReceives */
23         IPSTATS_MIB_INOCTETS,                   /* InOctets */
24         IPSTATS_MIB_INDELIVERS,                 /* InDelivers */
25         IPSTATS_MIB_OUTFORWDATAGRAMS,           /* OutForwDatagrams */
26         IPSTATS_MIB_OUTPKTS,                    /* OutRequests */
27         IPSTATS_MIB_OUTOCTETS,                  /* OutOctets */
28 /* other fields */
29         IPSTATS_MIB_INHDRERRORS,                /* InHdrErrors */
30         IPSTATS_MIB_INTOOBIGERRORS,             /* InTooBigErrors */
31         IPSTATS_MIB_INNOROUTES,                 /* InNoRoutes */
32         IPSTATS_MIB_INADDRERRORS,               /* InAddrErrors */
33         IPSTATS_MIB_INUNKNOWNPROTOS,            /* InUnknownProtos */
34         IPSTATS_MIB_INTRUNCATEDPKTS,            /* InTruncatedPkts */
35         IPSTATS_MIB_INDISCARDS,                 /* InDiscards */
36         IPSTATS_MIB_OUTDISCARDS,                /* OutDiscards */
37         IPSTATS_MIB_OUTNOROUTES,                /* OutNoRoutes */
38         IPSTATS_MIB_REASMTIMEOUT,               /* ReasmTimeout */
39         IPSTATS_MIB_REASMREQDS,                 /* ReasmReqds */
40         IPSTATS_MIB_REASMOKS,                   /* ReasmOKs */
41         IPSTATS_MIB_REASMFAILS,                 /* ReasmFails */
42         IPSTATS_MIB_FRAGOKS,                    /* FragOKs */
43         IPSTATS_MIB_FRAGFAILS,                  /* FragFails */
44         IPSTATS_MIB_FRAGCREATES,                /* FragCreates */
45         IPSTATS_MIB_INMCASTPKTS,                /* InMcastPkts */
46         IPSTATS_MIB_OUTMCASTPKTS,               /* OutMcastPkts */
47         IPSTATS_MIB_INBCASTPKTS,                /* InBcastPkts */
48         IPSTATS_MIB_OUTBCASTPKTS,               /* OutBcastPkts */
49         IPSTATS_MIB_INMCASTOCTETS,              /* InMcastOctets */
50         IPSTATS_MIB_OUTMCASTOCTETS,             /* OutMcastOctets */
51         IPSTATS_MIB_INBCASTOCTETS,              /* InBcastOctets */
52         IPSTATS_MIB_OUTBCASTOCTETS,             /* OutBcastOctets */
53         IPSTATS_MIB_CSUMERRORS,                 /* InCsumErrors */
54         IPSTATS_MIB_NOECTPKTS,                  /* InNoECTPkts */
55         IPSTATS_MIB_ECT1PKTS,                   /* InECT1Pkts */
56         IPSTATS_MIB_ECT0PKTS,                   /* InECT0Pkts */
57         IPSTATS_MIB_CEPKTS,                     /* InCEPkts */
58         IPSTATS_MIB_REASM_OVERLAPS,             /* ReasmOverlaps */
59         __IPSTATS_MIB_MAX
60 };
61
62 /* icmp mib definitions */
63 /*
64  * RFC 1213:  MIB-II ICMP Group
65  * RFC 2011 (updates 1213):  SNMPv2 MIB for IP: ICMP group
66  */
67 enum
68 {
69         ICMP_MIB_NUM = 0,
70         ICMP_MIB_INMSGS,                        /* InMsgs */
71         ICMP_MIB_INERRORS,                      /* InErrors */
72         ICMP_MIB_INDESTUNREACHS,                /* InDestUnreachs */
73         ICMP_MIB_INTIMEEXCDS,                   /* InTimeExcds */
74         ICMP_MIB_INPARMPROBS,                   /* InParmProbs */
75         ICMP_MIB_INSRCQUENCHS,                  /* InSrcQuenchs */
76         ICMP_MIB_INREDIRECTS,                   /* InRedirects */
77         ICMP_MIB_INECHOS,                       /* InEchos */
78         ICMP_MIB_INECHOREPS,                    /* InEchoReps */
79         ICMP_MIB_INTIMESTAMPS,                  /* InTimestamps */
80         ICMP_MIB_INTIMESTAMPREPS,               /* InTimestampReps */
81         ICMP_MIB_INADDRMASKS,                   /* InAddrMasks */
82         ICMP_MIB_INADDRMASKREPS,                /* InAddrMaskReps */
83         ICMP_MIB_OUTMSGS,                       /* OutMsgs */
84         ICMP_MIB_OUTERRORS,                     /* OutErrors */
85         ICMP_MIB_OUTDESTUNREACHS,               /* OutDestUnreachs */
86         ICMP_MIB_OUTTIMEEXCDS,                  /* OutTimeExcds */
87         ICMP_MIB_OUTPARMPROBS,                  /* OutParmProbs */
88         ICMP_MIB_OUTSRCQUENCHS,                 /* OutSrcQuenchs */
89         ICMP_MIB_OUTREDIRECTS,                  /* OutRedirects */
90         ICMP_MIB_OUTECHOS,                      /* OutEchos */
91         ICMP_MIB_OUTECHOREPS,                   /* OutEchoReps */
92         ICMP_MIB_OUTTIMESTAMPS,                 /* OutTimestamps */
93         ICMP_MIB_OUTTIMESTAMPREPS,              /* OutTimestampReps */
94         ICMP_MIB_OUTADDRMASKS,                  /* OutAddrMasks */
95         ICMP_MIB_OUTADDRMASKREPS,               /* OutAddrMaskReps */
96         ICMP_MIB_CSUMERRORS,                    /* InCsumErrors */
97         __ICMP_MIB_MAX
98 };
99
100 #define __ICMPMSG_MIB_MAX 512   /* Out+In for all 8-bit ICMP types */
101
102 /* icmp6 mib definitions */
103 /*
104  * RFC 2466:  ICMPv6-MIB
105  */
106 enum
107 {
108         ICMP6_MIB_NUM = 0,
109         ICMP6_MIB_INMSGS,                       /* InMsgs */
110         ICMP6_MIB_INERRORS,                     /* InErrors */
111         ICMP6_MIB_OUTMSGS,                      /* OutMsgs */
112         ICMP6_MIB_OUTERRORS,                    /* OutErrors */
113         ICMP6_MIB_CSUMERRORS,                   /* InCsumErrors */
114         __ICMP6_MIB_MAX
115 };
116
117 #define __ICMP6MSG_MIB_MAX 512 /* Out+In for all 8-bit ICMPv6 types */
118
119 /* tcp mib definitions */
120 /*
121  * RFC 1213:  MIB-II TCP group
122  * RFC 2012 (updates 1213):  SNMPv2-MIB-TCP
123  */
124 enum
125 {
126         TCP_MIB_NUM = 0,
127         TCP_MIB_RTOALGORITHM,                   /* RtoAlgorithm */
128         TCP_MIB_RTOMIN,                         /* RtoMin */
129         TCP_MIB_RTOMAX,                         /* RtoMax */
130         TCP_MIB_MAXCONN,                        /* MaxConn */
131         TCP_MIB_ACTIVEOPENS,                    /* ActiveOpens */
132         TCP_MIB_PASSIVEOPENS,                   /* PassiveOpens */
133         TCP_MIB_ATTEMPTFAILS,                   /* AttemptFails */
134         TCP_MIB_ESTABRESETS,                    /* EstabResets */
135         TCP_MIB_CURRESTAB,                      /* CurrEstab */
136         TCP_MIB_INSEGS,                         /* InSegs */
137         TCP_MIB_OUTSEGS,                        /* OutSegs */
138         TCP_MIB_RETRANSSEGS,                    /* RetransSegs */
139         TCP_MIB_INERRS,                         /* InErrs */
140         TCP_MIB_OUTRSTS,                        /* OutRsts */
141         TCP_MIB_CSUMERRORS,                     /* InCsumErrors */
142         __TCP_MIB_MAX
143 };
144
145 /* udp mib definitions */
146 /*
147  * RFC 1213:  MIB-II UDP group
148  * RFC 2013 (updates 1213):  SNMPv2-MIB-UDP
149  */
150 enum
151 {
152         UDP_MIB_NUM = 0,
153         UDP_MIB_INDATAGRAMS,                    /* InDatagrams */
154         UDP_MIB_NOPORTS,                        /* NoPorts */
155         UDP_MIB_INERRORS,                       /* InErrors */
156         UDP_MIB_OUTDATAGRAMS,                   /* OutDatagrams */
157         UDP_MIB_RCVBUFERRORS,                   /* RcvbufErrors */
158         UDP_MIB_SNDBUFERRORS,                   /* SndbufErrors */
159         UDP_MIB_CSUMERRORS,                     /* InCsumErrors */
160         UDP_MIB_IGNOREDMULTI,                   /* IgnoredMulti */
161         __UDP_MIB_MAX
162 };
163
164 /* linux mib definitions */
165 enum
166 {
167         LINUX_MIB_NUM = 0,
168         LINUX_MIB_SYNCOOKIESSENT,               /* SyncookiesSent */
169         LINUX_MIB_SYNCOOKIESRECV,               /* SyncookiesRecv */
170         LINUX_MIB_SYNCOOKIESFAILED,             /* SyncookiesFailed */
171         LINUX_MIB_EMBRYONICRSTS,                /* EmbryonicRsts */
172         LINUX_MIB_PRUNECALLED,                  /* PruneCalled */
173         LINUX_MIB_RCVPRUNED,                    /* RcvPruned */
174         LINUX_MIB_OFOPRUNED,                    /* OfoPruned */
175         LINUX_MIB_OUTOFWINDOWICMPS,             /* OutOfWindowIcmps */
176         LINUX_MIB_LOCKDROPPEDICMPS,             /* LockDroppedIcmps */
177         LINUX_MIB_ARPFILTER,                    /* ArpFilter */
178         LINUX_MIB_TIMEWAITED,                   /* TimeWaited */
179         LINUX_MIB_TIMEWAITRECYCLED,             /* TimeWaitRecycled */
180         LINUX_MIB_TIMEWAITKILLED,               /* TimeWaitKilled */
181         LINUX_MIB_PAWSPASSIVEREJECTED,          /* PAWSPassiveRejected */
182         LINUX_MIB_PAWSACTIVEREJECTED,           /* PAWSActiveRejected */
183         LINUX_MIB_PAWSESTABREJECTED,            /* PAWSEstabRejected */
184         LINUX_MIB_DELAYEDACKS,                  /* DelayedACKs */
185         LINUX_MIB_DELAYEDACKLOCKED,             /* DelayedACKLocked */
186         LINUX_MIB_DELAYEDACKLOST,               /* DelayedACKLost */
187         LINUX_MIB_LISTENOVERFLOWS,              /* ListenOverflows */
188         LINUX_MIB_LISTENDROPS,                  /* ListenDrops */
189         LINUX_MIB_TCPPREQUEUED,                 /* TCPPrequeued */
190         LINUX_MIB_TCPDIRECTCOPYFROMBACKLOG,     /* TCPDirectCopyFromBacklog */
191         LINUX_MIB_TCPDIRECTCOPYFROMPREQUEUE,    /* TCPDirectCopyFromPrequeue */
192         LINUX_MIB_TCPPREQUEUEDROPPED,           /* TCPPrequeueDropped */
193         LINUX_MIB_TCPHPHITS,                    /* TCPHPHits */
194         LINUX_MIB_TCPHPHITSTOUSER,              /* TCPHPHitsToUser */
195         LINUX_MIB_TCPPUREACKS,                  /* TCPPureAcks */
196         LINUX_MIB_TCPHPACKS,                    /* TCPHPAcks */
197         LINUX_MIB_TCPRENORECOVERY,              /* TCPRenoRecovery */
198         LINUX_MIB_TCPSACKRECOVERY,              /* TCPSackRecovery */
199         LINUX_MIB_TCPSACKRENEGING,              /* TCPSACKReneging */
200         LINUX_MIB_TCPFACKREORDER,               /* TCPFACKReorder */
201         LINUX_MIB_TCPSACKREORDER,               /* TCPSACKReorder */
202         LINUX_MIB_TCPRENOREORDER,               /* TCPRenoReorder */
203         LINUX_MIB_TCPTSREORDER,                 /* TCPTSReorder */
204         LINUX_MIB_TCPFULLUNDO,                  /* TCPFullUndo */
205         LINUX_MIB_TCPPARTIALUNDO,               /* TCPPartialUndo */
206         LINUX_MIB_TCPDSACKUNDO,                 /* TCPDSACKUndo */
207         LINUX_MIB_TCPLOSSUNDO,                  /* TCPLossUndo */
208         LINUX_MIB_TCPLOSTRETRANSMIT,            /* TCPLostRetransmit */
209         LINUX_MIB_TCPRENOFAILURES,              /* TCPRenoFailures */
210         LINUX_MIB_TCPSACKFAILURES,              /* TCPSackFailures */
211         LINUX_MIB_TCPLOSSFAILURES,              /* TCPLossFailures */
212         LINUX_MIB_TCPFASTRETRANS,               /* TCPFastRetrans */
213         LINUX_MIB_TCPFORWARDRETRANS,            /* TCPForwardRetrans */
214         LINUX_MIB_TCPSLOWSTARTRETRANS,          /* TCPSlowStartRetrans */
215         LINUX_MIB_TCPTIMEOUTS,                  /* TCPTimeouts */
216         LINUX_MIB_TCPLOSSPROBES,                /* TCPLossProbes */
217         LINUX_MIB_TCPLOSSPROBERECOVERY,         /* TCPLossProbeRecovery */
218         LINUX_MIB_TCPRENORECOVERYFAIL,          /* TCPRenoRecoveryFail */
219         LINUX_MIB_TCPSACKRECOVERYFAIL,          /* TCPSackRecoveryFail */
220         LINUX_MIB_TCPSCHEDULERFAILED,           /* TCPSchedulerFailed */
221         LINUX_MIB_TCPRCVCOLLAPSED,              /* TCPRcvCollapsed */
222         LINUX_MIB_TCPDSACKOLDSENT,              /* TCPDSACKOldSent */
223         LINUX_MIB_TCPDSACKOFOSENT,              /* TCPDSACKOfoSent */
224         LINUX_MIB_TCPDSACKRECV,                 /* TCPDSACKRecv */
225         LINUX_MIB_TCPDSACKOFORECV,              /* TCPDSACKOfoRecv */
226         LINUX_MIB_TCPABORTONDATA,               /* TCPAbortOnData */
227         LINUX_MIB_TCPABORTONCLOSE,              /* TCPAbortOnClose */
228         LINUX_MIB_TCPABORTONMEMORY,             /* TCPAbortOnMemory */
229         LINUX_MIB_TCPABORTONTIMEOUT,            /* TCPAbortOnTimeout */
230         LINUX_MIB_TCPABORTONLINGER,             /* TCPAbortOnLinger */
231         LINUX_MIB_TCPABORTFAILED,               /* TCPAbortFailed */
232         LINUX_MIB_TCPMEMORYPRESSURES,           /* TCPMemoryPressures */
233         LINUX_MIB_TCPSACKDISCARD,               /* TCPSACKDiscard */
234         LINUX_MIB_TCPDSACKIGNOREDOLD,           /* TCPSACKIgnoredOld */
235         LINUX_MIB_TCPDSACKIGNOREDNOUNDO,        /* TCPSACKIgnoredNoUndo */
236         LINUX_MIB_TCPSPURIOUSRTOS,              /* TCPSpuriousRTOs */
237         LINUX_MIB_TCPMD5NOTFOUND,               /* TCPMD5NotFound */
238         LINUX_MIB_TCPMD5UNEXPECTED,             /* TCPMD5Unexpected */
239         LINUX_MIB_TCPMD5FAILURE,                /* TCPMD5Failure */
240         LINUX_MIB_SACKSHIFTED,
241         LINUX_MIB_SACKMERGED,
242         LINUX_MIB_SACKSHIFTFALLBACK,
243         LINUX_MIB_TCPBACKLOGDROP,
244         LINUX_MIB_TCPMINTTLDROP, /* RFC 5082 */
245         LINUX_MIB_TCPDEFERACCEPTDROP,
246         LINUX_MIB_IPRPFILTER, /* IP Reverse Path Filter (rp_filter) */
247         LINUX_MIB_TCPTIMEWAITOVERFLOW,          /* TCPTimeWaitOverflow */
248         LINUX_MIB_TCPREQQFULLDOCOOKIES,         /* TCPReqQFullDoCookies */
249         LINUX_MIB_TCPREQQFULLDROP,              /* TCPReqQFullDrop */
250         LINUX_MIB_TCPRETRANSFAIL,               /* TCPRetransFail */
251         LINUX_MIB_TCPRCVCOALESCE,               /* TCPRcvCoalesce */
252         LINUX_MIB_TCPOFOQUEUE,                  /* TCPOFOQueue */
253         LINUX_MIB_TCPOFODROP,                   /* TCPOFODrop */
254         LINUX_MIB_TCPOFOMERGE,                  /* TCPOFOMerge */
255         LINUX_MIB_TCPCHALLENGEACK,              /* TCPChallengeACK */
256         LINUX_MIB_TCPSYNCHALLENGE,              /* TCPSYNChallenge */
257         LINUX_MIB_TCPFASTOPENACTIVE,            /* TCPFastOpenActive */
258         LINUX_MIB_TCPFASTOPENACTIVEFAIL,        /* TCPFastOpenActiveFail */
259         LINUX_MIB_TCPFASTOPENPASSIVE,           /* TCPFastOpenPassive*/
260         LINUX_MIB_TCPFASTOPENPASSIVEFAIL,       /* TCPFastOpenPassiveFail */
261         LINUX_MIB_TCPFASTOPENLISTENOVERFLOW,    /* TCPFastOpenListenOverflow */
262         LINUX_MIB_TCPFASTOPENCOOKIEREQD,        /* TCPFastOpenCookieReqd */
263         LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES, /* TCPSpuriousRtxHostQueues */
264         LINUX_MIB_BUSYPOLLRXPACKETS,            /* BusyPollRxPackets */
265         LINUX_MIB_TCPAUTOCORKING,               /* TCPAutoCorking */
266         LINUX_MIB_TCPFROMZEROWINDOWADV,         /* TCPFromZeroWindowAdv */
267         LINUX_MIB_TCPTOZEROWINDOWADV,           /* TCPToZeroWindowAdv */
268         LINUX_MIB_TCPWANTZEROWINDOWADV,         /* TCPWantZeroWindowAdv */
269         LINUX_MIB_TCPSYNRETRANS,                /* TCPSynRetrans */
270         LINUX_MIB_TCPORIGDATASENT,              /* TCPOrigDataSent */
271         LINUX_MIB_TCPHYSTARTTRAINDETECT,        /* TCPHystartTrainDetect */
272         LINUX_MIB_TCPHYSTARTTRAINCWND,          /* TCPHystartTrainCwnd */
273         LINUX_MIB_TCPHYSTARTDELAYDETECT,        /* TCPHystartDelayDetect */
274         LINUX_MIB_TCPHYSTARTDELAYCWND,          /* TCPHystartDelayCwnd */
275         LINUX_MIB_TCPACKSKIPPEDSYNRECV,         /* TCPACKSkippedSynRecv */
276         LINUX_MIB_TCPACKSKIPPEDPAWS,            /* TCPACKSkippedPAWS */
277         LINUX_MIB_TCPACKSKIPPEDSEQ,             /* TCPACKSkippedSeq */
278         LINUX_MIB_TCPACKSKIPPEDFINWAIT2,        /* TCPACKSkippedFinWait2 */
279         LINUX_MIB_TCPACKSKIPPEDTIMEWAIT,        /* TCPACKSkippedTimeWait */
280         LINUX_MIB_TCPACKSKIPPEDCHALLENGE,       /* TCPACKSkippedChallenge */
281         LINUX_MIB_TCPWINPROBE,                  /* TCPWinProbe */
282         LINUX_MIB_TCPKEEPALIVE,                 /* TCPKeepAlive */
283         LINUX_MIB_TCPMTUPFAIL,                  /* TCPMTUPFail */
284         LINUX_MIB_TCPMTUPSUCCESS,               /* TCPMTUPSuccess */
285         LINUX_MIB_TCPWQUEUETOOBIG,              /* TCPWqueueTooBig */
286         __LINUX_MIB_MAX
287 };
288
289 /* linux Xfrm mib definitions */
290 enum
291 {
292         LINUX_MIB_XFRMNUM = 0,
293         LINUX_MIB_XFRMINERROR,                  /* XfrmInError */
294         LINUX_MIB_XFRMINBUFFERERROR,            /* XfrmInBufferError */
295         LINUX_MIB_XFRMINHDRERROR,               /* XfrmInHdrError */
296         LINUX_MIB_XFRMINNOSTATES,               /* XfrmInNoStates */
297         LINUX_MIB_XFRMINSTATEPROTOERROR,        /* XfrmInStateProtoError */
298         LINUX_MIB_XFRMINSTATEMODEERROR,         /* XfrmInStateModeError */
299         LINUX_MIB_XFRMINSTATESEQERROR,          /* XfrmInStateSeqError */
300         LINUX_MIB_XFRMINSTATEEXPIRED,           /* XfrmInStateExpired */
301         LINUX_MIB_XFRMINSTATEMISMATCH,          /* XfrmInStateMismatch */
302         LINUX_MIB_XFRMINSTATEINVALID,           /* XfrmInStateInvalid */
303         LINUX_MIB_XFRMINTMPLMISMATCH,           /* XfrmInTmplMismatch */
304         LINUX_MIB_XFRMINNOPOLS,                 /* XfrmInNoPols */
305         LINUX_MIB_XFRMINPOLBLOCK,               /* XfrmInPolBlock */
306         LINUX_MIB_XFRMINPOLERROR,               /* XfrmInPolError */
307         LINUX_MIB_XFRMOUTERROR,                 /* XfrmOutError */
308         LINUX_MIB_XFRMOUTBUNDLEGENERROR,        /* XfrmOutBundleGenError */
309         LINUX_MIB_XFRMOUTBUNDLECHECKERROR,      /* XfrmOutBundleCheckError */
310         LINUX_MIB_XFRMOUTNOSTATES,              /* XfrmOutNoStates */
311         LINUX_MIB_XFRMOUTSTATEPROTOERROR,       /* XfrmOutStateProtoError */
312         LINUX_MIB_XFRMOUTSTATEMODEERROR,        /* XfrmOutStateModeError */
313         LINUX_MIB_XFRMOUTSTATESEQERROR,         /* XfrmOutStateSeqError */
314         LINUX_MIB_XFRMOUTSTATEEXPIRED,          /* XfrmOutStateExpired */
315         LINUX_MIB_XFRMOUTPOLBLOCK,              /* XfrmOutPolBlock */
316         LINUX_MIB_XFRMOUTPOLDEAD,               /* XfrmOutPolDead */
317         LINUX_MIB_XFRMOUTPOLERROR,              /* XfrmOutPolError */
318         LINUX_MIB_XFRMFWDHDRERROR,              /* XfrmFwdHdrError*/
319         LINUX_MIB_XFRMOUTSTATEINVALID,          /* XfrmOutStateInvalid */
320         LINUX_MIB_XFRMACQUIREERROR,             /* XfrmAcquireError */
321         __LINUX_MIB_XFRMMAX
322 };
323
324 #endif  /* _LINUX_SNMP_H */