Remove the restriction that pop MPLS to an ethtype is
considered inconsistent.

As it happens this is allowed for OpenFlow 1.0, and thus
the tests in the Open vSwtich test-suite, by virtue of
inconsistent actions being allowed in the case of OpenFlow 1.0.

Its not clear to me why they should be considered inconsistent
or disallowed for other OpenFlow versions.

This was found using Ryu tests via the new make check-ryu target.
It allows all of the "POP_MPLS"[1] tests to pass where they previously
failed.

[1] http://osrg.github.io/ryu-certification/switch/ovs

Signed-off-by: Simon Horman <ho...@verge.net.au>
---
 lib/ofp-actions.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/lib/ofp-actions.c b/lib/ofp-actions.c
index 781c3a1..623c726 100644
--- a/lib/ofp-actions.c
+++ b/lib/ofp-actions.c
@@ -2068,9 +2068,6 @@ ofpact_check__(enum ofputil_protocol *usable_protocols, 
struct ofpact *a,
 
     case OFPACT_POP_MPLS:
         flow->dl_type = ofpact_get_POP_MPLS(a)->ethertype;
-        if (!eth_type_mpls(flow->dl_type)) {
-            inconsistent_match(usable_protocols);
-        }
         return 0;
 
     case OFPACT_SAMPLE:
-- 
1.8.5.2

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to