linux/net/ipv6/esp6_offload.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * IPV6 GSO/GRO offload support
 * Linux INET implementation
 *
 * Copyright (C) 2016 secunet Security Networks AG
 * Author: Steffen Klassert <[email protected]>
 *
 * ESP GRO support
 */

#include <linux/skbuff.h>
#include <linux/init.h>
#include <net/protocol.h>
#include <crypto/aead.h>
#include <crypto/authenc.h>
#include <linux/err.h>
#include <linux/module.h>
#include <net/gro.h>
#include <net/gso.h>
#include <net/ip.h>
#include <net/xfrm.h>
#include <net/esp.h>
#include <linux/scatterlist.h>
#include <linux/kernel.h>
#include <linux/slab.h>
#include <linux/spinlock.h>
#include <net/ip6_route.h>
#include <net/ipv6.h>
#include <linux/icmpv6.h>

static __u16 esp6_nexthdr_esp_offset(struct ipv6hdr *ipv6_hdr, int nhlen)
{}

static struct sk_buff *esp6_gro_receive(struct list_head *head,
					struct sk_buff *skb)
{}

static void esp6_gso_encap(struct xfrm_state *x, struct sk_buff *skb)
{}

static struct sk_buff *xfrm6_tunnel_gso_segment(struct xfrm_state *x,
						struct sk_buff *skb,
						netdev_features_t features)
{}

static struct sk_buff *xfrm6_transport_gso_segment(struct xfrm_state *x,
						   struct sk_buff *skb,
						   netdev_features_t features)
{}

static struct sk_buff *xfrm6_beet_gso_segment(struct xfrm_state *x,
					      struct sk_buff *skb,
					      netdev_features_t features)
{}

static struct sk_buff *xfrm6_outer_mode_gso_segment(struct xfrm_state *x,
						    struct sk_buff *skb,
						    netdev_features_t features)
{}

static struct sk_buff *esp6_gso_segment(struct sk_buff *skb,
				        netdev_features_t features)
{}

static int esp6_input_tail(struct xfrm_state *x, struct sk_buff *skb)
{}

static int esp6_xmit(struct xfrm_state *x, struct sk_buff *skb,  netdev_features_t features)
{}

static const struct net_offload esp6_offload =;

static const struct xfrm_type_offload esp6_type_offload =;

static int __init esp6_offload_init(void)
{}

static void __exit esp6_offload_exit(void)
{}

module_init();
module_exit(esp6_offload_exit);
MODULE_LICENSE();
MODULE_AUTHOR();
MODULE_ALIAS_XFRM_OFFLOAD_TYPE();
MODULE_DESCRIPTION();