| /* |
| * Copyright (c) 2015 Jiri Pirko <jiri@resnulli.us> |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| */ |
| |
| #ifndef __NET_TC_BPF_H |
| #define __NET_TC_BPF_H |
| |
| #include <linux/filter.h> |
| #include <net/act_api.h> |
| |
| struct tcf_bpf { |
| struct tcf_common common; |
| struct bpf_prog __rcu *filter; |
| union { |
| u32 bpf_fd; |
| u16 bpf_num_ops; |
| }; |
| struct sock_filter *bpf_ops; |
| const char *bpf_name; |
| }; |
| #define to_bpf(a) \ |
| container_of(a->priv, struct tcf_bpf, common) |
| |
| #endif /* __NET_TC_BPF_H */ |