Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / include / net / tc_act / tc_skbmod.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * Copyright (c) 2016, Jamal Hadi Salim
4 */
5
6 #ifndef __NET_TC_SKBMOD_H
7 #define __NET_TC_SKBMOD_H
8
9 #include <net/act_api.h>
10 #include <linux/tc_act/tc_skbmod.h>
11
12 struct tcf_skbmod_params {
13         struct rcu_head rcu;
14         u64     flags; /*up to 64 types of operations; extend if needed */
15         u8      eth_dst[ETH_ALEN];
16         u16     eth_type;
17         u8      eth_src[ETH_ALEN];
18 };
19
20 struct tcf_skbmod {
21         struct tc_action        common;
22         struct tcf_skbmod_params __rcu *skbmod_p;
23 };
24 #define to_skbmod(a) ((struct tcf_skbmod *)a)
25
26 #endif /* __NET_TC_SKBMOD_H */