mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
Make Slirp statistics gathering and output conditional to LOG_ENABLED
Add 'info slirp' command to monitor to display statistics Disable Slirp debugging code by default git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3451 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
7d294b61ed
commit
31a60e2275
22 changed files with 203 additions and 125 deletions
|
@ -37,7 +37,9 @@
|
|||
#include "slirp.h"
|
||||
#include "ip_icmp.h"
|
||||
|
||||
#ifdef LOG_ENABLED
|
||||
struct icmpstat icmpstat;
|
||||
#endif
|
||||
|
||||
/* The message sent when emulating PING */
|
||||
/* Be nice and tell them it's just a psuedo-ping packet */
|
||||
|
@ -83,14 +85,14 @@ icmp_input(m, hlen)
|
|||
DEBUG_ARG("m = %lx", (long )m);
|
||||
DEBUG_ARG("m_len = %d", m->m_len);
|
||||
|
||||
icmpstat.icps_received++;
|
||||
STAT(icmpstat.icps_received++);
|
||||
|
||||
/*
|
||||
* Locate icmp structure in mbuf, and check
|
||||
* that its not corrupted and of at least minimum length.
|
||||
*/
|
||||
if (icmplen < ICMP_MINLEN) { /* min 8 bytes payload */
|
||||
icmpstat.icps_tooshort++;
|
||||
STAT(icmpstat.icps_tooshort++);
|
||||
freeit:
|
||||
m_freem(m);
|
||||
goto end_error;
|
||||
|
@ -100,7 +102,7 @@ icmp_input(m, hlen)
|
|||
m->m_data += hlen;
|
||||
icp = mtod(m, struct icmp *);
|
||||
if (cksum(m, icmplen)) {
|
||||
icmpstat.icps_checksum++;
|
||||
STAT(icmpstat.icps_checksum++);
|
||||
goto freeit;
|
||||
}
|
||||
m->m_len += hlen;
|
||||
|
@ -170,12 +172,12 @@ icmp_input(m, hlen)
|
|||
case ICMP_TSTAMP:
|
||||
case ICMP_MASKREQ:
|
||||
case ICMP_REDIRECT:
|
||||
icmpstat.icps_notsupp++;
|
||||
STAT(icmpstat.icps_notsupp++);
|
||||
m_freem(m);
|
||||
break;
|
||||
|
||||
default:
|
||||
icmpstat.icps_badtype++;
|
||||
STAT(icmpstat.icps_badtype++);
|
||||
m_freem(m);
|
||||
} /* swith */
|
||||
|
||||
|
@ -314,7 +316,7 @@ icmp_error(msrc, type, code, minsize, message)
|
|||
|
||||
(void ) ip_output((struct socket *)NULL, m);
|
||||
|
||||
icmpstat.icps_reflect++;
|
||||
STAT(icmpstat.icps_reflect++);
|
||||
|
||||
end_error:
|
||||
return;
|
||||
|
@ -371,5 +373,5 @@ icmp_reflect(m)
|
|||
|
||||
(void ) ip_output((struct socket *)NULL, m);
|
||||
|
||||
icmpstat.icps_reflect++;
|
||||
STAT(icmpstat.icps_reflect++);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue