mirror of
https://github.com/openvswitch/ovs
synced 2025-10-19 14:37:21 +00:00
Introduce 128-bit xxregs.
These are needed to handle IPv6 addresses. Signed-off-by: Justin Pettit <jpettit@ovn.org> Acked-by: Ben Pfaff <blp@ovn.org>
This commit is contained in:
15
lib/match.c
15
lib/match.c
@@ -132,6 +132,21 @@ match_set_xreg_masked(struct match *match, unsigned int xreg_idx,
|
||||
flow_set_xreg(&match->flow, xreg_idx, value & mask);
|
||||
}
|
||||
|
||||
void
|
||||
match_set_xxreg(struct match *match, unsigned int xxreg_idx, ovs_u128 value)
|
||||
{
|
||||
match_set_xxreg_masked(match, xxreg_idx, value, OVS_U128_MAX);
|
||||
}
|
||||
|
||||
void
|
||||
match_set_xxreg_masked(struct match *match, unsigned int xxreg_idx,
|
||||
ovs_u128 value, ovs_u128 mask)
|
||||
{
|
||||
ovs_assert(xxreg_idx < FLOW_N_XXREGS);
|
||||
flow_wildcards_set_xxreg_mask(&match->wc, xxreg_idx, mask);
|
||||
flow_set_xxreg(&match->flow, xxreg_idx, ovs_u128_and(value, mask));
|
||||
}
|
||||
|
||||
void
|
||||
match_set_actset_output(struct match *match, ofp_port_t actset_output)
|
||||
{
|
||||
|
Reference in New Issue
Block a user