]> git.proxmox.com Git - qemu.git/blame - slirp/if.h
initial user mode network support
[qemu.git] / slirp / if.h
CommitLineData
f0cbd3ec
FB
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
18extern int if_mtu;
19extern int if_mru; /* MTU and MRU */
20extern int if_comp; /* Flags for compression */
21extern int if_maxlinkhdr;
22extern int if_queued; /* Number of packets queued so far */
23extern int if_thresh; /* Number of packets queued before we start sending
24 * (to prevent allocing too many mbufs) */
25
26extern struct mbuf if_fastq; /* fast queue (for interactive data) */
27extern struct mbuf if_batchq; /* queue for non-interactive data */
28extern struct mbuf *next_m;
29
30#define ifs_init(ifm) ((ifm)->ifs_next = (ifm)->ifs_prev = (ifm))
31
32/* Interface statistics */
33struct slirp_ifstats {
34 u_int out_pkts; /* Output packets */
35 u_int out_bytes; /* Output bytes */
36 u_int out_errpkts; /* Output Error Packets */
37 u_int out_errbytes; /* Output Error Bytes */
38 u_int in_pkts; /* Input packets */
39 u_int in_bytes; /* Input bytes */
40 u_int in_errpkts; /* Input Error Packets */
41 u_int in_errbytes; /* Input Error Bytes */
42
43 u_int bytes_saved; /* Number of bytes that compression "saved" */
44 /* ie: number of bytes that didn't need to be sent over the link
45 * because of compression */
46
47 u_int in_mbad; /* Bad incoming packets */
48};
49
50#endif