-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Critical
-
Resolution: Done
-
Affects Version/s: 1.0.0
-
Component/s: None
-
Labels:None
There is another vulnerability in the packet deserializers which can cause NullPointerExceptions to be thrown, which in turn causes ONOS to disconnect the switch. Similar to ONOS-605.
2015-01-20 20:17:34,412 | ERROR | w I/O worker #13 | OFChannelHandler | 136 - org.onosproject.onos-of-ctl - 1.0.1.SNAPSHOT | Error while processing message from switch org.onosproject.openflow.drivers.DriverManager$1@92a6745state ACTIVE java.lang.NullPointerException at org.onlab.packet.LLDPOrganizationalTLV.deserialize(LLDPOrganizationalTLV.java:159) at org.onlab.packet.LLDP.deserialize(LLDP.java:141) at org.onlab.packet.Ethernet.deserialize(Ethernet.java:344) at org.onosproject.openflow.controller.DefaultOpenFlowPacketContext.parsed(DefaultOpenFlowPacketContext.java:90) at org.onosproject.provider.of.packet.impl.OpenFlowPacketProvider$InternalPacketProvider.handlePacket(OpenFlowPacketProvider.java:159) at org.onosproject.openflow.controller.impl.OpenFlowControllerImpl.processPacket(OpenFlowControllerImpl.java:194) at org.onosproject.openflow.controller.impl.OpenFlowControllerImpl$OpenFlowSwitchAgent.processMessage(OpenFlowControllerImpl.java:413) at org.onosproject.openflow.controller.driver.AbstractOpenFlowSwitch.handleMessage(AbstractOpenFlowSwitch.java:192) at org.onosproject.openflow.controller.impl.OFChannelHandler.dispatchMessage(OFChannelHandler.java:1169) at org.onosproject.openflow.controller.impl.OFChannelHandler.access$1800(OFChannelHandler.java:81) at org.onosproject.openflow.controller.impl.OFChannelHandler$ChannelState$8.processOFPacketIn(OFChannelHandler.java:623) at org.onosproject.openflow.controller.impl.OFChannelHandler$ChannelState.processOFMessage(OFChannelHandler.java:871) at org.onosproject.openflow.controller.impl.OFChannelHandler.messageReceived(OFChannelHandler.java:1150) at org.jboss.netty.handler.timeout.IdleStateAwareChannelHandler.handleUpstream(IdleStateAwareChannelHandler.java:36)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.handler.timeout.ReadTimeoutHandler.messageReceived(ReadTimeoutHandler.java:184)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.handler.timeout.IdleStateHandler.messageReceived(IdleStateHandler.java:294)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:108)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:318) at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:89)[43:org.jboss.netty:3.9.2.Final] at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)[43:org.jboss.netty:3.9.2.Final] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_25] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_25] at java.lang.Thread.run(Thread.java:745)[:1.8.0_25]