linux/net/ipv6/output_core.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * IPv6 library code, needed by static components when full IPv6 support is
 * not configured or static.  These functions are needed by GSO/GRO implementation.
 */
#include <linux/export.h>
#include <net/ip.h>
#include <net/ipv6.h>
#include <net/ip6_fib.h>
#include <net/addrconf.h>
#include <net/secure_seq.h>
#include <linux/netfilter.h>

static u32 __ipv6_select_ident(struct net *net,
			       const struct in6_addr *dst,
			       const struct in6_addr *src)
{}

/* This function exists only for tap drivers that must support broken
 * clients requesting UFO without specifying an IPv6 fragment ID.
 *
 * This is similar to ipv6_select_ident() but we use an independent hash
 * seed to limit information leakage.
 *
 * The network header must be set before calling this.
 */
__be32 ipv6_proxy_select_ident(struct net *net, struct sk_buff *skb)
{}
EXPORT_SYMBOL_GPL();

__be32 ipv6_select_ident(struct net *net,
			 const struct in6_addr *daddr,
			 const struct in6_addr *saddr)
{}
EXPORT_SYMBOL();

int ip6_find_1stfragopt(struct sk_buff *skb, u8 **nexthdr)
{}
EXPORT_SYMBOL();

#if IS_ENABLED(CONFIG_IPV6)
int ip6_dst_hoplimit(struct dst_entry *dst)
{}
EXPORT_SYMBOL();
#endif

int __ip6_local_out(struct net *net, struct sock *sk, struct sk_buff *skb)
{}
EXPORT_SYMBOL_GPL();

int ip6_local_out(struct net *net, struct sock *sk, struct sk_buff *skb)
{}
EXPORT_SYMBOL_GPL();