08f60978c0f850c48b202ad58c0e6698c055e067
[barrelfish] / include / net_interfaces / flags.h
1 /*
2  * Copyright (c) 2007-2013, ETH Zurich.
3  * All rights reserved.
4  *
5  * This file is distributed under the terms in the attached LICENSE file.
6  * If you do not find this file, copies can be found by writing to:
7  * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
8  */
9
10 #ifndef NET_INTERFACES_FLAGS_H_
11 #define NET_INTERFACES_FLAGS_H_
12
13 #define NETIF_TXFLAG_IPCHECKSUM (1 << 0)
14 #define NETIF_TXFLAG_TCPCHECKSUM (1 << 1)
15 #define NETIF_TXFLAG_UDPCHECKSUM (1 << 2)
16 #define NETIF_TXFLAG_TCPHDRLEN_SHIFT (3)
17 #define NETIF_TXFLAG_TCPHDRLEN_MASK (0xf << NETIF_TXFLAG_TCPHDRLEN_SHIFT)
18
19 #define NETIF_TXFLAG (1 << 31)
20 #define NETIF_TXFLAG_LAST (1 << 30)
21
22
23 #define NETIF_RXFLAG (1 << 29)
24 #define NETIF_RXFLAG_TYPE_IPV4 (1 << 0)
25 #define NETIF_RXFLAG_TYPE_UDP (1 << 1)
26 #define NETIF_RXFLAG_TYPE_TCP (1 << 2)
27
28 #define NETIF_RXFLAG_IPCHECKSUM (1 << 3)
29 #define NETIF_RXFLAG_IPCHECKSUM_GOOD (1 << 4)
30 #define NETIF_RXFLAG_L4CHECKSUM (1 << 5)
31 #define NETIF_RXFLAG_L4CHECKSUM_GOOD (1 << 6)
32
33 #endif // ndef NET_INTERFACES_FLAGS_H_
34