tree f0b31db6c33d49f69d71d031607948abd09b007b
parent db7295e7fee9b0ab73422862da3c8bc61b202db4
author Rich Lane <rlane@bigswitch.com> 1376374272 -0700
committer Rich Lane <rlane@bigswitch.com> 1376414313 -0700

flow_query: handle different switch representations of nw src/dst masks

There are multiple wire representations of the same OpenFlow match. One example
is the nw src/dst masks, where mask indices 32 to 63 are equivalent. A switch
may return a different representation of the same match in a flow stats reply
than was originally sent in a flow-mod, and the flow_query tests need to handle
this.

The solution is to define a canonical representation of the match for the
purpose of checking equality. In this case all nw src/dst mask indices >= 32
are changed to 32. The main change is canonicalizing the match received from
the switch (in `flow_tbl_verify`) before checking it against the already
canonical matches sent to the switch.
