Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] New openSAFETY dissector

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Tue, 31 May 2011 20:27:41 -0700
On Mar 24, 2011, at 12:01 AM, Roland Knall wrote:

> Hello
> 
> The dissectory has now been fuzz-tested as well, with nearly 250 MB
> worth of various capture files. It passed.
> 
> The updated version of the patch is online.

It's checked in.

Unfortunately, the openSAFETY dissector, which is a built-in dissector, registers itself as a heuristic dissector for SERCOS III, the dissector for which is a plugin dissector.

Perhaps heur_dissector_add() should report an error to the user, rather than aborting, if the heuristic dissector table in question doesn't exist.  If it were to check the WIRESHARK_ABORT_ON_DISSECTOR_BUG environment variable, and:

	if it's set, abort if the heuristic dissector table doesn't exist;

	if it's not set, report an error to the user;

that should allow the build process to catch typos in the heuristic dissector table name but avoid having *Shark crash if plugins are missing.

However, if this is the cause of

	http://buildbot.wireshark.org/trunk/builders/Ubuntu-10.04-x64/builds/1452/steps/fuzz-menagerie/logs/stdio

then that raises the question "why isn't the SERCOS III plugin being loaded when we're doing the fuzz testing?"  If the plugins aren't getting loaded, that means they're not getting fuzz tested.

This also raises the question of whether the SERCOS III dissector should be made a built-in dissector.