blob: 33a70ece462f00ee2be8c78c552b4471ddce9fcb [file] [log] [blame]
Christopher Ferris25981132017-11-14 16:53:49 -08001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
Ben Cheng224b54f2013-10-15 18:26:18 -07002/*
3 * Definitions for MIBs
4 *
5 * Author: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
6 */
7
8#ifndef _LINUX_SNMP_H
9#define _LINUX_SNMP_H
10
11/* ipstats mib definitions */
12/*
13 * RFC 1213: MIB-II
14 * RFC 2011 (updates 1213): SNMPv2-MIB-IP
15 * RFC 2863: Interfaces Group MIB
16 * RFC 2465: IPv6 MIB: General Group
17 * draft-ietf-ipv6-rfc2011-update-10.txt: MIB for IP: IP Statistics Tables
18 */
19enum
20{
21 IPSTATS_MIB_NUM = 0,
22/* frequently written fields in fast path, kept in same cache line */
23 IPSTATS_MIB_INPKTS, /* InReceives */
24 IPSTATS_MIB_INOCTETS, /* InOctets */
25 IPSTATS_MIB_INDELIVERS, /* InDelivers */
26 IPSTATS_MIB_OUTFORWDATAGRAMS, /* OutForwDatagrams */
27 IPSTATS_MIB_OUTPKTS, /* OutRequests */
28 IPSTATS_MIB_OUTOCTETS, /* OutOctets */
29/* other fields */
30 IPSTATS_MIB_INHDRERRORS, /* InHdrErrors */
31 IPSTATS_MIB_INTOOBIGERRORS, /* InTooBigErrors */
32 IPSTATS_MIB_INNOROUTES, /* InNoRoutes */
33 IPSTATS_MIB_INADDRERRORS, /* InAddrErrors */
34 IPSTATS_MIB_INUNKNOWNPROTOS, /* InUnknownProtos */
35 IPSTATS_MIB_INTRUNCATEDPKTS, /* InTruncatedPkts */
36 IPSTATS_MIB_INDISCARDS, /* InDiscards */
37 IPSTATS_MIB_OUTDISCARDS, /* OutDiscards */
38 IPSTATS_MIB_OUTNOROUTES, /* OutNoRoutes */
39 IPSTATS_MIB_REASMTIMEOUT, /* ReasmTimeout */
40 IPSTATS_MIB_REASMREQDS, /* ReasmReqds */
41 IPSTATS_MIB_REASMOKS, /* ReasmOKs */
42 IPSTATS_MIB_REASMFAILS, /* ReasmFails */
43 IPSTATS_MIB_FRAGOKS, /* FragOKs */
44 IPSTATS_MIB_FRAGFAILS, /* FragFails */
45 IPSTATS_MIB_FRAGCREATES, /* FragCreates */
46 IPSTATS_MIB_INMCASTPKTS, /* InMcastPkts */
47 IPSTATS_MIB_OUTMCASTPKTS, /* OutMcastPkts */
48 IPSTATS_MIB_INBCASTPKTS, /* InBcastPkts */
49 IPSTATS_MIB_OUTBCASTPKTS, /* OutBcastPkts */
50 IPSTATS_MIB_INMCASTOCTETS, /* InMcastOctets */
51 IPSTATS_MIB_OUTMCASTOCTETS, /* OutMcastOctets */
52 IPSTATS_MIB_INBCASTOCTETS, /* InBcastOctets */
53 IPSTATS_MIB_OUTBCASTOCTETS, /* OutBcastOctets */
54 IPSTATS_MIB_CSUMERRORS, /* InCsumErrors */
Christopher Ferrise0845012014-07-09 14:58:51 -070055 IPSTATS_MIB_NOECTPKTS, /* InNoECTPkts */
56 IPSTATS_MIB_ECT1PKTS, /* InECT1Pkts */
57 IPSTATS_MIB_ECT0PKTS, /* InECT0Pkts */
58 IPSTATS_MIB_CEPKTS, /* InCEPkts */
Ben Cheng224b54f2013-10-15 18:26:18 -070059 __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 */
67enum
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 */
106enum
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 */
124enum
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 */
150enum
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 */
Christopher Ferris12e1f282016-02-04 12:35:07 -0800160 UDP_MIB_IGNOREDMULTI, /* IgnoredMulti */
Ben Cheng224b54f2013-10-15 18:26:18 -0700161 __UDP_MIB_MAX
162};
163
164/* linux mib definitions */
165enum
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 */
Ben Cheng224b54f2013-10-15 18:26:18 -0700181 LINUX_MIB_PAWSACTIVEREJECTED, /* PAWSActiveRejected */
182 LINUX_MIB_PAWSESTABREJECTED, /* PAWSEstabRejected */
183 LINUX_MIB_DELAYEDACKS, /* DelayedACKs */
184 LINUX_MIB_DELAYEDACKLOCKED, /* DelayedACKLocked */
185 LINUX_MIB_DELAYEDACKLOST, /* DelayedACKLost */
186 LINUX_MIB_LISTENOVERFLOWS, /* ListenOverflows */
187 LINUX_MIB_LISTENDROPS, /* ListenDrops */
Ben Cheng224b54f2013-10-15 18:26:18 -0700188 LINUX_MIB_TCPHPHITS, /* TCPHPHits */
Ben Cheng224b54f2013-10-15 18:26:18 -0700189 LINUX_MIB_TCPPUREACKS, /* TCPPureAcks */
190 LINUX_MIB_TCPHPACKS, /* TCPHPAcks */
191 LINUX_MIB_TCPRENORECOVERY, /* TCPRenoRecovery */
192 LINUX_MIB_TCPSACKRECOVERY, /* TCPSackRecovery */
193 LINUX_MIB_TCPSACKRENEGING, /* TCPSACKReneging */
Ben Cheng224b54f2013-10-15 18:26:18 -0700194 LINUX_MIB_TCPSACKREORDER, /* TCPSACKReorder */
195 LINUX_MIB_TCPRENOREORDER, /* TCPRenoReorder */
196 LINUX_MIB_TCPTSREORDER, /* TCPTSReorder */
197 LINUX_MIB_TCPFULLUNDO, /* TCPFullUndo */
198 LINUX_MIB_TCPPARTIALUNDO, /* TCPPartialUndo */
199 LINUX_MIB_TCPDSACKUNDO, /* TCPDSACKUndo */
200 LINUX_MIB_TCPLOSSUNDO, /* TCPLossUndo */
201 LINUX_MIB_TCPLOSTRETRANSMIT, /* TCPLostRetransmit */
202 LINUX_MIB_TCPRENOFAILURES, /* TCPRenoFailures */
203 LINUX_MIB_TCPSACKFAILURES, /* TCPSackFailures */
204 LINUX_MIB_TCPLOSSFAILURES, /* TCPLossFailures */
205 LINUX_MIB_TCPFASTRETRANS, /* TCPFastRetrans */
Ben Cheng224b54f2013-10-15 18:26:18 -0700206 LINUX_MIB_TCPSLOWSTARTRETRANS, /* TCPSlowStartRetrans */
207 LINUX_MIB_TCPTIMEOUTS, /* TCPTimeouts */
208 LINUX_MIB_TCPLOSSPROBES, /* TCPLossProbes */
209 LINUX_MIB_TCPLOSSPROBERECOVERY, /* TCPLossProbeRecovery */
210 LINUX_MIB_TCPRENORECOVERYFAIL, /* TCPRenoRecoveryFail */
211 LINUX_MIB_TCPSACKRECOVERYFAIL, /* TCPSackRecoveryFail */
Ben Cheng224b54f2013-10-15 18:26:18 -0700212 LINUX_MIB_TCPRCVCOLLAPSED, /* TCPRcvCollapsed */
213 LINUX_MIB_TCPDSACKOLDSENT, /* TCPDSACKOldSent */
214 LINUX_MIB_TCPDSACKOFOSENT, /* TCPDSACKOfoSent */
215 LINUX_MIB_TCPDSACKRECV, /* TCPDSACKRecv */
216 LINUX_MIB_TCPDSACKOFORECV, /* TCPDSACKOfoRecv */
217 LINUX_MIB_TCPABORTONDATA, /* TCPAbortOnData */
218 LINUX_MIB_TCPABORTONCLOSE, /* TCPAbortOnClose */
219 LINUX_MIB_TCPABORTONMEMORY, /* TCPAbortOnMemory */
220 LINUX_MIB_TCPABORTONTIMEOUT, /* TCPAbortOnTimeout */
221 LINUX_MIB_TCPABORTONLINGER, /* TCPAbortOnLinger */
222 LINUX_MIB_TCPABORTFAILED, /* TCPAbortFailed */
223 LINUX_MIB_TCPMEMORYPRESSURES, /* TCPMemoryPressures */
Christopher Ferris25981132017-11-14 16:53:49 -0800224 LINUX_MIB_TCPMEMORYPRESSURESCHRONO, /* TCPMemoryPressuresChrono */
Ben Cheng224b54f2013-10-15 18:26:18 -0700225 LINUX_MIB_TCPSACKDISCARD, /* TCPSACKDiscard */
226 LINUX_MIB_TCPDSACKIGNOREDOLD, /* TCPSACKIgnoredOld */
227 LINUX_MIB_TCPDSACKIGNOREDNOUNDO, /* TCPSACKIgnoredNoUndo */
228 LINUX_MIB_TCPSPURIOUSRTOS, /* TCPSpuriousRTOs */
229 LINUX_MIB_TCPMD5NOTFOUND, /* TCPMD5NotFound */
230 LINUX_MIB_TCPMD5UNEXPECTED, /* TCPMD5Unexpected */
Christopher Ferris33185402017-01-13 13:28:52 -0800231 LINUX_MIB_TCPMD5FAILURE, /* TCPMD5Failure */
Ben Cheng224b54f2013-10-15 18:26:18 -0700232 LINUX_MIB_SACKSHIFTED,
233 LINUX_MIB_SACKMERGED,
234 LINUX_MIB_SACKSHIFTFALLBACK,
235 LINUX_MIB_TCPBACKLOGDROP,
Christopher Ferris0543f742017-07-26 13:09:46 -0700236 LINUX_MIB_PFMEMALLOCDROP,
Ben Cheng224b54f2013-10-15 18:26:18 -0700237 LINUX_MIB_TCPMINTTLDROP, /* RFC 5082 */
238 LINUX_MIB_TCPDEFERACCEPTDROP,
239 LINUX_MIB_IPRPFILTER, /* IP Reverse Path Filter (rp_filter) */
240 LINUX_MIB_TCPTIMEWAITOVERFLOW, /* TCPTimeWaitOverflow */
241 LINUX_MIB_TCPREQQFULLDOCOOKIES, /* TCPReqQFullDoCookies */
242 LINUX_MIB_TCPREQQFULLDROP, /* TCPReqQFullDrop */
243 LINUX_MIB_TCPRETRANSFAIL, /* TCPRetransFail */
244 LINUX_MIB_TCPRCVCOALESCE, /* TCPRcvCoalesce */
245 LINUX_MIB_TCPOFOQUEUE, /* TCPOFOQueue */
246 LINUX_MIB_TCPOFODROP, /* TCPOFODrop */
247 LINUX_MIB_TCPOFOMERGE, /* TCPOFOMerge */
248 LINUX_MIB_TCPCHALLENGEACK, /* TCPChallengeACK */
249 LINUX_MIB_TCPSYNCHALLENGE, /* TCPSYNChallenge */
250 LINUX_MIB_TCPFASTOPENACTIVE, /* TCPFastOpenActive */
Christopher Ferris31475242014-09-02 17:43:51 -0700251 LINUX_MIB_TCPFASTOPENACTIVEFAIL, /* TCPFastOpenActiveFail */
Ben Cheng224b54f2013-10-15 18:26:18 -0700252 LINUX_MIB_TCPFASTOPENPASSIVE, /* TCPFastOpenPassive*/
253 LINUX_MIB_TCPFASTOPENPASSIVEFAIL, /* TCPFastOpenPassiveFail */
254 LINUX_MIB_TCPFASTOPENLISTENOVERFLOW, /* TCPFastOpenListenOverflow */
255 LINUX_MIB_TCPFASTOPENCOOKIEREQD, /* TCPFastOpenCookieReqd */
Christopher Ferris0543f742017-07-26 13:09:46 -0700256 LINUX_MIB_TCPFASTOPENBLACKHOLE, /* TCPFastOpenBlackholeDetect */
Ben Cheng224b54f2013-10-15 18:26:18 -0700257 LINUX_MIB_TCPSPURIOUS_RTX_HOSTQUEUES, /* TCPSpuriousRtxHostQueues */
Christopher Ferrise0845012014-07-09 14:58:51 -0700258 LINUX_MIB_BUSYPOLLRXPACKETS, /* BusyPollRxPackets */
259 LINUX_MIB_TCPAUTOCORKING, /* TCPAutoCorking */
Christopher Ferris31475242014-09-02 17:43:51 -0700260 LINUX_MIB_TCPFROMZEROWINDOWADV, /* TCPFromZeroWindowAdv */
261 LINUX_MIB_TCPTOZEROWINDOWADV, /* TCPToZeroWindowAdv */
262 LINUX_MIB_TCPWANTZEROWINDOWADV, /* TCPWantZeroWindowAdv */
263 LINUX_MIB_TCPSYNRETRANS, /* TCPSynRetrans */
264 LINUX_MIB_TCPORIGDATASENT, /* TCPOrigDataSent */
Christopher Ferris12e1f282016-02-04 12:35:07 -0800265 LINUX_MIB_TCPHYSTARTTRAINDETECT, /* TCPHystartTrainDetect */
266 LINUX_MIB_TCPHYSTARTTRAINCWND, /* TCPHystartTrainCwnd */
267 LINUX_MIB_TCPHYSTARTDELAYDETECT, /* TCPHystartDelayDetect */
268 LINUX_MIB_TCPHYSTARTDELAYCWND, /* TCPHystartDelayCwnd */
269 LINUX_MIB_TCPACKSKIPPEDSYNRECV, /* TCPACKSkippedSynRecv */
270 LINUX_MIB_TCPACKSKIPPEDPAWS, /* TCPACKSkippedPAWS */
271 LINUX_MIB_TCPACKSKIPPEDSEQ, /* TCPACKSkippedSeq */
272 LINUX_MIB_TCPACKSKIPPEDFINWAIT2, /* TCPACKSkippedFinWait2 */
273 LINUX_MIB_TCPACKSKIPPEDTIMEWAIT, /* TCPACKSkippedTimeWait */
274 LINUX_MIB_TCPACKSKIPPEDCHALLENGE, /* TCPACKSkippedChallenge */
275 LINUX_MIB_TCPWINPROBE, /* TCPWinProbe */
276 LINUX_MIB_TCPKEEPALIVE, /* TCPKeepAlive */
277 LINUX_MIB_TCPMTUPFAIL, /* TCPMTUPFail */
278 LINUX_MIB_TCPMTUPSUCCESS, /* TCPMTUPSuccess */
Ben Cheng224b54f2013-10-15 18:26:18 -0700279 __LINUX_MIB_MAX
280};
281
282/* linux Xfrm mib definitions */
283enum
284{
285 LINUX_MIB_XFRMNUM = 0,
286 LINUX_MIB_XFRMINERROR, /* XfrmInError */
287 LINUX_MIB_XFRMINBUFFERERROR, /* XfrmInBufferError */
288 LINUX_MIB_XFRMINHDRERROR, /* XfrmInHdrError */
289 LINUX_MIB_XFRMINNOSTATES, /* XfrmInNoStates */
290 LINUX_MIB_XFRMINSTATEPROTOERROR, /* XfrmInStateProtoError */
291 LINUX_MIB_XFRMINSTATEMODEERROR, /* XfrmInStateModeError */
292 LINUX_MIB_XFRMINSTATESEQERROR, /* XfrmInStateSeqError */
293 LINUX_MIB_XFRMINSTATEEXPIRED, /* XfrmInStateExpired */
294 LINUX_MIB_XFRMINSTATEMISMATCH, /* XfrmInStateMismatch */
295 LINUX_MIB_XFRMINSTATEINVALID, /* XfrmInStateInvalid */
296 LINUX_MIB_XFRMINTMPLMISMATCH, /* XfrmInTmplMismatch */
297 LINUX_MIB_XFRMINNOPOLS, /* XfrmInNoPols */
298 LINUX_MIB_XFRMINPOLBLOCK, /* XfrmInPolBlock */
299 LINUX_MIB_XFRMINPOLERROR, /* XfrmInPolError */
300 LINUX_MIB_XFRMOUTERROR, /* XfrmOutError */
301 LINUX_MIB_XFRMOUTBUNDLEGENERROR, /* XfrmOutBundleGenError */
302 LINUX_MIB_XFRMOUTBUNDLECHECKERROR, /* XfrmOutBundleCheckError */
303 LINUX_MIB_XFRMOUTNOSTATES, /* XfrmOutNoStates */
304 LINUX_MIB_XFRMOUTSTATEPROTOERROR, /* XfrmOutStateProtoError */
305 LINUX_MIB_XFRMOUTSTATEMODEERROR, /* XfrmOutStateModeError */
306 LINUX_MIB_XFRMOUTSTATESEQERROR, /* XfrmOutStateSeqError */
307 LINUX_MIB_XFRMOUTSTATEEXPIRED, /* XfrmOutStateExpired */
308 LINUX_MIB_XFRMOUTPOLBLOCK, /* XfrmOutPolBlock */
309 LINUX_MIB_XFRMOUTPOLDEAD, /* XfrmOutPolDead */
310 LINUX_MIB_XFRMOUTPOLERROR, /* XfrmOutPolError */
311 LINUX_MIB_XFRMFWDHDRERROR, /* XfrmFwdHdrError*/
312 LINUX_MIB_XFRMOUTSTATEINVALID, /* XfrmOutStateInvalid */
Christopher Ferrise0845012014-07-09 14:58:51 -0700313 LINUX_MIB_XFRMACQUIREERROR, /* XfrmAcquireError */
Ben Cheng224b54f2013-10-15 18:26:18 -0700314 __LINUX_MIB_XFRMMAX
315};
316
317#endif /* _LINUX_SNMP_H */