mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-21 14:11:20 +00:00
openvswitch: Allow matching on conntrack label
Allow matching and setting the ct_label field. As with ct_mark, this is populated by executing the CT action. The label field may be modified by specifying a label and mask nested under the CT action. It is stored as metadata attached to the connection. Label modification occurs after lookup, and will only persist when the conntrack entry is committed by providing the COMMIT flag to the CT action. Labels are currently fixed to 128 bits in size. Signed-off-by: Joe Stringer <joestringer@nicira.com> Acked-by: Thomas Graf <tgraf@suug.ch> Acked-by: Pravin B Shelar <pshelar@nicira.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
86ca02e774
commit
c2ac667358
10 changed files with 199 additions and 34 deletions
|
@ -45,15 +45,16 @@ void ovs_match_init(struct sw_flow_match *match,
|
|||
|
||||
int ovs_nla_put_key(const struct sw_flow_key *, const struct sw_flow_key *,
|
||||
int attr, bool is_mask, struct sk_buff *);
|
||||
int ovs_nla_get_flow_metadata(const struct nlattr *, struct sw_flow_key *,
|
||||
bool log);
|
||||
int ovs_nla_get_flow_metadata(struct net *, const struct nlattr *,
|
||||
struct sw_flow_key *, bool log);
|
||||
|
||||
int ovs_nla_put_identifier(const struct sw_flow *flow, struct sk_buff *skb);
|
||||
int ovs_nla_put_masked_key(const struct sw_flow *flow, struct sk_buff *skb);
|
||||
int ovs_nla_put_mask(const struct sw_flow *flow, struct sk_buff *skb);
|
||||
|
||||
int ovs_nla_get_match(struct sw_flow_match *, const struct nlattr *key,
|
||||
const struct nlattr *mask, bool log);
|
||||
int ovs_nla_get_match(struct net *, struct sw_flow_match *,
|
||||
const struct nlattr *key, const struct nlattr *mask,
|
||||
bool log);
|
||||
int ovs_nla_put_egress_tunnel_key(struct sk_buff *,
|
||||
const struct ip_tunnel_info *);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue