Commit Graph

49336 Commits

Author SHA1 Message Date
Gerald Combs bc3cd5611e Make sure we have a valid capture file pointer in win32_export_file().
Fixes bug 9271.

svn path=/trunk/; revision=52612
2013-10-15 01:10:52 +00:00
Gerald Combs 2b0c8b1c71 Fill in the help links. Make sure they do something when they're clicked.
Try to make the task list width match its contents.

svn path=/trunk/; revision=52611
2013-10-15 00:48:34 +00:00
Gerald Combs 4520cc08e1 Remove some commented code.
svn path=/trunk/; revision=52610
2013-10-15 00:17:23 +00:00
Michael Mann 856668d739 Fix the bitcoin dissector to be able to dissect recent version of the protocol. Bug 8844 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8844)
Changes:
  - All messages now have a checksum (and not only version and verack).
  - In the version message: user agent added as a string preceded by a varint length.
  - Port in an address is in little endian and not big endian.
  - In the version message the receiving and emitting address where inverted.

From Eric Masson

svn path=/trunk/; revision=52609
2013-10-15 00:05:45 +00:00
Anders Broman 21e17b82d2 Reverting as requested by Jakub, eventhoug I don't think this prticular entry is useful as it's duplicated in the tree and almost certanly never vissible.
svn path=/trunk/; revision=52608
2013-10-14 21:50:37 +00:00
Gerald Combs 0efe942aab Let Qt lay out and size elements in FollowStreamDialog. Make it
resizable. Get rid of the group box -- the OS X and Windows HIGs
discourage its use and I'm not sure if it fits the GNOME HIG in this
case either. Make the stream contents monospace. Set the cursor to the
beginning of the text when we follow a stream.

Continue the War On Unnecessary Dialogs. Move "Find"ing from a pop-up
window to the main Follow dialog. Wrap back to the beginning as needed.

Add a "Cancel" button. Make sure it and the escape key work as expected.

svn path=/trunk/; revision=52607
2013-10-14 21:17:38 +00:00
Evan Huus 2e405d7261 Replace XXX with explanation based on discussion with Jakub on -dev.
svn path=/trunk/; revision=52606
2013-10-14 20:35:56 +00:00
Evan Huus bef9e93490 Slightly clarify the wmem release note entry.
svn path=/trunk/; revision=52605
2013-10-14 20:29:23 +00:00
Anders Broman ecb5860b78 Adding to col info is probably useless as next dissector will overwrite it.
svn path=/trunk/; revision=52604
2013-10-14 18:18:16 +00:00
Anders Broman 7541b47020 Try to pptimize heuristics slightly.
svn path=/trunk/; revision=52603
2013-10-14 18:16:11 +00:00
Pascal Quantin c94403e9ba Add dissection of NCM/MBIM data traffic based on data interface class protocol code
svn path=/trunk/; revision=52602
2013-10-14 17:55:43 +00:00
Gerald Combs 9011036f76 Look for QtWidgets in the right directory.
svn path=/trunk/; revision=52601
2013-10-14 17:23:58 +00:00
Gerald Combs 13c1c9daf7 PacketList and ProtoTree need access to MainWindow at initialization
time in order to fill in their respective context menus. R52386 broke
that. Fix it and add comments about handling reparenting. Fixes bug
9265.

svn path=/trunk/; revision=52600
2013-10-14 16:54:41 +00:00
Martin Kaiser 1eb36c1119 do some range checks when reading vwr files
don't assign the output of pntoh24() to a gint16

unfortunately, vwr detection does not work reliably and many pdf files
are recognized as vwr - this commit should prevent wireshark from
crashing when it tries to load the USB 2.0 spec as pdf ;-)


svn path=/trunk/; revision=52599
2013-10-14 15:03:28 +00:00
Jörg Mayer 3af074a3f6 Make pkgconfig work - sort of:
- fix a typo
- Add the library dirs and not just the libraries.
  This would help if the paths that are now returned
  were actually correct.

svn path=/trunk/; revision=52598
2013-10-14 14:53:36 +00:00
Pascal Quantin debe9b6591 As reported by Didier Gautheron on -dev (http://www.wireshark.org/lists/wireshark-dev/201310/msg00159.html) :
Since r49923, TCP flags are no more displayed in info column when tree is NULL

svn path=/trunk/; revision=52597
2013-10-14 08:36:38 +00:00
Michael Mann 7be4187b39 TLS server key exchange misses sig and hash algorithm for TLS 1.2. Bug 9208 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9208).
1. Fix ECDH server key exchange for TLS 1.2
2. Fix RSA server key exchange for TLS 1.2

From Hauke Mehrtens

svn path=/trunk/; revision=52596
2013-10-14 03:07:32 +00:00
Michael Mann 20c163d070 DTLS server key exchange misses sig and hash algorithm for TLS 1.2. Bug 9208 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9208)
1. Fix ECDH server key exchange for DTLS 1.2
2. Fix RSA server key exchange for DTLS 1.2

From Hauke Mehrtens

svn path=/trunk/; revision=52595
2013-10-14 02:34:06 +00:00
Martin Mathieson 5320a5eddd DRX: start to show state prior to and after current PDU.
svn path=/trunk/; revision=52594
2013-10-13 22:00:09 +00:00
Anders Broman a361571bce As requested by Zoltán Lajos Kis, split the openflow dissector int one file per protocol version.
svn path=/trunk/; revision=52593
2013-10-13 21:25:19 +00:00
Cal Turney ee19aea96f SMB2 SRT can be very inaccurate in the presence of retransmissions: Retransmitted responses not only add additional (bogus) transactions but also the latency associated with them. This can greatly inflate the maximum and average SRT stats especially in the case of retransmissions triggered by the expiry of the rexmit timer (RTOs). Only calculating SRT for the first response received accomplishes this goal without requiring the TCP pref "Do not call subdissectors for error packets" to be set.
svn path=/trunk/; revision=52592
2013-10-13 20:19:30 +00:00
Bill Meier 2ac134b3c5 whitespace fixes; mostly: remove trailing blanks
svn path=/trunk/; revision=52591
2013-10-13 19:56:52 +00:00
Bill Meier 59277781ff Minor whitespace changes
svn path=/trunk/; revision=52590
2013-10-13 19:14:33 +00:00
Gerald Combs 3118bd5198 Don't clobber PKG_CONFIG_PATH.
svn path=/trunk/; revision=52589
2013-10-13 18:59:23 +00:00
Bill Meier 76d4b43a29 Minor whitespace, formatting & etc changes.
svn path=/trunk/; revision=52588
2013-10-13 18:14:59 +00:00
Evan Huus ee6916b838 When printing PDML, don't assume that all values with bitmasks are represented
as guint32 internally - they may be signed and/or 64-bit.

svn path=/trunk/; revision=52587
2013-10-13 16:10:43 +00:00
Gerald Combs 4e50b8bf97 [Automatic manuf, services and enterprise-numbers update for 2013-10-13]
svn path=/trunk/; revision=52584
2013-10-13 14:03:40 +00:00
Evan Huus e7a0c26bec Subsume README.binarytrees into wmem doxygen. The README was out of date
anyways, since Michael made key operations non-destructive in r44380.

svn path=/trunk/; revision=52583
2013-10-13 13:13:24 +00:00
Michael Mann 14d9d10373 openSAFETY: Dissection for second crc as well as plausability check. Bug 9261 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9261).
From Roland Knall

svn path=/trunk/; revision=52582
2013-10-13 12:25:01 +00:00
Graham Bloice 1299f24e7b Set CMake to use Python when building the tap register files.
svn path=/trunk/; revision=52581
2013-10-13 09:47:32 +00:00
Graham Bloice 9c4ee86784 Add CMake properties to targets so that they are logically organised when using a Visual Studio solution.
Add CMake properties to group the source files in epan into logical blocks when using a Visual Studio solution.

svn path=/trunk/; revision=52580
2013-10-13 09:21:55 +00:00
Pascal Quantin f5decf57f1 Fix dissection of Home Provider CID and fix a typo error
svn path=/trunk/; revision=52579
2013-10-13 08:47:05 +00:00
Evan Huus efdbb598b8 So a while back Jeff added some code to check that the offset+length passed to
proto_tree_add_item was valid *before* we short-circuited based on a NULL tree.
This was good in that it removed a common source of really-long-loop bugs. It
was less good in that it cost us about 8% in speed when doing a tree-less
dissection, but we decided the tradeoff was worth it.

After Anders' recent mail to -dev about performance, I started thinking about
how to optimize this. It occurred to me that the vast majority of the logic
involved in the check was dealing with the length value - fetching the actual
length if it was a counted string, calculating the length if it was -1, adding
the length to the offset in a way that was free from overflows, etc.

All of this is (theoretically) unnecessary - simply checking the offset without
worrying about the length will still catch the very-long-loops, since it is the
offset that increases in each iteration, not the length.

All that to justify:
- implement tvb_ensure_offset_exists which throws an exception if the offset is
  not within the tvb
- use it instead of all the complicated other logic in the pre-short-circuit
  step of proto_tree_add_item and friends

This gives us back about 3/4 of the performance we lost in the original patch.
We're still ~2% slower than without any check, but this is the best I can think
of right now.

svn path=/trunk/; revision=52578
2013-10-13 04:54:14 +00:00
Evan Huus f65ab9499b Order our conditionals to take advantage of the fact that we know tvb->length <=
tvb->reported_length. Small performance win on the hot path, and a bit easier to
read.

svn path=/trunk/; revision=52577
2013-10-13 00:13:20 +00:00
Pascal Quantin 6390f33772 Update the User Guide for the upcoming 1.11.0 release
svn path=/trunk/; revision=52576
2013-10-12 23:48:43 +00:00
Evan Huus a11b04b5d8 Tweak/simplify some tvbuff length check functions slightly. In my benchmarks of
dissecting without tree, they are costly because they now happen for every
proto_tree_add_item call even if tree is NULL.

svn path=/trunk/; revision=52575
2013-10-12 23:41:55 +00:00
Jörg Mayer 3ab8799526 Remove some things that I added while not understanding the real
problem/solution.
"Long" since solved by copying the solution from Makefile.nmake.

Small update to the status of cmake builds on windows

svn path=/trunk/; revision=52574
2013-10-12 22:08:03 +00:00
Evan Huus c2b2d204db Redo r52569 in a way that doesn't break the GUI. Add a mem_pool member to
tree_data and reference it directly when allocating/freeing tree items. This
lets us keep multiple around when we need them, and still lets us use
wmem_free_all for a major speedup. It also, coincidentally, lets us get rid of
the annoying fi_tmp hack that was needed before, since that element gets swept
up in the free_all with everything else.

Keep one pool cached to avoid creating/destroying a pool for each packet,
another minor performance win.

The various changes in approach seem to balance out pretty much exactly, this
still gives ~11% over pre-52569.

svn path=/trunk/; revision=52573
2013-10-12 21:01:17 +00:00
Evan Huus 2e1497b532 Revert r52569, it breaks the GUI since that sometimes has multiple trees active
at once.

svn path=/trunk/; revision=52572
2013-10-12 18:14:19 +00:00
Chris Maynard b610734a12 If the offset is out of bounds, have tvb_length_remaining() and tvb_reported_length_remaining() return 0 instead of -1. This should provide a better long-term fix for bugs/problems such as seen in https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9263. In the long-run, if we like this behavior, we can change the return value to a guint as well. Let's let it simmer for awhile first ...
svn path=/trunk/; revision=52571
2013-10-12 18:13:26 +00:00
Chris Maynard 65accd3c18 Don't assume that tvb_length_remaining() or tvb_reported_length_remaining() always return a value >= 0. Part of fix for https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9263
#BACKPORT(1.10,1.8)

svn path=/trunk/; revision=52570
2013-10-12 18:03:34 +00:00
Evan Huus 540e9c745d Use wmem_free_all on the tree pool rather than freeing each node, label and
field_info separately. We still have to walk the tree in order to free certain
fvalues, but that's not a big deal. Another ~11% speed-up running "tshark -nVr"
on a large capture.

svn path=/trunk/; revision=52569
2013-10-12 17:57:51 +00:00
Evan Huus d19a20746b Use a wmem block allocator to allocate field_infos, proto_nodes and item_labels.
Even without making use of free_all (which should be possible) this still
results in ~8% speedup running "tshark -nVr" on a large file in my tests.

svn path=/trunk/; revision=52568
2013-10-12 17:32:41 +00:00
Pascal Quantin f1ee43ab0a Update User Guide for 1.11 preparation
svn path=/trunk/; revision=52567
2013-10-12 14:29:40 +00:00
Pascal Quantin 214a2d7f55 From Todd Newton via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9262 :
Fix dissection of PTP Management messages

svn path=/trunk/; revision=52566
2013-10-12 14:05:32 +00:00
Evan Huus 137be14b3d We can't use proto_tree_add_uint_* for FT_TIME fields, use proto_tree_add_time_*
instead. Fixes another one of the issues that shows up in
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9263

svn path=/trunk/; revision=52565
2013-10-12 13:14:30 +00:00
Evan Huus b581aff2c3 Based on help and suggestions from Johannes Berg, fix Radiotap Header decode the
right way.

Fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9256 without
reintroducing https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9212

svn path=/trunk/; revision=52564
2013-10-12 12:53:35 +00:00
Evan Huus fa1027a004 From RobiOneKenobi via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9229
Add a new strutil function format_text_chr that replaces unprintable characters
with a single passed-in char (eg a '.' or a '-') instead of a C-style escape.
This is useful for displaying binary data that frequently but not always
contains text; otherwise the number of C escape codes makes it unreadable.

svn path=/trunk/; revision=52563
2013-10-12 12:38:56 +00:00
Gerald Combs 522f74e9aa Have pixbuf_to_widget() use a guint8 * to match
gdk_pixbuf_new_from_inline().

svn path=/trunk/; revision=52562
2013-10-12 03:44:20 +00:00
Gerald Combs 73353437ce Another Solaris Studio C++ fix.
svn path=/trunk/; revision=52561
2013-10-12 03:00:04 +00:00