1 | // SPDX-License-Identifier: GPL-2.0 |
2 | #ifndef _NET_SHARED_H |
3 | #define _NET_SHARED_H |
4 | |
5 | #define AF_INET 2 |
6 | #define AF_INET6 10 |
7 | |
8 | #define ETH_ALEN 6 |
9 | #define ETH_P_802_3_MIN 0x0600 |
10 | #define ETH_P_8021Q 0x8100 |
11 | #define ETH_P_8021AD 0x88A8 |
12 | #define ETH_P_IP 0x0800 |
13 | #define ETH_P_IPV6 0x86DD |
14 | #define ETH_P_ARP 0x0806 |
15 | #define IPPROTO_ICMPV6 58 |
16 | |
17 | #define TC_ACT_OK 0 |
18 | #define TC_ACT_SHOT 2 |
19 | |
20 | #define IFNAMSIZ 16 |
21 | |
22 | #if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && \ |
23 | __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ |
24 | #define bpf_ntohs(x) __builtin_bswap16(x) |
25 | #define bpf_htons(x) __builtin_bswap16(x) |
26 | #elif defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) && \ |
27 | __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ |
28 | #define bpf_ntohs(x) (x) |
29 | #define bpf_htons(x) (x) |
30 | #else |
31 | # error "Endianness detection needs to be set up for your compiler?!" |
32 | #endif |
33 | |
34 | #endif |
35 | |