Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
08e5fc0a
Commit
08e5fc0a
authored
Jul 09, 2004
by
Hideaki Yoshifuji
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[NET] use SNMP_MIB_ITEM for MIB description.
Signed-off-by:
Hideaki YOSHIFUJI
<
yoshfuji@linux-ipv6.org
>
parent
01b72229
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
204 additions
and
99 deletions
+204
-99
net/ipv4/proc.c
net/ipv4/proc.c
+182
-76
net/sctp/proc.c
net/sctp/proc.c
+22
-23
No files found.
net/ipv4/proc.c
View file @
08e5fc0a
...
...
@@ -104,26 +104,149 @@ fold_field(void *mib[], int offt)
/* snmp items */
static
struct
snmp_mib
snmp4_ipstats_list
[]
=
{
#define SNMP_GEN(n,e) SNMP_MIB_ITEM(n,e)
SNMP_GEN
(
"InReceives"
,
IPSTATS_MIB_INRECEIVES
),
SNMP_GEN
(
"InHdrErrors"
,
IPSTATS_MIB_INHDRERRORS
),
SNMP_GEN
(
"InAddrErrors"
,
IPSTATS_MIB_INADDRERRORS
),
SNMP_GEN
(
"ForwDatagrams"
,
IPSTATS_MIB_OUTFORWDATAGRAMS
),
SNMP_GEN
(
"InUnknownProtos"
,
IPSTATS_MIB_INUNKNOWNPROTOS
),
SNMP_GEN
(
"InDiscards"
,
IPSTATS_MIB_INDISCARDS
),
SNMP_GEN
(
"InDelivers"
,
IPSTATS_MIB_INDELIVERS
),
SNMP_GEN
(
"OutRequests"
,
IPSTATS_MIB_OUTREQUESTS
),
SNMP_GEN
(
"OutDiscards"
,
IPSTATS_MIB_OUTDISCARDS
),
SNMP_GEN
(
"OutNoRoutes"
,
IPSTATS_MIB_OUTNOROUTES
),
SNMP_GEN
(
"ReasmTimeout"
,
IPSTATS_MIB_REASMTIMEOUT
),
SNMP_GEN
(
"ReasmReqds"
,
IPSTATS_MIB_REASMREQDS
),
SNMP_GEN
(
"ReasmOKs"
,
IPSTATS_MIB_REASMOKS
),
SNMP_GEN
(
"ReasmFails"
,
IPSTATS_MIB_REASMFAILS
),
SNMP_GEN
(
"FragOKs"
,
IPSTATS_MIB_FRAGOKS
),
SNMP_GEN
(
"FragFails"
,
IPSTATS_MIB_FRAGFAILS
),
SNMP_GEN
(
"FragCreates"
,
IPSTATS_MIB_FRAGCREATES
),
SNMP_MIB_ITEM
(
"InReceives"
,
IPSTATS_MIB_INRECEIVES
),
SNMP_MIB_ITEM
(
"InHdrErrors"
,
IPSTATS_MIB_INHDRERRORS
),
SNMP_MIB_ITEM
(
"InAddrErrors"
,
IPSTATS_MIB_INADDRERRORS
),
SNMP_MIB_ITEM
(
"ForwDatagrams"
,
IPSTATS_MIB_OUTFORWDATAGRAMS
),
SNMP_MIB_ITEM
(
"InUnknownProtos"
,
IPSTATS_MIB_INUNKNOWNPROTOS
),
SNMP_MIB_ITEM
(
"InDiscards"
,
IPSTATS_MIB_INDISCARDS
),
SNMP_MIB_ITEM
(
"InDelivers"
,
IPSTATS_MIB_INDELIVERS
),
SNMP_MIB_ITEM
(
"OutRequests"
,
IPSTATS_MIB_OUTREQUESTS
),
SNMP_MIB_ITEM
(
"OutDiscards"
,
IPSTATS_MIB_OUTDISCARDS
),
SNMP_MIB_ITEM
(
"OutNoRoutes"
,
IPSTATS_MIB_OUTNOROUTES
),
SNMP_MIB_ITEM
(
"ReasmTimeout"
,
IPSTATS_MIB_REASMTIMEOUT
),
SNMP_MIB_ITEM
(
"ReasmReqds"
,
IPSTATS_MIB_REASMREQDS
),
SNMP_MIB_ITEM
(
"ReasmOKs"
,
IPSTATS_MIB_REASMOKS
),
SNMP_MIB_ITEM
(
"ReasmFails"
,
IPSTATS_MIB_REASMFAILS
),
SNMP_MIB_ITEM
(
"FragOKs"
,
IPSTATS_MIB_FRAGOKS
),
SNMP_MIB_ITEM
(
"FragFails"
,
IPSTATS_MIB_FRAGFAILS
),
SNMP_MIB_ITEM
(
"FragCreates"
,
IPSTATS_MIB_FRAGCREATES
),
SNMP_MIB_SENTINEL
};
static
struct
snmp_mib
snmp4_icmp_list
[]
=
{
SNMP_MIB_ITEM
(
"InMsgs"
,
ICMP_MIB_INMSGS
),
SNMP_MIB_ITEM
(
"InErrors"
,
ICMP_MIB_INERRORS
),
SNMP_MIB_ITEM
(
"InDestUnreachs"
,
ICMP_MIB_INDESTUNREACHS
),
SNMP_MIB_ITEM
(
"InTimeExcds"
,
ICMP_MIB_INTIMEEXCDS
),
SNMP_MIB_ITEM
(
"InParmProbs"
,
ICMP_MIB_INPARMPROBS
),
SNMP_MIB_ITEM
(
"InSrcQuenchs"
,
ICMP_MIB_INSRCQUENCHS
),
SNMP_MIB_ITEM
(
"InRedirects"
,
ICMP_MIB_INREDIRECTS
),
SNMP_MIB_ITEM
(
"InEchos"
,
ICMP_MIB_INECHOS
),
SNMP_MIB_ITEM
(
"InEchoReps"
,
ICMP_MIB_INECHOREPS
),
SNMP_MIB_ITEM
(
"InTimestamps"
,
ICMP_MIB_INTIMESTAMPS
),
SNMP_MIB_ITEM
(
"InTimestampReps"
,
ICMP_MIB_INTIMESTAMPREPS
),
SNMP_MIB_ITEM
(
"InAddrMasks"
,
ICMP_MIB_INADDRMASKS
),
SNMP_MIB_ITEM
(
"InAddrMaskReps"
,
ICMP_MIB_INADDRMASKREPS
),
SNMP_MIB_ITEM
(
"OutMsgs"
,
ICMP_MIB_OUTMSGS
),
SNMP_MIB_ITEM
(
"OutErrors"
,
ICMP_MIB_OUTERRORS
),
SNMP_MIB_ITEM
(
"OutDestUnreachs"
,
ICMP_MIB_OUTDESTUNREACHS
),
SNMP_MIB_ITEM
(
"OutTimeExcds"
,
ICMP_MIB_OUTTIMEEXCDS
),
SNMP_MIB_ITEM
(
"OutParmProbs"
,
ICMP_MIB_OUTPARMPROBS
),
SNMP_MIB_ITEM
(
"OutSrcQuenchs"
,
ICMP_MIB_OUTSRCQUENCHS
),
SNMP_MIB_ITEM
(
"OutRedirects"
,
ICMP_MIB_OUTREDIRECTS
),
SNMP_MIB_ITEM
(
"OutEchos"
,
ICMP_MIB_OUTECHOS
),
SNMP_MIB_ITEM
(
"OutEchoReps"
,
ICMP_MIB_OUTECHOREPS
),
SNMP_MIB_ITEM
(
"OutTimestamps"
,
ICMP_MIB_OUTTIMESTAMPS
),
SNMP_MIB_ITEM
(
"OutTimestampReps"
,
ICMP_MIB_OUTTIMESTAMPREPS
),
SNMP_MIB_ITEM
(
"OutAddrMasks"
,
ICMP_MIB_OUTADDRMASKS
),
SNMP_MIB_ITEM
(
"OutAddrMaskReps"
,
ICMP_MIB_OUTADDRMASKREPS
),
SNMP_MIB_SENTINEL
};
static
struct
snmp_mib
snmp4_tcp_list
[]
=
{
SNMP_MIB_ITEM
(
"RtoAlgorithm"
,
TCP_MIB_RTOALGORITHM
),
SNMP_MIB_ITEM
(
"RtoMin"
,
TCP_MIB_RTOMIN
),
SNMP_MIB_ITEM
(
"RtoMax"
,
TCP_MIB_RTOMAX
),
SNMP_MIB_ITEM
(
"MaxConn"
,
TCP_MIB_MAXCONN
),
SNMP_MIB_ITEM
(
"ActiveOpens"
,
TCP_MIB_ACTIVEOPENS
),
SNMP_MIB_ITEM
(
"PassiveOpens"
,
TCP_MIB_PASSIVEOPENS
),
SNMP_MIB_ITEM
(
"AttemptFails"
,
TCP_MIB_ATTEMPTFAILS
),
SNMP_MIB_ITEM
(
"EstabResets"
,
TCP_MIB_ESTABRESETS
),
SNMP_MIB_ITEM
(
"CurrEstab"
,
TCP_MIB_CURRESTAB
),
SNMP_MIB_ITEM
(
"InSegs"
,
TCP_MIB_INSEGS
),
SNMP_MIB_ITEM
(
"OutSegs"
,
TCP_MIB_OUTSEGS
),
SNMP_MIB_ITEM
(
"RetransSegs"
,
TCP_MIB_RETRANSSEGS
),
SNMP_MIB_ITEM
(
"InErrs"
,
TCP_MIB_INERRS
),
SNMP_MIB_ITEM
(
"OutRsts"
,
TCP_MIB_OUTRSTS
),
SNMP_MIB_SENTINEL
};
static
struct
snmp_mib
snmp4_udp_list
[]
=
{
SNMP_MIB_ITEM
(
"InDatagrams"
,
UDP_MIB_INDATAGRAMS
),
SNMP_MIB_ITEM
(
"NoPorts"
,
UDP_MIB_NOPORTS
),
SNMP_MIB_ITEM
(
"InErrors"
,
UDP_MIB_INERRORS
),
SNMP_MIB_ITEM
(
"OutDatagrams"
,
UDP_MIB_OUTDATAGRAMS
),
SNMP_MIB_SENTINEL
};
static
struct
snmp_mib
snmp4_net_list
[]
=
{
SNMP_MIB_ITEM
(
"SyncookiesSent"
,
LINUX_MIB_SYNCOOKIESSENT
),
SNMP_MIB_ITEM
(
"SyncookiesRecv"
,
LINUX_MIB_SYNCOOKIESRECV
),
SNMP_MIB_ITEM
(
"SyncookiesFailed"
,
LINUX_MIB_SYNCOOKIESFAILED
),
SNMP_MIB_ITEM
(
"EmbryonicRsts"
,
LINUX_MIB_EMBRYONICRSTS
),
SNMP_MIB_ITEM
(
"PruneCalled"
,
LINUX_MIB_PRUNECALLED
),
SNMP_MIB_ITEM
(
"RcvPruned"
,
LINUX_MIB_RCVPRUNED
),
SNMP_MIB_ITEM
(
"OfoPruned"
,
LINUX_MIB_OFOPRUNED
),
SNMP_MIB_ITEM
(
"OutOfWindowIcmps"
,
LINUX_MIB_OUTOFWINDOWICMPS
),
SNMP_MIB_ITEM
(
"LockDroppedIcmps"
,
LINUX_MIB_LOCKDROPPEDICMPS
),
SNMP_MIB_ITEM
(
"ArpFilter"
,
LINUX_MIB_ARPFILTER
),
SNMP_MIB_ITEM
(
"TW"
,
LINUX_MIB_TIMEWAITED
),
SNMP_MIB_ITEM
(
"TWRecycled"
,
LINUX_MIB_TIMEWAITRECYCLED
),
SNMP_MIB_ITEM
(
"TWKilled"
,
LINUX_MIB_TIMEWAITKILLED
),
SNMP_MIB_ITEM
(
"PAWSPassive"
,
LINUX_MIB_PAWSPASSIVEREJECTED
),
SNMP_MIB_ITEM
(
"PAWSActive"
,
LINUX_MIB_PAWSACTIVEREJECTED
),
SNMP_MIB_ITEM
(
"PAWSEstab"
,
LINUX_MIB_PAWSESTABREJECTED
),
SNMP_MIB_ITEM
(
"DelayedACKs"
,
LINUX_MIB_DELAYEDACKS
),
SNMP_MIB_ITEM
(
"DelayedACKLocked"
,
LINUX_MIB_DELAYEDACKLOCKED
),
SNMP_MIB_ITEM
(
"DelayedACKLost"
,
LINUX_MIB_DELAYEDACKLOST
),
SNMP_MIB_ITEM
(
"ListenOverflows"
,
LINUX_MIB_LISTENOVERFLOWS
),
SNMP_MIB_ITEM
(
"ListenDrops"
,
LINUX_MIB_LISTENDROPS
),
SNMP_MIB_ITEM
(
"TCPPrequeued"
,
LINUX_MIB_TCPPREQUEUED
),
SNMP_MIB_ITEM
(
"TCPDirectCopyFromBacklog"
,
LINUX_MIB_TCPDIRECTCOPYFROMBACKLOG
),
SNMP_MIB_ITEM
(
"TCPDirectCopyFromPrequeue"
,
LINUX_MIB_TCPDIRECTCOPYFROMPREQUEUE
),
SNMP_MIB_ITEM
(
"TCPPrequeueDropped"
,
LINUX_MIB_TCPPREQUEUEDROPPED
),
SNMP_MIB_ITEM
(
"TCPHPHits"
,
LINUX_MIB_TCPHPHITS
),
SNMP_MIB_ITEM
(
"TCPHPHitsToUser"
,
LINUX_MIB_TCPHPHITSTOUSER
),
SNMP_MIB_ITEM
(
"TCPPureAcks"
,
LINUX_MIB_TCPPUREACKS
),
SNMP_MIB_ITEM
(
"TCPHPAcks"
,
LINUX_MIB_TCPHPACKS
),
SNMP_MIB_ITEM
(
"TCPRenoRecovery"
,
LINUX_MIB_TCPRENORECOVERY
),
SNMP_MIB_ITEM
(
"TCPSackRecovery"
,
LINUX_MIB_TCPSACKRECOVERY
),
SNMP_MIB_ITEM
(
"TCPSACKReneging"
,
LINUX_MIB_TCPSACKRENEGING
),
SNMP_MIB_ITEM
(
"TCPFACKReorder"
,
LINUX_MIB_TCPFACKREORDER
),
SNMP_MIB_ITEM
(
"TCPSACKReorder"
,
LINUX_MIB_TCPSACKREORDER
),
SNMP_MIB_ITEM
(
"TCPRenoReorder"
,
LINUX_MIB_TCPRENOREORDER
),
SNMP_MIB_ITEM
(
"TCPTSReorder"
,
LINUX_MIB_TCPTSREORDER
),
SNMP_MIB_ITEM
(
"TCPFullUndo"
,
LINUX_MIB_TCPFULLUNDO
),
SNMP_MIB_ITEM
(
"TCPPartialUndo"
,
LINUX_MIB_TCPPARTIALUNDO
),
SNMP_MIB_ITEM
(
"TCPDSACKUndo"
,
LINUX_MIB_TCPDSACKUNDO
),
SNMP_MIB_ITEM
(
"TCPLossUndo"
,
LINUX_MIB_TCPLOSSUNDO
),
SNMP_MIB_ITEM
(
"TCPLoss"
,
LINUX_MIB_TCPLOSS
),
SNMP_MIB_ITEM
(
"TCPLostRetransmit"
,
LINUX_MIB_TCPLOSTRETRANSMIT
),
SNMP_MIB_ITEM
(
"TCPRenoFailures"
,
LINUX_MIB_TCPRENOFAILURES
),
SNMP_MIB_ITEM
(
"TCPSackFailures"
,
LINUX_MIB_TCPSACKFAILURES
),
SNMP_MIB_ITEM
(
"TCPLossFailures"
,
LINUX_MIB_TCPLOSSFAILURES
),
SNMP_MIB_ITEM
(
"TCPFastRetrans"
,
LINUX_MIB_TCPFASTRETRANS
),
SNMP_MIB_ITEM
(
"TCPForwardRetrans"
,
LINUX_MIB_TCPFORWARDRETRANS
),
SNMP_MIB_ITEM
(
"TCPSlowStartRetrans"
,
LINUX_MIB_TCPSLOWSTARTRETRANS
),
SNMP_MIB_ITEM
(
"TCPTimeouts"
,
LINUX_MIB_TCPTIMEOUTS
),
SNMP_MIB_ITEM
(
"TCPRenoRecoveryFail"
,
LINUX_MIB_TCPRENORECOVERYFAIL
),
SNMP_MIB_ITEM
(
"TCPSackRecoveryFail"
,
LINUX_MIB_TCPSACKRECOVERYFAIL
),
SNMP_MIB_ITEM
(
"TCPSchedulerFailed"
,
LINUX_MIB_TCPSCHEDULERFAILED
),
SNMP_MIB_ITEM
(
"TCPRcvCollapsed"
,
LINUX_MIB_TCPRCVCOLLAPSED
),
SNMP_MIB_ITEM
(
"TCPDSACKOldSent"
,
LINUX_MIB_TCPDSACKOLDSENT
),
SNMP_MIB_ITEM
(
"TCPDSACKOfoSent"
,
LINUX_MIB_TCPDSACKOFOSENT
),
SNMP_MIB_ITEM
(
"TCPDSACKRecv"
,
LINUX_MIB_TCPDSACKRECV
),
SNMP_MIB_ITEM
(
"TCPDSACKOfoRecv"
,
LINUX_MIB_TCPDSACKOFORECV
),
SNMP_MIB_ITEM
(
"TCPAbortOnSyn"
,
LINUX_MIB_TCPABORTONSYN
),
SNMP_MIB_ITEM
(
"TCPAbortOnData"
,
LINUX_MIB_TCPABORTONDATA
),
SNMP_MIB_ITEM
(
"TCPAbortOnClose"
,
LINUX_MIB_TCPABORTONCLOSE
),
SNMP_MIB_ITEM
(
"TCPAbortOnMemory"
,
LINUX_MIB_TCPABORTONMEMORY
),
SNMP_MIB_ITEM
(
"TCPAbortOnTimeout"
,
LINUX_MIB_TCPABORTONTIMEOUT
),
SNMP_MIB_ITEM
(
"TCPAbortOnLinger"
,
LINUX_MIB_TCPABORTONLINGER
),
SNMP_MIB_ITEM
(
"TCPAbortFailed"
,
LINUX_MIB_TCPABORTFAILED
),
SNMP_MIB_ITEM
(
"TCPMemoryPressures"
,
LINUX_MIB_TCPMEMORYPRESSURES
),
SNMP_MIB_SENTINEL
#undef SNMP_GEN
};
/*
...
...
@@ -146,38 +269,42 @@ static int snmp_seq_show(struct seq_file *seq, void *v)
fold_field
((
void
**
)
ip_statistics
,
snmp4_ipstats_list
[
i
].
entry
));
seq_printf
(
seq
,
"
\n
Icmp: InMsgs InErrors InDestUnreachs InTimeExcds "
"InParmProbs InSrcQuenchs InRedirects InEchos "
"InEchoReps InTimestamps InTimestampReps InAddrMasks "
"InAddrMaskReps OutMsgs OutErrors OutDestUnreachs "
"OutTimeExcds OutParmProbs OutSrcQuenchs OutRedirects "
"OutEchos OutEchoReps OutTimestamps OutTimestampReps "
"OutAddrMasks OutAddrMaskReps
\n
Icmp:"
);
seq_puts
(
seq
,
"
\n
Icmp:"
);
for
(
i
=
0
;
snmp4_icmp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %s"
,
snmp4_icmp_list
[
i
].
name
);
for
(
i
=
1
;
i
<
__ICMP_MIB_MAX
;
i
++
)
seq_puts
(
seq
,
"
\n
Icmp:"
);
for
(
i
=
0
;
snmp4_icmp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
icmp_statistics
,
i
));
seq_printf
(
seq
,
"
\n
Tcp: RtoAlgorithm RtoMin RtoMax MaxConn ActiveOpens "
"PassiveOpens AttemptFails EstabResets CurrEstab "
"InSegs OutSegs RetransSegs InErrs OutRsts
\n
Tcp:"
);
for
(
i
=
1
;
i
<
__TCP_MIB_MAX
;
i
++
)
{
if
(
i
==
TCP_MIB_MAXCONN
)
/* MaxConn field is negative, RFC 2012 */
seq_printf
(
seq
,
" %ld"
,
fold_field
((
void
**
)
tcp_statistics
,
i
));
fold_field
((
void
**
)
icmp_statistics
,
snmp4_icmp_list
[
i
].
entry
));
seq_puts
(
seq
,
"
\n
Tcp:"
);
for
(
i
=
0
;
snmp4_tcp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %s"
,
snmp4_tcp_list
[
i
].
name
);
seq_puts
(
seq
,
"
\n
Tcp:"
);
for
(
i
=
0
;
snmp4_tcp_list
[
i
].
name
!=
NULL
;
i
++
)
{
/* MaxConn field is signed, RFC 2012 */
if
(
snmp4_tcp_list
[
i
].
entry
==
TCP_MIB_MAXCONN
)
seq_printf
(
seq
,
" %ld"
,
fold_field
((
void
**
)
tcp_statistics
,
snmp4_tcp_list
[
i
].
entry
));
else
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
tcp_statistics
,
i
));
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
tcp_statistics
,
snmp4_tcp_list
[
i
].
entry
));
}
seq_printf
(
seq
,
"
\n
Udp: InDatagrams NoPorts InErrors OutDatagrams
\n
"
"Udp:"
);
seq_puts
(
seq
,
"
\n
Udp:"
);
for
(
i
=
0
;
snmp4_udp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %s"
,
snmp4_udp_list
[
i
].
name
);
for
(
i
=
1
;
i
<
__UDP_MIB_MAX
;
i
++
)
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
udp_statistics
,
i
));
seq_puts
(
seq
,
"
\n
Udp:"
);
for
(
i
=
0
;
snmp4_udp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
udp_statistics
,
snmp4_udp_list
[
i
].
entry
));
seq_putc
(
seq
,
'\n'
);
return
0
;
...
...
@@ -203,37 +330,16 @@ static int netstat_seq_show(struct seq_file *seq, void *v)
{
int
i
;
seq_puts
(
seq
,
"TcpExt: SyncookiesSent SyncookiesRecv SyncookiesFailed"
" EmbryonicRsts PruneCalled RcvPruned OfoPruned"
" OutOfWindowIcmps LockDroppedIcmps ArpFilter"
" TW TWRecycled TWKilled"
" PAWSPassive PAWSActive PAWSEstab"
" DelayedACKs DelayedACKLocked DelayedACKLost"
" ListenOverflows ListenDrops"
" TCPPrequeued TCPDirectCopyFromBacklog"
" TCPDirectCopyFromPrequeue TCPPrequeueDropped"
" TCPHPHits TCPHPHitsToUser"
" TCPPureAcks TCPHPAcks"
" TCPRenoRecovery TCPSackRecovery"
" TCPSACKReneging"
" TCPFACKReorder TCPSACKReorder TCPRenoReorder"
" TCPTSReorder"
" TCPFullUndo TCPPartialUndo TCPDSACKUndo TCPLossUndo"
" TCPLoss TCPLostRetransmit"
" TCPRenoFailures TCPSackFailures TCPLossFailures"
" TCPFastRetrans TCPForwardRetrans TCPSlowStartRetrans"
" TCPTimeouts"
" TCPRenoRecoveryFail TCPSackRecoveryFail"
" TCPSchedulerFailed TCPRcvCollapsed"
" TCPDSACKOldSent TCPDSACKOfoSent TCPDSACKRecv"
" TCPDSACKOfoRecv"
" TCPAbortOnSyn TCPAbortOnData TCPAbortOnClose"
" TCPAbortOnMemory TCPAbortOnTimeout TCPAbortOnLinger"
" TCPAbortFailed TCPMemoryPressures
\n
"
"TcpExt:"
);
for
(
i
=
1
;
i
<
__LINUX_MIB_MAX
;
i
++
)
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
net_statistics
,
i
));
seq_puts
(
seq
,
"
\n
TcpExt:"
);
for
(
i
=
0
;
snmp4_net_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %s"
,
snmp4_net_list
[
i
].
name
);
seq_puts
(
seq
,
"
\n
TcpExt:"
);
for
(
i
=
0
;
snmp4_net_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
" %lu"
,
fold_field
((
void
**
)
net_statistics
,
snmp4_net_list
[
i
].
entry
));
seq_putc
(
seq
,
'\n'
);
return
0
;
}
...
...
net/sctp/proc.c
View file @
08e5fc0a
...
...
@@ -39,26 +39,24 @@
#include <linux/init.h>
#include <net/sctp/sctp.h>
static
char
*
sctp_snmp_list
[]
=
{
#define SCTP_SNMP_ENTRY(x) #x
SCTP_SNMP_ENTRY
(
SctpCurrEstab
),
SCTP_SNMP_ENTRY
(
SctpActiveEstabs
),
SCTP_SNMP_ENTRY
(
SctpPassiveEstabs
),
SCTP_SNMP_ENTRY
(
SctpAborteds
),
SCTP_SNMP_ENTRY
(
SctpShutdowns
),
SCTP_SNMP_ENTRY
(
SctpOutOfBlues
),
SCTP_SNMP_ENTRY
(
SctpChecksumErrors
),
SCTP_SNMP_ENTRY
(
SctpOutCtrlChunks
),
SCTP_SNMP_ENTRY
(
SctpOutOrderChunks
),
SCTP_SNMP_ENTRY
(
SctpOutUnorderChunks
),
SCTP_SNMP_ENTRY
(
SctpInCtrlChunks
),
SCTP_SNMP_ENTRY
(
SctpInOrderChunks
),
SCTP_SNMP_ENTRY
(
SctpInUnorderChunks
),
SCTP_SNMP_ENTRY
(
SctpFragUsrMsgs
),
SCTP_SNMP_ENTRY
(
SctpReasmUsrMsgs
),
SCTP_SNMP_ENTRY
(
SctpOutSCTPPacks
),
SCTP_SNMP_ENTRY
(
SctpInSCTPPacks
),
#undef SCTP_SNMP_ENTRY
struct
snmp_mib
sctp_snmp_list
[]
=
{
SNMP_MIB_ITEM
(
"SctpCurrEstab"
,
SCTP_MIB_CURRESTAB
),
SNMP_MIB_ITEM
(
"SctpActiveEstabs"
,
SCTP_MIB_ACTIVEESTABS
),
SNMP_MIB_ITEM
(
"SctpPassiveEstabs"
,
SCTP_MIB_PASSIVEESTABS
),
SNMP_MIB_ITEM
(
"SctpAborteds"
,
SCTP_MIB_ABORTEDS
),
SNMP_MIB_ITEM
(
"SctpShutdowns"
,
SCTP_MIB_SHUTDOWNS
),
SNMP_MIB_ITEM
(
"SctpOutOfBlues"
,
SCTP_MIB_OUTOFBLUES
),
SNMP_MIB_ITEM
(
"SctpChecksumErrors"
,
SCTP_MIB_CHECKSUMERRORS
),
SNMP_MIB_ITEM
(
"SctpOutCtrlChunks"
,
SCTP_MIB_OUTCTRLCHUNKS
),
SNMP_MIB_ITEM
(
"SctpOutOrderChunks"
,
SCTP_MIB_OUTORDERCHUNKS
),
SNMP_MIB_ITEM
(
"SctpOutUnorderChunks"
,
SCTP_MIB_OUTUNORDERCHUNKS
),
SNMP_MIB_ITEM
(
"SctpInCtrlChunks"
,
SCTP_MIB_INCTRLCHUNKS
),
SNMP_MIB_ITEM
(
"SctpInOrderChunks"
,
SCTP_MIB_INORDERCHUNKS
),
SNMP_MIB_ITEM
(
"SctpInUnorderChunks"
,
SCTP_MIB_INUNORDERCHUNKS
),
SNMP_MIB_ITEM
(
"SctpFragUsrMsgs"
,
SCTP_MIB_FRAGUSRMSGS
),
SNMP_MIB_ITEM
(
"SctpReasmUsrMsgs"
,
SCTP_MIB_REASMUSRMSGS
),
SNMP_MIB_ITEM
(
"SctpOutSCTPPacks"
,
SCTP_MIB_OUTSCTPPACKS
),
SNMP_MIB_ITEM
(
"SctpInSCTPPacks"
,
SCTP_MIB_INSCTPPACKS
),
};
/* Return the current value of a particular entry in the mib by adding its
...
...
@@ -88,9 +86,10 @@ static int sctp_snmp_seq_show(struct seq_file *seq, void *v)
{
int
i
;
for
(
i
=
0
;
i
<
sizeof
(
sctp_snmp_list
)
/
sizeof
(
char
*
);
i
++
)
seq_printf
(
seq
,
"%-32s
\t
%ld
\n
"
,
sctp_snmp_list
[
i
],
fold_field
((
void
**
)
sctp_statistics
,
i
));
for
(
i
=
0
;
sctp_snmp_list
[
i
].
name
!=
NULL
;
i
++
)
seq_printf
(
seq
,
"%-32s
\t
%ld
\n
"
,
sctp_snmp_list
[
i
].
name
,
fold_field
((
void
**
)
sctp_statistics
,
sctp_snmp_list
[
i
].
entry
));
return
0
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment