aboutsummaryrefslogtreecommitdiff
path: root/lib/flow.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/flow.c')
-rw-r--r--lib/flow.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/flow.c b/lib/flow.c
index fa4f5d55..5df8e980 100644
--- a/lib/flow.c
+++ b/lib/flow.c
@@ -726,6 +726,7 @@ flow_wildcards_combine(struct flow_wildcards *dst,
dst->vlan_tci_mask = src1->vlan_tci_mask & src2->vlan_tci_mask;
dst->tp_src_mask = src1->tp_src_mask & src2->tp_src_mask;
dst->tp_dst_mask = src1->tp_dst_mask & src2->tp_dst_mask;
+ dst->nw_frag_mask = src1->nw_frag_mask & src2->nw_frag_mask;
}
/* Returns a hash of the wildcards in 'wc'. */
@@ -758,7 +759,8 @@ flow_wildcards_equal(const struct flow_wildcards *a,
|| !ipv6_addr_equals(&a->ipv6_dst_mask, &b->ipv6_dst_mask)
|| !ipv6_addr_equals(&a->nd_target_mask, &b->nd_target_mask)
|| a->tp_src_mask != b->tp_src_mask
- || a->tp_dst_mask != b->tp_dst_mask) {
+ || a->tp_dst_mask != b->tp_dst_mask
+ || a->nw_frag_mask != b->nw_frag_mask) {
return false;
}
@@ -809,7 +811,8 @@ flow_wildcards_has_extra(const struct flow_wildcards *a,
|| (a->nw_dst_mask & b->nw_dst_mask) != b->nw_dst_mask
|| (a->vlan_tci_mask & b->vlan_tci_mask) != b->vlan_tci_mask
|| (a->tp_src_mask & b->tp_src_mask) != b->tp_src_mask
- || (a->tp_dst_mask & b->tp_dst_mask) != b->tp_dst_mask);
+ || (a->tp_dst_mask & b->tp_dst_mask) != b->tp_dst_mask
+ || (a->nw_frag_mask & b->nw_frag_mask) != b->nw_frag_mask);
}
/* Sets the wildcard mask for register 'idx' in 'wc' to 'mask'.