]> git.proxmox.com Git - qemu.git/blob - slirp/if.h
Make Slirp statistics gathering and output conditional to LOG_ENABLED
[qemu.git] / slirp / if.h
1 /*
2 * Copyright (c) 1995 Danny Gasparovski.
3 *
4 * Please read the file COPYRIGHT for the
5 * terms and conditions of the copyright.
6 */
7
8 #ifndef _IF_H_
9 #define _IF_H_
10
11 #define IF_COMPRESS 0x01 /* We want compression */
12 #define IF_NOCOMPRESS 0x02 /* Do not do compression */
13 #define IF_AUTOCOMP 0x04 /* Autodetect (default) */
14 #define IF_NOCIDCOMP 0x08 /* CID compression */
15
16 /* Needed for FreeBSD */
17 #undef if_mtu
18 extern int if_mtu;
19 extern int if_mru; /* MTU and MRU */
20 extern int if_comp; /* Flags for compression */
21 extern int if_maxlinkhdr;
22 extern int if_queued; /* Number of packets queued so far */
23 extern int if_thresh; /* Number of packets queued before we start sending
24 * (to prevent allocing too many mbufs) */
25
26 extern struct mbuf if_fastq; /* fast queue (for interactive data) */
27 extern struct mbuf if_batchq; /* queue for non-interactive data */
28 extern struct mbuf *next_m;
29
30 #define ifs_init(ifm) ((ifm)->ifs_next = (ifm)->ifs_prev = (ifm))
31
32 #ifdef LOG_ENABLED
33 /* Interface statistics */
34 struct slirp_ifstats {
35 u_int out_pkts; /* Output packets */
36 u_int out_bytes; /* Output bytes */
37 u_int out_errpkts; /* Output Error Packets */
38 u_int out_errbytes; /* Output Error Bytes */
39 u_int in_pkts; /* Input packets */
40 u_int in_bytes; /* Input bytes */
41 u_int in_errpkts; /* Input Error Packets */
42 u_int in_errbytes; /* Input Error Bytes */
43
44 u_int bytes_saved; /* Number of bytes that compression "saved" */
45 /* ie: number of bytes that didn't need to be sent over the link
46 * because of compression */
47
48 u_int in_mbad; /* Bad incoming packets */
49 };
50 #endif
51
52 #endif