SimpleClient secure mode fixed
[openflowjava.git] / simple-client / src / main / java / org / opendaylight / openflowjava / protocol / impl / clients / SimpleClientHandler.java
index 04147af06470a639d3cc75ba2d19ee6217e27f7e..e9453b58437ada987f4763909aee3742c7881f81 100644 (file)
@@ -19,7 +19,7 @@ import com.google.common.util.concurrent.SettableFuture;
 public class SimpleClientHandler extends ChannelInboundHandlerAdapter {\r
 \r
     protected static final Logger LOGGER = LoggerFactory.getLogger(SimpleClientHandler.class);\r
-    private static final int OFP_HEADER_LENGTH = 8;\r
+    private static final int LENGTH_INDEX_IN_HEADER = 2;\r
     private SettableFuture<Boolean> isOnlineFuture;\r
     protected ScenarioHandler scenarioHandler;\r
 \r
@@ -34,18 +34,13 @@ public class SimpleClientHandler extends ChannelInboundHandlerAdapter {
 \r
     @Override\r
     public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {\r
-        LOGGER.info("SimpleClientHandler - start of read");\r
         ByteBuf bb = (ByteBuf) msg;\r
         if (LOGGER.isDebugEnabled()) {\r
             LOGGER.debug("<< " + ByteBufUtils.byteBufToHexString(bb));\r
         }\r
-        \r
-        if (bb.readableBytes() < OFP_HEADER_LENGTH) {\r
-            LOGGER.debug("too few bytes received: "+bb.readableBytes()+" - wait for next data portion");\r
-            return;\r
-        }\r
-        int msgSize = bb.getUnsignedShort(2);\r
-        byte[] message = new byte[msgSize];\r
+        int length = bb.getUnsignedShort(LENGTH_INDEX_IN_HEADER);\r
+        LOGGER.info("SimpleClientHandler - start of read");\r
+        byte[] message = new byte[length];\r
         bb.readBytes(message);\r
         scenarioHandler.addOfMsg(message);\r
         LOGGER.info("end of read");\r