ofproto-dpif: Ignore ECN bits in OFPAT_SET_NW_TOS actions.
authorBen Pfaff <blp@nicira.com>
Mon, 18 Jul 2011 22:17:57 +0000 (15:17 -0700)
committerBen Pfaff <blp@nicira.com>
Wed, 20 Jul 2011 16:47:36 +0000 (09:47 -0700)
OpenFlow 1.0 doesn't say that the ECN bits in OFPAT_SET_NW_TOS actions must
be zero, but Open vSwitch ODP implementations do require that, so mask off
those bits before storing the nw_tos into the flow.

ofproto/ofproto-dpif.c

index e50d72b6ae57caf6682f80a542e4f693bc571fe8..9d2f5ba4dd8728af4918a09741d77be8e99ba81e 100644 (file)
@@ -3151,7 +3151,7 @@ do_xlate_actions(const union ofp_action *in, size_t n_in,
             break;
 
         case OFPUTIL_OFPAT_SET_NW_TOS:
-            ctx->flow.nw_tos = ia->nw_tos.nw_tos;
+            ctx->flow.nw_tos = ia->nw_tos.nw_tos & IP_DSCP_MASK;
             break;
 
         case OFPUTIL_OFPAT_SET_TP_SRC: