Wireshark-dev: Re: [Wireshark-dev] plugins to builtins

From: Ulf Lamping <ulf.lamping@xxxxxxxxxxxxxx>
Date: Tue, 21 Jun 2011 11:36:13 +0200
Am 21.06.2011 10:23, schrieb Roland Knall:
Now, the problems I had with the SercosIII plugin came from the fact,
that it was a plugin, and therefore its proto_register method was
called after(!) the proto_register method for the built-in dissectors.
This lead to some confusion, where the dissector was not registered
correctly. It was an issue on my part, and got fixed, by putting the
registration code in the correct function (proto_reg_handoff), and
providing a fallback, if the dissector could not be loaded (dissection
by simply adding on to the SercosIII ethertype), or did not contain
the correct heuristic dissector. The same method will be applied by
myself for the Profinet code. The only difference on my part for
Profinet being builtin would be, that I would not need the fallback.

Well, if you don't have the right distinction between the register and handoff calls, you (or someone else) would sooner or later run into trouble anyway. You just can't depend on the sequence the register calls are done for the dissectors.

But yes, if you depend on a plugin, the "didn't found the plugin, now what?" code needs to be additionally coded compared to a builtin.

Sure, never blamed wireshark here. But one of your arguments was the
easy method of distributing a new version for the plugin. We all know,
that Windows can sometimes be very tricky when it comes to loading
DLL's, therefore the same mix-up can happen here.

No question, with plugins it's easier to shoot yourself in the foot. As mentioned, I have some practise here ;-)

My argument was more on the line of being the path-layer for other
fieldbus protocols. Wireshark being open source, I think it really
does not matter that much, if the protocol get's the official support,
or not. I don't think, that any user organization would mind, having
one more debugging tool.

Part of the story is some PNO marketing announcement years ago (don't remember for sure, something like: "you can now decode Profinet with the free Wireshark tool"). Some time later, protocol support of other fieldbus protocols magically appeared in Wireshark :-)

At least that's the story as I remember it. Obviously, I'm standing on the shoulders of giants anyway ...

Regards, ULFL