Setting Bottom of Stack field as 1 while pushing lowest label
diff --git a/src/main/java/net/onrc/onos/core/drivermanager/OFSwitchImplCPqD13.java b/src/main/java/net/onrc/onos/core/drivermanager/OFSwitchImplCPqD13.java
index 6ed35b4..81586d8 100644
--- a/src/main/java/net/onrc/onos/core/drivermanager/OFSwitchImplCPqD13.java
+++ b/src/main/java/net/onrc/onos/core/drivermanager/OFSwitchImplCPqD13.java
@@ -1004,6 +1004,10 @@
             if (b.mplsLabel != -1) {
                 OFAction pushLabel = factory.actions().buildPushMpls()
                         .setEthertype(EthType.MPLS_UNICAST).build();
+                OFOxmMplsBos bosX = factory.oxms()
+                        .mplsBos(OFBooleanValue.TRUE);
+                OFAction setBX = factory.actions().buildSetField()
+                        .setField(bosX).build();
                 OFOxmMplsLabel lid = factory.oxms()
                         .mplsLabel(U32.of(b.mplsLabel));
                 OFAction setLabel = factory.actions().buildSetField()
@@ -1012,6 +1016,7 @@
                 OFAction decrTtl = factory.actions().decMplsTtl();
                 actions.add(pushLabel);
                 actions.add(setLabel);
+                actions.add(setBX);
                 actions.add(copyTtl);
                 actions.add(decrTtl);
             }
@@ -1061,6 +1066,10 @@
             if (b.mplsLabel != -1) {
                 OFAction pushLabel = factory.actions().buildPushMpls()
                         .setEthertype(EthType.MPLS_UNICAST).build();
+                OFOxmMplsBos bosX = factory.oxms()
+                        .mplsBos(OFBooleanValue.TRUE);
+                OFAction setBX = factory.actions().buildSetField()
+                        .setField(bosX).build();
                 OFOxmMplsLabel lid = factory.oxms()
                         .mplsLabel(U32.of(b.mplsLabel));
                 OFAction setLabel = factory.actions().buildSetField()
@@ -1069,6 +1078,7 @@
                 OFAction decrTtl = factory.actions().decMplsTtl();
                 actions.add(pushLabel);
                 actions.add(setLabel);
+                actions.add(setBX);
                 actions.add(copyTtl);
                 actions.add(decrTtl);
             }