mirror of
https://github.com/openvswitch/ovs
synced 2025-10-19 14:37:21 +00:00
learn: Allow read-only fields to be matched.
nxm_dst_check() requires a writable field. Since NX_LEARN_DST_MATCH only matches on a field and doesn't write to a field, use nxm_src_check() for that case instead. Bug #7507. Reported-by: Michael Mao <mmao@nicira.com>
This commit is contained in:
@@ -160,7 +160,9 @@ learn_check(const struct nx_action_learn *learn, const struct flow *flow)
|
||||
int dst_ofs = ntohs(get_be16(&p));
|
||||
int error;
|
||||
|
||||
error = nxm_dst_check(dst_field, dst_ofs, n_bits, &rule.flow);
|
||||
error = (dst_type == NX_LEARN_DST_LOAD
|
||||
? nxm_dst_check(dst_field, dst_ofs, n_bits, &rule.flow)
|
||||
: nxm_src_check(dst_field, dst_ofs, n_bits, &rule.flow));
|
||||
if (error) {
|
||||
return error;
|
||||
}
|
||||
|
Reference in New Issue
Block a user