Statistics
| Branch: | Revision:

root / slirp / if.h @ 7878ff6b

History | View | Annotate | Download (1.7 kB)

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
#define IF_MTU 1500
17
#define IF_MRU 1500
18
#define        IF_COMP IF_AUTOCOMP        /* Flags for compression */
19

    
20
#if 0
21
/*
22
 * Set if_maxlinkhdr to 48 because it's 40 bytes for TCP/IP,
23
 * and 8 bytes for PPP, but need to have it on an 8byte boundary
24
 */
25
#ifdef USE_PPP
26
#define IF_MAXLINKHDR 48
27
#else
28
#define IF_MAXLINKHDR 40
29
#endif
30
#else
31
        /* 2 for alignment, 14 for ethernet, 40 for TCP/IP */
32
#define IF_MAXLINKHDR (2 + 14 + 40)
33
#endif
34

    
35
extern int        if_queued;        /* Number of packets queued so far */
36

    
37
extern        struct mbuf if_fastq;                  /* fast queue (for interactive data) */
38
extern        struct mbuf if_batchq;                 /* queue for non-interactive data */
39
extern        struct mbuf *next_m;
40

    
41
#define ifs_init(ifm) ((ifm)->ifs_next = (ifm)->ifs_prev = (ifm))
42

    
43
#ifdef LOG_ENABLED
44
/* Interface statistics */
45
struct slirp_ifstats {
46
        u_int out_pkts;                /* Output packets */
47
        u_int out_bytes;                /* Output bytes */
48
        u_int out_errpkts;        /* Output Error Packets */
49
        u_int out_errbytes;        /* Output Error Bytes */
50
        u_int in_pkts;                /* Input packets */
51
        u_int in_bytes;                /* Input bytes */
52
        u_int in_errpkts;                /* Input Error Packets */
53
        u_int in_errbytes;        /* Input Error Bytes */
54

    
55
        u_int bytes_saved;        /* Number of bytes that compression "saved" */
56
                                /* ie: number of bytes that didn't need to be sent over the link
57
                                 * because of compression */
58

    
59
        u_int in_mbad;                /* Bad incoming packets */
60
};
61
#endif
62

    
63
#endif