OpenFlow message processing for new loxi
Depends-On: Id69c8597eb4564653c56cdc90f2dcec50afbdd25
Change-Id: Ib14fbadd3debf98ce1d56343179f8e7929f8ade8
diff --git a/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java b/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
index f9858a4..5e0fae4 100644
--- a/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
+++ b/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
@@ -110,6 +110,7 @@
import java.util.Collections;
import java.util.Comparator;
import java.util.Dictionary;
+import java.util.EnumSet;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -364,12 +365,14 @@
OFPortMod.Builder pmb = sw.factory().buildPortMod();
OFPort port = OFPort.of((int) portNumber.toLong());
pmb.setPortNo(port);
- if (enable) {
- pmb.setConfig(0x0); // port_down bit 0
- } else {
- pmb.setConfig(0x1); // port_down bit 1
+ Set<OFPortConfig> portConfig = EnumSet.noneOf(OFPortConfig.class);
+ if (!enable) {
+ portConfig.add(OFPortConfig.PORT_DOWN);
}
- pmb.setMask(0x1);
+ pmb.setConfig(portConfig);
+ Set<OFPortConfig> portMask = EnumSet.noneOf(OFPortConfig.class);
+ portMask.add(OFPortConfig.PORT_DOWN);
+ pmb.setMask(portMask);
pmb.setAdvertise(0x0);
for (OFPortDesc pd : sw.getPorts()) {
if (pd.getPortNo().equals(port)) {