Merge branch 'master' of ssh://gerrit.onlab.us:29418/onos-next
diff --git a/openflow/ctl/src/main/java/org/onlab/onos/openflow/controller/impl/OFChannelHandler.java b/openflow/ctl/src/main/java/org/onlab/onos/openflow/controller/impl/OFChannelHandler.java
index 5047867..4ea2f71 100644
--- a/openflow/ctl/src/main/java/org/onlab/onos/openflow/controller/impl/OFChannelHandler.java
+++ b/openflow/ctl/src/main/java/org/onlab/onos/openflow/controller/impl/OFChannelHandler.java
@@ -41,7 +41,6 @@
import org.projectfloodlight.openflow.protocol.OFHelloElem;
import org.projectfloodlight.openflow.protocol.OFMessage;
import org.projectfloodlight.openflow.protocol.OFPacketIn;
-import org.projectfloodlight.openflow.protocol.OFPacketOut;
import org.projectfloodlight.openflow.protocol.OFPortDescStatsReply;
import org.projectfloodlight.openflow.protocol.OFPortDescStatsRequest;
import org.projectfloodlight.openflow.protocol.OFPortStatus;
@@ -661,10 +660,9 @@
* However, we could be more forgiving
* @param h the channel handler that received the message
* @param m the message
- * @throws SwitchStateException
- * @throws SwitchStateExeption we always through the execption
+ * @throws SwitchStateException we always throw the exception
*/
- // needs to be protected because enum members are acutally subclasses
+ // needs to be protected because enum members are actually subclasses
protected void illegalMessageReceived(OFChannelHandler h, OFMessage m)
throws SwitchStateException {
String msg = getSwitchStateMessage(h, m,
@@ -1025,7 +1023,9 @@
// all state for the original switch (with the same dpid),
// which we obviously don't want.
log.info("{}:removal called", getSwitchInfoString());
- sw.removeConnectedSwitch();
+ if (sw != null) {
+ sw.removeConnectedSwitch();
+ }
} else {
// A duplicate was disconnected on this ChannelHandler,
// this is the same switch reconnecting, but the original state was
diff --git a/openflow/ctl/src/main/java/org/onlab/onos/openflow/drivers/impl/OFSwitchImplCPqD13.java b/openflow/ctl/src/main/java/org/onlab/onos/openflow/drivers/impl/OFSwitchImplCPqD13.java
index c4c2e19..3d60dfa 100644
--- a/openflow/ctl/src/main/java/org/onlab/onos/openflow/drivers/impl/OFSwitchImplCPqD13.java
+++ b/openflow/ctl/src/main/java/org/onlab/onos/openflow/drivers/impl/OFSwitchImplCPqD13.java
@@ -1188,7 +1188,8 @@
.setHardTimeout(0)
.setXid(getNextTransactionId())
.build();
- sendMsg(tableMissEntry);
+
+ write(tableMissEntry);
}
private void sendBarrier(boolean finalBarrier) {
@@ -1200,7 +1201,8 @@
.buildBarrierRequest()
.setXid(xid)
.build();
- sendMsg(br);
+
+ write(br);
}
@Override
@@ -1210,7 +1212,7 @@
@Override
public void write(OFMessage msg) {
- this.channel.write(msg);
+ this.channel.write(Collections.singletonList(msg));
}