Wireshark-dev: Re: [Wireshark-dev] Lint of packet-tcp.c
From: Jaap Keuter <jaap.keuter@xxxxxxxxx>
Date: Wed, 13 Aug 2008 23:50:28 +0200
Hi,

I've committed revision 26010 with some fixes for the really obvious cases.
Please review the changes, found here: http://anonsvn.wireshark.org/viewvc/index.py?view=rev&revision=26010

Most of the lint output is caused by:
- signed / unsigned differences
- TRY / CATCH / RETHROW macro
which could have merit, that is for further study.

Thanx,
Jaap


Maynard, Chris wrote:
Some time ago when Wireshark was still Ethereal, I had run lint against
one or more of the dissectors and provided some results to the mailing
list and offered to provide lint output for more dissectors if there was
interest, but there didn't appear to be any at the time.

In case that's changed now, I thought I would run lint against a
dissector again, provide the results, and see if interests levels have
changed.  I know the Wireshark code has been run against Coverity's
tools and there was a concerted effort to correct the problems it found,
so maybe there's interest in lint now too?  I know lint can be very
noisy and produce tons and tons of warnings if not properly tamed, but I
think it may have found some real bugs in the TCP dissector and is worth
a look.  Here are a couple of examples from the log:
                                                                    _
			tcpinfo->seq = msp->seq;
epan\dissectors\packet-tcp.c(1618) : Warning 613: Possible use of null
pointer
    'msp' in left argument to operator '->' [Reference: file
    epan\dissectors\packet-tcp.c: lines 1485, 1507]
epan\dissectors\packet-tcp.c(1485) : Info 831: Reference cited in prior
message
epan\dissectors\packet-tcp.c(1507) : Info 831: Reference cited in prior
message

                                             _
  char    relative_modifier[10] = "(relative)";
epan\dissectors\packet-tcp.c(2477) : Info 784: Nul character truncated
from
    string

Anyway, the lint output is attached for what it's worth.  (I purposely
left most warnings in to make sure I didn't inadvertently mask a bug,
but I think it would be perfectly reasonable to disable several of the
warnings ... but that comes later.)

- Chris

<<packet-tcp-lint.log>> CONFIDENTIALITY NOTICE: The contents of this email are confidential
and for the exclusive use of the intended recipient. If you receive this
email in error, please delete it from your system immediately and notify us either by email, telephone or fax. You should not copy,
forward, or otherwise disclose the content of the email.