I was performing a Wireshark capture of a DNP session and noticed an odd packet (attached). In the DNP handshake between a Master and a Slave, it goes through a dance where the Master first disables unsolicited messages on the Slave, then re-enables them once time sync and other activities are done. For the Master, I'm using testset. For the Slave, I'm using a custom app written on top of OpenDNP3.
The testset config specifies the "Unsol" tag to have "ClassX" attributes set to "false.:
<Unsol DoTask="true" Enabled="true" Class1="false" Class2="false" Class3="false" />
This combination seems to result in a packet being generated from the Master to the Slave requesting the spontaneous messages be enabled, yet no message types are (appropriately) specified. Wireshark parses this as a malformed packet.
Either this is a Wireshark parser problem or an interoperability bug with OpenDNP3. Anyone have an idea?
Thanks,
Chris