1 /* SPDX-License-Identifier: LGPL-2.1-or-later */
2 #pragma once
3 
4 /* linux/in6.h or netinet/in.h */
5 #ifndef IPV6_UNICAST_IF
6 #define IPV6_UNICAST_IF 76
7 #endif
8 
9 /* linux/in6.h or netinet/in.h */
10 #ifndef IPV6_TRANSPARENT
11 #define IPV6_TRANSPARENT 75
12 #endif
13 
14 /* Not exposed but defined at include/net/ip.h */
15 #ifndef IPV4_MIN_MTU
16 #define IPV4_MIN_MTU 68
17 #endif
18 
19 /* linux/ipv6.h */
20 #ifndef IPV6_MIN_MTU
21 #define IPV6_MIN_MTU 1280
22 #endif
23 
24 /* Note that LOOPBACK_IFINDEX is currently not exposed by the
25  * kernel/glibc, but hardcoded internally by the kernel.  However, as
26  * it is exported to userspace indirectly via rtnetlink and the
27  * ioctls, and made use of widely we define it here too, in a way that
28  * is compatible with the kernel's internal definition. */
29 #ifndef LOOPBACK_IFINDEX
30 #define LOOPBACK_IFINDEX 1
31 #endif
32 
33 /* Not exposed yet. Similar values are defined in net/ethernet.h */
34 #ifndef ETHERTYPE_LLDP
35 #define ETHERTYPE_LLDP 0x88cc
36 #endif
37 
38 /* Not exposed but defined in linux/netdevice.h */
39 #ifndef MAX_PHYS_ITEM_ID_LEN
40 #define MAX_PHYS_ITEM_ID_LEN 32
41 #endif
42 
43 /* Not exposed but defined in include/net/bonding.h */
44 #ifndef BOND_MAX_ARP_TARGETS
45 #define BOND_MAX_ARP_TARGETS 16
46 #endif
47 
48 /* Not exposed but defined in include/linux/ieee80211.h */
49 #ifndef IEEE80211_MAX_SSID_LEN
50 #define IEEE80211_MAX_SSID_LEN 32
51 #endif
52