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

bpf-netns.h (1448B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef _BPF_NETNS_H
      3#define _BPF_NETNS_H
      4
      5#include <linux/mutex.h>
      6#include <net/netns/bpf.h>
      7#include <uapi/linux/bpf.h>
      8
      9static inline enum netns_bpf_attach_type
     10to_netns_bpf_attach_type(enum bpf_attach_type attach_type)
     11{
     12	switch (attach_type) {
     13	case BPF_FLOW_DISSECTOR:
     14		return NETNS_BPF_FLOW_DISSECTOR;
     15	case BPF_SK_LOOKUP:
     16		return NETNS_BPF_SK_LOOKUP;
     17	default:
     18		return NETNS_BPF_INVALID;
     19	}
     20}
     21
     22/* Protects updates to netns_bpf */
     23extern struct mutex netns_bpf_mutex;
     24
     25union bpf_attr;
     26struct bpf_prog;
     27
     28#ifdef CONFIG_NET
     29int netns_bpf_prog_query(const union bpf_attr *attr,
     30			 union bpf_attr __user *uattr);
     31int netns_bpf_prog_attach(const union bpf_attr *attr,
     32			  struct bpf_prog *prog);
     33int netns_bpf_prog_detach(const union bpf_attr *attr, enum bpf_prog_type ptype);
     34int netns_bpf_link_create(const union bpf_attr *attr,
     35			  struct bpf_prog *prog);
     36#else
     37static inline int netns_bpf_prog_query(const union bpf_attr *attr,
     38				       union bpf_attr __user *uattr)
     39{
     40	return -EOPNOTSUPP;
     41}
     42
     43static inline int netns_bpf_prog_attach(const union bpf_attr *attr,
     44					struct bpf_prog *prog)
     45{
     46	return -EOPNOTSUPP;
     47}
     48
     49static inline int netns_bpf_prog_detach(const union bpf_attr *attr,
     50					enum bpf_prog_type ptype)
     51{
     52	return -EOPNOTSUPP;
     53}
     54
     55static inline int netns_bpf_link_create(const union bpf_attr *attr,
     56					struct bpf_prog *prog)
     57{
     58	return -EOPNOTSUPP;
     59}
     60#endif
     61
     62#endif /* _BPF_NETNS_H */