/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#include <linux/libc-compat.h>
#include <asm/byteorder.h>
/* The latest drafts declared increase in minimal mtu up to 1280. */
#define IPV6_MIN_MTU 1280
* source interface/address selection, source routing, etc...
#if __UAPI_DEF_IN6_PKTINFO
struct in6_addr ipi6_addr;
#if __UAPI_DEF_IP6_MTUINFO
struct sockaddr_in6 ip6m_addr;
struct in6_addr ifr6_addr;
#define IPV6_SRCRT_STRICT 0x01 /* Deprecated; will be removed */
#define IPV6_SRCRT_TYPE_0 0 /* Deprecated; will be removed */
#define IPV6_SRCRT_TYPE_2 2 /* IPv6 type 2 Routing Header */
#define IPV6_SRCRT_TYPE_4 4 /* Segment Routing with IPv6 */
* TLV encoded option data follows.
} __attribute__((packed)); /* required for some archs */
#define ipv6_destopt_hdr ipv6_opt_hdr
#define ipv6_hopopt_hdr ipv6_opt_hdr
/* Router Alert option values (RFC2711) */
#define IPV6_OPT_ROUTERALERT_MLD 0x0000 /* MLD(RFC2710) */
* routing header type 0 (used in cmsghdr struct)
struct ipv6_rt_hdr rt_hdr;
#define rt0_type rt_hdr.type
struct ipv6_rt_hdr rt_hdr;
#define rt2_type rt_hdr.type
* home address option in destination options header
struct ipv6_destopt_hao {
} __attribute__((packed));
* BEWARE, it is incorrect. The first 4 bits of flow_lbl
* are glued to priority now, forming "class".
#if defined(__LITTLE_ENDIAN_BITFIELD)
#elif defined(__BIG_ENDIAN_BITFIELD)
#error "Please fix <asm/byteorder.h>"
/* index values for the variables in ipv6_devconf */
DEVCONF_ACCEPT_REDIRECTS,
DEVCONF_RTR_SOLICIT_INTERVAL,
DEVCONF_RTR_SOLICIT_DELAY,
DEVCONF_TEMP_PREFERED_LFT,
DEVCONF_MAX_DESYNC_FACTOR,
DEVCONF_FORCE_MLD_VERSION,
DEVCONF_ACCEPT_RA_DEFRTR,
DEVCONF_ACCEPT_RA_RTR_PREF,
DEVCONF_RTR_PROBE_INTERVAL,
DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN,
DEVCONF_ACCEPT_SOURCE_ROUTE,
DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL,
DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL,
DEVCONF_SUPPRESS_FRAG_NDISC,
DEVCONF_ACCEPT_RA_FROM_LOCAL,
DEVCONF_USE_OIF_ADDRS_ONLY,
DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT,
DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN,
DEVCONF_DROP_UNICAST_IN_L2_MULTICAST,
DEVCONF_DROP_UNSOLICITED_NA,
DEVCONF_KEEP_ADDR_ON_DOWN,
DEVCONF_RTR_SOLICIT_MAX_INTERVAL,
DEVCONF_SEG6_REQUIRE_HMAC,
DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN,