Commit Graph

50223 Commits

Author SHA1 Message Date
Guy Harris 4dbed5fbd0 According to
http://gcc.gnu.org/onlinedocs/gcc-4.8.2/gcc/Code-Gen-Options.html#Code-Gen-Options

-ftrapv "generates traps for signed overflow on addition, subtraction,
multiplication operations." and -fwrapv "instructs the compiler to
assume that signed arithmetic overflow of addition, subtraction and
multiplication wraps around using twos-complement representation."

Those seem mutually-exclusive to me, and we probably want wrapping, not
traps, as there's probably a fair bit of code out there that explicitly
or implicitly assumes wrapping.  (Actually, we really want to avoid
signed arithmetic for the cases that most matter, such as offsets and
lengths, but, unfortunately, we currently have API conventions that
allow negative values for lengths, either with -1 meaning "to the end"
or with negative values meaning "relative to the end".)  In addition,
there seem to be some bugs complaining that -ftrapv doesn't always cause
traps on signed integer overflow.

We seem to be seeing crashes in Lemon on the Solaris buildbot subsequent
to adding -ftrapv; I don't know whether that's an overflow being
detected, a bug in the compiler, or something unrelated, especially
given that we're using Sun C, not GCC, on the Solaris buildbot. 
However, we'll try removing -ftrapv, to see if it fixes the problem; the
MIT CSAIL paper in question wasn't really recommending all the GCC
options it mentioned (which, as noted, wouldn't make sense, as -ftrapv
and -fwrapv appear to be mutually-exclusive).

svn path=/trunk/; revision=53556
2013-11-24 22:51:44 +00:00
Guy Harris 91159d959f Note that I've filed a Samba bug for one of the problems.
svn path=/trunk/; revision=53555
2013-11-24 22:13:28 +00:00
Guy Harris 58771673a4 pidl would tag all pinfo arguments as unused, as it doesn't take the
effort to figure out whether they *are* used (and there's no point in it
doing so - might as well just flag them preemptively).

pidl can't handle this, at least not on OS X, as it's not handling the
C++/C99-style dissectors in the IDL for NSPI, so we manually put the
_U_s back.

svn path=/trunk/; revision=53554
2013-11-24 21:21:42 +00:00
Guy Harris 0f28eb7cc6 Squelch a Coverity warning (not necessary, but it still complains).
svn path=/trunk/; revision=53553
2013-11-24 21:15:22 +00:00
Michael Mann e2df7c83cb Move dceprc_procedure_name from packet_info to dcerpc_info. Doesn't appear to be "used" by dissectors, just stored (for help in debugging?).
svn path=/trunk/; revision=53552
2013-11-24 20:55:55 +00:00
Balint Reczey ee147994b7 Use GCC flags to avoid optimization problems due to undefined behaviour
Adding flags suggested by article at:
http://pdos.csail.mit.edu/~xi/papers/stack-sosp13.pdf

svn path=/trunk/; revision=53551
2013-11-24 20:28:25 +00:00
Graham Bloice e36f3b0526 Ensure the WIRESHARK_BASE_DIR env var is in cmake format. Required for the regex in FindGTK3.cmake.
svn path=/trunk/; revision=53550
2013-11-24 19:12:07 +00:00
Bill Meier 7510deeab7 Create/use some extended value_strings;
Do a few trivial whitespace tweaks.

svn path=/trunk/; revision=53549
2013-11-24 15:55:10 +00:00
Gerald Combs 3b324fd7da [Automatic manuf, services and enterprise-numbers update for 2013-11-24]
svn path=/trunk/; revision=53546
2013-11-24 15:03:43 +00:00
Jeff Morriss a98072967e Fix checkAPIs: don't try to feed VALS() into FT_BOOLEANs.
Also, as per Peter Harris' request, update copyright date.

svn path=/trunk/; revision=53545
2013-11-24 14:27:52 +00:00
Jakub Zawadzki 6aec20c782 Rmove packet_info argument from packet_list_append(), never used.
Part of attachment 12060, from Didier Gautheron (bug #9419).

svn path=/trunk/; revision=53544
2013-11-24 12:49:50 +00:00
Guy Harris 92fba9d072 Actually, the "1632" types do exist, and are 16-bit for NDR and 32-bit
for NDR64, and we handle them.  The real problems are elsewhere.

svn path=/trunk/; revision=53543
2013-11-24 04:39:27 +00:00
Guy Harris 0a2519f39c These are two of the problems that pidl has with dfs.idl.
svn path=/trunk/; revision=53542
2013-11-24 04:15:25 +00:00
Guy Harris 61cce924e4 Get rid of trailing spaces, fix some proto_tree_add_item() calls as per
the result of pidl on dce.idl.

(We can't just regenerate it, as there are some pidl bugs that cause bad
code to be generated.)

svn path=/trunk/; revision=53541
2013-11-24 04:14:00 +00:00
Guy Harris f7e5e2d594 The issue with misc.idl was a .cnf file that needed to be updated.
Give details of the problems with the other files.

svn path=/trunk/; revision=53540
2013-11-24 03:33:17 +00:00
Guy Harris eb223ff796 Regenerate - new API changes, get rid of trailing whitespace.
svn path=/trunk/; revision=53539
2013-11-24 03:21:50 +00:00
Guy Harris f070b9e0e2 Fix to match API changes.
svn path=/trunk/; revision=53538
2013-11-24 03:20:25 +00:00
Guy Harris 9410fcccbc Fix line endings, set svn:eol-style to native.
svn path=/trunk/; revision=53537
2013-11-24 03:18:22 +00:00
Guy Harris d30959df3e Update a date, explain what the problems are with a bunch of IDL files,
add another file that *might* be generating incorrect code.

svn path=/trunk/; revision=53536
2013-11-24 02:58:26 +00:00
Guy Harris 3f6b85ecbe Regenerate - for whatever reason, the fields come out in a different
random order, but nothing else changes.

svn path=/trunk/; revision=53535
2013-11-24 02:57:24 +00:00
Guy Harris 70cea27d59 Regenerated with the current version of pidl; mainly removes trailing
white space, but also gets rid of an apparently-unnecessary _U_ for one
argument.

svn path=/trunk/; revision=53534
2013-11-24 02:51:36 +00:00
Guy Harris cafef8b111 Updates to:
suggest using our version of pidl, given that its Wireshark
	parser generator has changes to support the current internal
	Wireshark APIs for dissectors;

	suggest using "--includedir ." to make IDL files in
	subdirectories of epan/dissectors/pidl work;

	update the list of IDL files with issues;

	reformat to 80x66 (if it's good enough for Herman Hollerith,
	it's good enough for me!).

svn path=/trunk/; revision=53533
2013-11-24 02:45:38 +00:00
Jeff Morriss de2a922b55 Some patches from Peter Harris to make it possible to build the X11 dissector
again (and some various other improvements):

Rebuild the dissector with the latest xcbproto and mesa.


Subject: [PATCH 01/11] X11 dissector: Support CARD64 and INT64 types
These types are used by the new Present extension.

Subject: [PATCH 02/11] X11 dissector: Un-blacklist a few structures
The xinput structs are used by the latest xcb/proto, and the xkb
struct has been removed.

Subject: [PATCH 03/11] X11 dissector: Add hack for xinput:ChangeProperty
xinput:ChangeProperty should use switch/case, but only switch/bitcase
is supported at the moment. Add (hopefully temporary) hack.

Subject: [PATCH 04/11] X11 dissector: Use namespace for types
In particular, the name of the xsync struct 'INT64' collides with a
basic type of the same name.

Subject: [PATCH 05/11] X11 dissector: Add support for "Generic" events
All new extensions are using the new "Generic" events instead of
traditional events, because there aren't enough traditional event
numbers.

Denoted by <event xge="true"> in xcb/proto.

Subject: [PATCH 06/11] X11 dissector: Blacklist unused structures

Subject: [PATCH 07/11] X11 dissector: Support multiple enumref in a bitcase
XKB is weird.

Subject: [PATCH 08/11] X11 dissector: Support sumof

Subject: [PATCH 09/11] X11 dissector: Stop generating unused-but-set variables
(This patch also reverts r53298/r53299.)

svn path=/trunk/; revision=53532
2013-11-24 01:32:55 +00:00
Jeff Morriss a434d9647e Some patches from Peter Harris to make it possible to build the X11 dissector
again (and some various other improvements):

Rebuild the dissector with the latest xcbproto and mesa.


Subject: [PATCH 01/11] X11 dissector: Support CARD64 and INT64 types
These types are used by the new Present extension.

Subject: [PATCH 02/11] X11 dissector: Un-blacklist a few structures
The xinput structs are used by the latest xcb/proto, and the xkb
struct has been removed.

Subject: [PATCH 03/11] X11 dissector: Add hack for xinput:ChangeProperty
xinput:ChangeProperty should use switch/case, but only switch/bitcase
is supported at the moment. Add (hopefully temporary) hack.

Subject: [PATCH 04/11] X11 dissector: Use namespace for types
In particular, the name of the xsync struct 'INT64' collides with a
basic type of the same name.

Subject: [PATCH 05/11] X11 dissector: Add support for "Generic" events
All new extensions are using the new "Generic" events instead of
traditional events, because there aren't enough traditional event
numbers.

Denoted by <event xge="true"> in xcb/proto.

Subject: [PATCH 06/11] X11 dissector: Blacklist unused structures

Subject: [PATCH 07/11] X11 dissector: Support multiple enumref in a bitcase
XKB is weird.

Subject: [PATCH 08/11] X11 dissector: Support sumof

Subject: [PATCH 09/11] X11 dissector: Stop generating unused-but-set variables
(This patch also reverts r53298/r53299.)

svn path=/trunk/; revision=53531
2013-11-24 01:32:20 +00:00
Evan Huus 1db1b8e2bb Convert ASN1 dissectors from ep_address_to_str to address_to_str. Clean up a bit
of ansi_tcap code while in the neighbourhood.

svn path=/trunk/; revision=53530
2013-11-23 22:37:33 +00:00
Michael Mann 318d38b576 Use 32bit key in p_add_proto_data() and friends. Bug 9453 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9453)
From Dirk

svn path=/trunk/; revision=53529
2013-11-23 22:29:31 +00:00
Evan Huus d97c9e2ff4 Implement address_to_str which is like ep_address_to_str and se_address_to_str
except it takes a wmem scope instead. Add the two emem equivalents to checkAPI
as (weakly) deprecated.

svn path=/trunk/; revision=53528
2013-11-23 22:17:27 +00:00
Evan Huus df1aec4a6b Remove old (2009) and no-longer-necessary compatibility macro.
svn path=/trunk/; revision=53527
2013-11-23 22:03:48 +00:00
Michael Mann ea63042f9b Bluetooth improvements. Bug 9446 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9446)
From Michal Labedzki 

svn path=/trunk/; revision=53525
2013-11-23 21:41:08 +00:00
Guy Harris 84e23ce90f Set a field to squelch a Coverity warning.
svn path=/trunk/; revision=53524
2013-11-23 20:10:02 +00:00
Guy Harris a18cf1975f Always check cf->edt before dereferencing it, so that Coverity doesn't
say "you checked it here, but you dereferenced it later even if it was
null when you checked it".

This obviates the need for some checks of frame_selected, as cf->edt
will be non-null iff cf->current_frame is non-null.

Always check *cf, not cfile, in set_menus_for_selected_packet(). 
Currently, cf always == &cfile, but we aren't guaranteeing that will be
true forever.

svn path=/trunk/; revision=53523
2013-11-23 19:51:02 +00:00
Michael Mann 55c6869980 Remove ip_ttl from packet_info structure.
Part of the fix includes having the IPv6 dissector populate as much of a ws_ip structure as possible to pass to subdissectors of the "ip.proto" table, so the ttl value can be picked up.

svn path=/trunk/; revision=53522
2013-11-23 19:16:05 +00:00
Pascal Quantin 9150571bf3 Check the packet length when using the "Force decoding of unknown USB control data as MBIM" option to reduce false positives.
Align text in info column.

svn path=/trunk/; revision=53521
2013-11-23 12:30:19 +00:00
Michael Mann 9b7fb8a811 Create the ability to have packet scoped "proto" data. Bug 9470 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9470)
I'm not sold on the name or module the proto_data functions live in, but I believe the function arguments are solid and gives us the most flexibility for the future.  And search/replace of a function name is easy enough to do.

The big driving force for getting this in sooner rather than later is the saved memory on ethernet packets (and IP packets soon), that used to have file_scope() proto data when all it needed was packet_scope() data (technically packet_info->pool scoped), strictly for Decode As.

All dissectors that use p_add_proto_data() only for Decode As functionality have been converted to using packet_scope().  All other dissectors were converted to using file_scope() which was the original scope for "proto" data.

svn path=/trunk/; revision=53520
2013-11-23 02:20:13 +00:00
Gerald Combs b3a24c5cc4 Replace similar code with a common routine.
svn path=/trunk/; revision=53519
2013-11-23 01:06:30 +00:00
Evan Huus 11d8147ab5 Add exception for cmake/TestWindowsFSeek.c it is copied from upstream under a
valid license, but has no recognizable header and there's no reason to carry the
delta.

svn path=/trunk/; revision=53518
2013-11-22 23:46:00 +00:00
Guy Harris 455ccca701 Slap a BSD checksum onto in_cksum.h.
svn path=/trunk/; revision=53517
2013-11-22 20:54:30 +00:00
Gerald Combs 213d47a82e Fix packet list selection signaling.
It looks like resetting the packet list model during freezing and
thawing disconnects the selection changed signal between the model and
the main window. Rename the packet list's setMenusFollowStream signal to
packetSelectionChanged and use it to trigger menu updates in the main
window.

svn path=/trunk/; revision=53516
2013-11-22 17:59:15 +00:00
Gerald Combs 779f95ab61 Make the "decode as" dialog modal (for now, at least).
svn path=/trunk/; revision=53515
2013-11-22 17:53:25 +00:00
Martin Mathieson 65e3e91208 Tweak filter names for expert items, mostly to consistently use - rather than _
svn path=/trunk/; revision=53514
2013-11-22 17:18:11 +00:00
Martin Mathieson a906b1f5fe Tidy up some TODOs
svn path=/trunk/; revision=53513
2013-11-22 16:52:28 +00:00
Alexis La Goutte f482d8737f Fix unused-const-variable error when build with clang 3.4
svn path=/trunk/; revision=53512
2013-11-22 14:52:25 +00:00
Alexis La Goutte 2350754b88 Fix unused-const-variable error when build with clang 3.4
svn path=/trunk/; revision=53511
2013-11-22 14:52:15 +00:00
Alexis La Goutte 14ee1a5a86 Fix unused-const-variable error when build with clang 3.4
svn path=/trunk/; revision=53510
2013-11-22 14:52:04 +00:00
Alexis La Goutte 0d20064172 Fix unused-const-variable error when build with clang 3.4
svn path=/trunk/; revision=53509
2013-11-22 14:51:52 +00:00
Alexis La Goutte f39f943db0 Fix unused-const-variable error when build with clang 3.4 (with ugly hack... Maybe remove all ugly INIT_FIELD/ ADD_FIELD macro)
svn path=/trunk/; revision=53508
2013-11-22 14:51:43 +00:00
Alexis La Goutte 001d79cac3 Add -Wheader-guard to Autotools and CMake
svn path=/trunk/; revision=53507
2013-11-22 14:51:31 +00:00
Pascal Quantin cebc175814 Make use of ctrl_ack_vals value_string array
svn path=/trunk/; revision=53506
2013-11-22 11:22:46 +00:00
Alexis La Goutte 6e2b1c91f4 Fix typo in top filename
svn path=/trunk/; revision=53505
2013-11-22 08:53:05 +00:00
Michael Mann 9ba190f2a5 Create multiple dissection functions if packet_info->ipproto is used to distinguish behavior.
svn path=/trunk/; revision=53504
2013-11-22 02:52:41 +00:00