Statistics
| Branch: | Revision:

root / slirp / if.h @ 70ead434

History | View | Annotate | Download (1.6 kB)

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