ofp-util: Treat a packet-out in_port of OFPP_CONTROLLER as OFPP_NONE.
authorBen Pfaff <blp@nicira.com>
Mon, 7 May 2012 19:30:54 +0000 (12:30 -0700)
committerBen Pfaff <blp@nicira.com>
Mon, 14 May 2012 19:48:47 +0000 (12:48 -0700)
commitcd5c767c542d973191b3d9c05aa1eb4758c1259f
tree0bc3ceac4ec2f0499176e17d911c4f19769aef19
parentdeb140c65f28239381682d0da0474a4b72ce7920
ofp-util: Treat a packet-out in_port of OFPP_CONTROLLER as OFPP_NONE.

Some OpenFlow 1.0 controllers incorrectly use OPFP_CONTROLLER as the
in_port in packet-out messages, when OFPP_NONE is their intent.  Until now,
Open vSwitch has rejected such requests with an error message.  This commit
makes Open vSwitch instead treat OFPP_CONTROLLER the same as OFPP_NONE for
compatibility with those controllers.

(Also, as of this writing, OpenFlow 1.0.1 appears to be changing the port
to use from OFPP_NONE to OFPP_CONTROLLER.)

Suggested-by: Rob Sherwood <rob.sherwood@bigswitch.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/odp-util.c
lib/ofp-util.c
lib/ofp-util.h
ofproto/ofproto-provider.h
tests/ofproto.at