When a TCP segment contains the end of two or more SSL PDUs, the TCP reassembly
code passes that segment up to the SSL dissector multiple times--one for each
SSL PDU. The SSL dissector queues the packet for SSL tap listeners each time it
is invoked. Therefore a single packet can be processed by SSL tap listeners
multiple times. But the tap data that the SSL dissector sends to its tap
listeners is a linked list of all PDUs in the packet.
The SSL tap listener responsible for populating the Follow SSL Stream dialog
did not account for the possibility of seeing a packet multiple times. As a
result, it would process the entire linked list of PDUs each time it received a
packet, and that would result in some SSL PDUs showing up two or more times in
the dialog.
This patch fixes the described bug. It also implements a few slight
improvements in closely related code. See bugzilla for details.
svn path=/trunk/; revision=49387
the file selection dialog.
Call gtk_file_chooser_set_do_overwrite_confirmation() in
file_selection_new() for FILE_SELECTION_SAVE file selection dialogs,
rather than doing it in the individual callers of file_selection_new().
Use gtk_dialog_set_alternative_button_order() in file_selection_new() to
set the alternative button order, rather than using #ifdefs.
Use file_selection_new() and file_selection_run() in the graph analysis
code. (We should clean up other code that uses file_selection_new() to
use file_selection_run(), and clean up other code that uses
gtk_file_chooser_dialog_new() to use file_selection_new() and
file_selection_run().)
svn path=/trunk/; revision=49308
remove C++ incompatibilities
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8416 attachment #10404
Note: The following parts of the patch had been previously done:
asn1/snmp/packet-snmp-template.c
epan/dissectors/packet-snmp.c
epan/dissectors/packet-x11.c
Also; hostlist_table.c: code under '#ifdef HAVE_GEOIP'
didn't compile and needed a few additional patches.
svn path=/trunk/; revision=48447
Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
sizeof.
Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
strtol() and strtoul().
Change some data types to avoid those implicit conversion warnings.
When assigning a constant to a float, make sure the constant isn't a
double, by appending "f" to the constant.
Constify a bunch of variables, parameters, and return values to
eliminate warnings due to strings being given const qualifiers. Cast
away those warnings in some cases where an API we don't control forces
us to do so.
Enable a bunch of additional warnings by default. Note why at least
some of the other warnings aren't enabled.
randpkt.c and text2pcap.c are used to build programs, so they don't need
to be in EXTRA_DIST.
If the user specifies --enable-warnings-as-errors, add -Werror *even if
the user specified --enable-extra-gcc-flags; assume they know what
they're doing and are willing to have the compile fail due to the extra
GCC warnings being treated as errors.
svn path=/trunk/; revision=46748
the ui directory. (Perhaps some other files that would be used by all
flavors of Wireshark, for any GUI toolkit or for someting such as
ncurses, and not for any command-line tool such as TShark, should be
moved there as well.)
Shuffle some #includes to put the "ui/XXX.h" includes together.
svn path=/trunk/; revision=40529