linux/include/net/seg6_local.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 *  SR-IPv6 implementation
   4 *
   5 *  Authors:
   6 *  David Lebrun <david.lebrun@uclouvain.be>
   7 *  eBPF support: Mathieu Xhonneux <m.xhonneux@gmail.com>
   8 */
   9
  10#ifndef _NET_SEG6_LOCAL_H
  11#define _NET_SEG6_LOCAL_H
  12
  13#include <linux/percpu.h>
  14#include <linux/net.h>
  15#include <linux/ipv6.h>
  16
  17extern int seg6_lookup_nexthop(struct sk_buff *skb, struct in6_addr *nhaddr,
  18                               u32 tbl_id);
  19extern bool seg6_bpf_has_valid_srh(struct sk_buff *skb);
  20
  21struct seg6_bpf_srh_state {
  22        struct ipv6_sr_hdr *srh;
  23        u16 hdrlen;
  24        bool valid;
  25};
  26
  27DECLARE_PER_CPU(struct seg6_bpf_srh_state, seg6_bpf_srh_states);
  28
  29#endif
  30