Wireshark-dev: Re: [Wireshark-dev] Clang code analysis buildbot

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Sat, 22 Mar 2014 10:54:34 -0700
On Mar 22, 2014, at 8:41 AM, Hadriel Kaplan <hadriel.kaplan@xxxxxxxxxx> wrote:

> 
> On Mar 21, 2014, at 5:31 PM, Guy Harris <guy@xxxxxxxxxxxx> wrote:
> 
>> On Mar 21, 2014, at 2:18 PM, Hadriel Kaplan <hadriel.kaplan@xxxxxxxxxx> wrote:
>> 
>>> How long does the clang code analysis buldbot
>> 
>> You mean the "beat the living hell out of Wireshark to look for bugs in many different ways" buildbot? :-)
> 
> What does it actually *do*?

The partial list in my previous message said:

	scan-build, running the Clang static analyzer;

	cov-build, building to prepare to hand Wireshark off to Coverity;

	fuzz-menagerie, repeatedly running fuzzed capture files through TShark to make sure it doesn't crash.

There's also a phase in which it runs capture files with random data ("random" in the sense of "generated by a pseudo-random number generator") through TShark as well.

> It looks like some of the crash bugs it submits are GUI-specific

Unlikely, given that it's testing TShark, not Wireshark, with the fuzzed captures.  See tools/fuzz-test.sh.

> and only occur way down the packet list, so presumably it actually loads the fuzzed files in wireshark

Nope.  It really does run them through TShark; where has the buildbot filed a bug in which *Wireshark* crashed?

> Does it also try some of the graphs/analyzers?

No, it doesn't test any of the Wireshark GUI.

> I ask because I can't repo a crash with bug 9887 by just viewing it,

Perhaps:

	1) for some unknown reason, it crashes on Ubuntu (64-bit x86) but not OS X (64-bit x86 in your case, as you are, as I remember, running a recent OS X version);

	2) you have different preferences set (I think the buildbot has an empty set of preferences, so the defaults are used);

	3) perhaps, for some reason, it crashes in TShark but doesn't crash in Wireshark - for example, if you don't have any color filters set and don't have a display filter, the path where it reads in the capture doesn't generate a protocol tree, but I think the TShark test generates a protocol tree.

> but if I select Telephony->Voip Calls... boom goes the dynamite.

That might be a separate bug.