I've used splint before, but I started with Gimpel's so I tend to use
that more these days. The results are very interesting indeed. It
seems that both of them detect different types of problems, and may
complement each other. Since splint is free, understandably, that'll
most likely be the Ethereal "standard", if anyone chooses to run lint on
the code. However, if anyone is interested in the Gimpel output, I can
work to provide output of all dissectors, if you think it's of value.
- Chris
(P.S. http://www.gimpel.com/html/ptch80.htm has a link to the msg.txt
file, which describes the lint output messages in greater detail, in
case anyone is unsure as to why it might be complaining about a
particular piece of code.)
-----Original Message-----
From: ethereal-dev-bounces@xxxxxxxxxxxx
[mailto:ethereal-dev-bounces@xxxxxxxxxxxx] On Behalf Of Gerald Combs
Sent: Thursday, December 30, 2004 11:02 AM
To: Ethereal development
Subject: Re: [Ethereal-dev] Use of C99 code in 0.10.8
Maynard, Chris wrote:
> A tool such as lint will probably catch all of those situations Guy
> listed below ... and then some!
>
> As an example of what lint can do, I ran lint twice on the
> epan/dissectors/packet-bssgp.c dissector and attached are the results.
> The 1st time I let lint complain about pretty much EVERYTHING. The
> second time, I quieted it down by turning off a lot of warnings, etc.
> It's difficult to know what to turn off, but if you don't turn off
> things, you can be swamped with messages that you really don't care
> about. Anyway, just keep in mind that the tool can be tuned to be as
> quiet or noisy as you want it to be.
Out of curiosity I ran Splint (http://www.splint.org/) against
packet-bssgp.c. The output is attached, and looks nothing like the
Gimpel lint output.
Also attached is a patch to add a "test-splint" target to the Unix
makefiles. I haven't checked it in yet because Splint has trouble
parsing several files.
-----------------------------------------
This email may contain confidential and privileged material for the sole
use of the intended recipient(s). Any review, use, retention, distribution
or disclosure by others is strictly prohibited. If you are not the intended
recipient (or authorized to receive for the recipient), please contact the
sender by reply email and delete all copies of this message. Also, email is
susceptible to data corruption, interception, tampering, unauthorized
amendment and viruses. We only send and receive emails on the basis that we
are not liable for any such corruption, interception, tampering, amendment
or viruses or any consequence thereof.