mirror of
https://github.com/openvswitch/ovs
synced 2025-08-31 06:15:47 +00:00
ofp-parse: Fix typo in consistency check.
This check in parse_ofp_str__() attempted to detect inconsistencies between matches and actions, or inconsistencies within the actions. In this case, ofpacts_check() would effectively zero the "usable_protocols" and return 0 (ie, OK). However, when checking the return parameter, it checks the pointer rather than the value. In practice, this seems to only come up for fields which are used internally in OVS and not exposed for matching from the controller, like tunnel flags or skb_priority. Found by MIT STACK undefined behaviour checker. Signed-off-by: Joe Stringer <joestringer@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
This commit is contained in:
@@ -477,7 +477,7 @@ parse_ofp_str__(struct ofputil_flow_mod *fm, int command, char *string,
|
||||
|
||||
err = ofpacts_check(ofpacts.data, ofpacts.size, &fm->match.flow,
|
||||
OFPP_MAX, fm->table_id, 255, usable_protocols);
|
||||
if (!err && !usable_protocols) {
|
||||
if (!err && !*usable_protocols) {
|
||||
err = OFPERR_OFPBAC_MATCH_INCONSISTENT;
|
||||
}
|
||||
if (err) {
|
||||
|
Reference in New Issue
Block a user