https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2981
Peter Harris <wireshark@xxxxxxxxxxxxxxxxxxx> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #2792|review_for_checkin? |
Flag| |
Attachment #2792 is|0 |1
obsolete| |
Attachment #2799| |review_for_checkin?
Flag| |
--- Comment #13 from Peter Harris <wireshark@xxxxxxxxxxxxxxxxxxx> 2009-03-02 13:38:22 PDT ---
Created an attachment (id=2799)
--> (https://bugs.wireshark.org/bugzilla/attachment.cgi?id=2799)
Patch to add extension support v4: Use _U_ for unreferenced
variables/functions, fix infinite loop found by fuzz
Ah, I was unaware that Wireshark had the _U_ define. Thanks! Patch updated.
I've uploaded a half a dozen .pcap files to the Wiki's SampleCaptures page.
Fuzz testing over those files turned up an infinite loop in GLX/Render when the
length field on the wire is invalid. Fixed in v4 of the patch.
I did double-check the definition of _U_. It only appears to be defined for
gcc. The attribute is described as useful for C++ objects where the constructor
and destructor are important, but the object is otherwise never used, so it
sounds safe to use it on variables/functions that are actually referenced.
v4 also uses "static _U_" for a few functions that were previously non-static.
This is a good thing: it cuts down on namespace pollution, and it should (in
theory) allow the linker to eliminate a few of the functions (except on
Windows, where it could already toss unreferenced functions, due to Windows
forcing the equivalent of -fvisibility=hidden).
I'm a little queasy about -Wall -Werror -- some day, gcc will start warning
about something else (eg: non-system defines of reserved names (such as those
that start with an underscore followed by a capital letter)), and the build
will error. But that's beyond the scope of this particular patch.
--
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.