cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

exthdrs_offload.c (711B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 *	IPV6 GSO/GRO offload support
      4 *	Linux INET6 implementation
      5 *
      6 *      IPV6 Extension Header GSO/GRO support
      7 */
      8#include <net/protocol.h>
      9#include "ip6_offload.h"
     10
     11static const struct net_offload rthdr_offload = {
     12	.flags		=	INET6_PROTO_GSO_EXTHDR,
     13};
     14
     15static const struct net_offload dstopt_offload = {
     16	.flags		=	INET6_PROTO_GSO_EXTHDR,
     17};
     18
     19int __init ipv6_exthdrs_offload_init(void)
     20{
     21	int ret;
     22
     23	ret = inet6_add_offload(&rthdr_offload, IPPROTO_ROUTING);
     24	if (ret)
     25		goto out;
     26
     27	ret = inet6_add_offload(&dstopt_offload, IPPROTO_DSTOPTS);
     28	if (ret)
     29		goto out_rt;
     30
     31out:
     32	return ret;
     33
     34out_rt:
     35	inet6_del_offload(&rthdr_offload, IPPROTO_ROUTING);
     36	goto out;
     37}