Hello,
I am currently working on creating wireshark c pluggin files from DDS based IDLs. The process by which I create the wireshark pluggins is currently by hand. Is there a community accepted practice in generating wireshark c pluggin files from DDS IDLs? I am familiar with the generation of wireshark pluggins from CORBA IDL files and was wondering if there is a similar process.
v/r,
marlo
Hi,
Wireshark already has a dissector for the Real-Time Publish-Subscribe (RTPS) Wire Protocol for DDS interoperability. If your goal is to dissect RTPS in general, then that is already available.
If instead you want to dissect the data payload of an RTPS message defined from IDL, then the current RTPS dissector does not have an existing framework for accepting a "sub-dissector" for serialized data. I assume you are familar with plugin generation from IDL from using idl2wrs? If so, that generates plugins that register themselves as heuristic sub-dissectors of GIOP.
For reference, the GIOP dissector (packet-giop.c) maintains a list of registered sub-dissectors (giop_sub_list) that are registered via register_giop_user() and then looked up by try_heuristic_giop_dissector() when dissecting a packet. Something similar can be added to the RTPS (packet-rtps2.c) dissector.
Regards,
Edward
Edward Huang
Principal Software Engineer
RTI
Hi Mr Huang,
yes the current way I was generating the dissectors for specific data payloads of the RTPS message was to hand translate the IDL files to c. Also I have made them as chained dissectors in lua. I did not know of the idl2wrs, thank you for informing me of this capability. I will try it.
v/r,
marlo
Hello marlo,
I am very interested in Lua :-) Can you give some more information about the Lua dissector?
Also, if you like Lua, did you have a chance to try our Rapid Application Development tool that uses lua? It's available for download here.. let me know what you think! I worked hard on it and I would love if you can give me some feedback!
Best,
Gianpiero
Hi Gianpiero,
I am interested in the Rapid Application Development tool that you have created and will definitely use it and provide feedback. Also creating dissectors in lua for wireshark is a quick way for me to test an interface to see that the structure and the bit fields are set up correctly, then I port the dissector to c. I have not tested this out though but I have heard that wireshark dissectors in c are much faster than those written in lua.
v/r,
marlo