Commit Graph

146 Commits

Author SHA1 Message Date
Jeff Morriss aa5d9d78dd From Robert Bullen via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7683 :
The reassembled fragments tree in the Packet Details view is awesome, but it
lacks one thing: a field that exposes the reassembled data.

tcp.data already exists for exposing a single TCP segment's payload as a byte
array. It would be handy to have something similar for a single application
layer PDU when TCP segment reassembly is involved. I propose
tcp.reassembled.data, named and placed after the already existing field
tcp.reassembled.length.

My primary use case for this feature is outputting tcp.reassembled.data with
tshark for further processing with a script.

The attached patch implements this very feature. Because the reassembled
fragment tree code is general purpose, i.e. not specific to just TCP, any
dissector that relies upon it can add a similar field very cheaply. In that
vein I've also implemented ip.reassembled.data and ipv6.reassembled.data, which
expose reassembled fragment data as a single byte stream for IPv4 and IPv6,
respectively. All other protocols that use the reassembly code have been left
alone, other than inserting NULL into their initializer lists for the newly
introduced struct field reassemble.h:fragment_items.hf_reassembled_data.

svn path=/trunk/; revision=44802
2012-09-07 02:09:59 +00:00
Chris Maynard 3e976d69d1 tools/checkhf.pl reported 3 unused hf entries. Commented them out for now.
BTW:
tools/checkAPIs.pl reports 109 useless add_text()'s vs. 346 add_<something else>() calls (31.50%), under 50% threshhold, but not really that great.

tools/checkfiltername.pl reports 42 errors.

svn path=/trunk/; revision=44706
2012-08-30 20:36:53 +00:00
Jeff Morriss 3268b5b215 Remove trailing space in some hf names.
Add some hf names (some entries had only a space for a name).
Remove non-ASCII chars and C++/C99-style comments.

svn path=/trunk/; revision=44705
2012-08-30 20:22:09 +00:00
Anders Broman e94d8a0b7e Add Japanese ISUP variant(not all IE's)
IE dissection code from Brian Mceniery.

svn path=/trunk/; revision=44703
2012-08-30 18:40:49 +00:00
Bill Meier 7641d97020 Cleanup: Whitespace and long lines;
Also: remove a few boilerplate comments.

svn path=/trunk/; revision=44637
2012-08-23 17:11:36 +00:00
Bill Meier da57a45b8c value-string arrays - allow "direct" access: fix dup val & fill in a "gap".
svn path=/trunk/; revision=44636
2012-08-23 15:38:03 +00:00
Evan Huus 6960a27c75 From Bodo Petermann via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7632
Fix dissection of ISUP message Generic Numbers with no digits.

svn path=/trunk/; revision=44487
2012-08-14 11:58:20 +00:00
Bill Meier 638d74d43f Use val_to_str_const() where appropriate;
Also (for a few files):
- create/use some extended value strings;
- remove unneeded #include files;
- remove unneeded variable initialization;
- re-order fcns slightly so prefs_reg_handoff...() at end, etc

svn path=/trunk/; revision=44438
2012-08-10 22:55:02 +00:00
Michael Mann dd6ca38fff updated more display filters per checkfiltername.pl
svn path=/trunk/; revision=44178
2012-08-01 01:57:18 +00:00
Chris Maynard 6590deb37f Fix Coverity CID 712526: Missing break in switch. Bug introduced with r44134.
svn path=/trunk/; revision=44157
2012-07-31 14:32:10 +00:00
Anders Broman 5a4c037e87 Add Russian national variant.
svn path=/trunk/; revision=44134
2012-07-30 13:22:38 +00:00
Anders Broman 71f4754f19 Extend a value string.
svn path=/trunk/; revision=44028
2012-07-26 08:16:07 +00:00
Jakub Zawadzki b18e880040 Update FSF address - part II.
svn path=/trunk/; revision=43538
2012-06-28 23:18:38 +00:00
Anders Broman ae43364681 Only dissect as SDp if it's IPBCP (text encoded).
svn path=/trunk/; revision=43152
2012-06-08 11:50:52 +00:00
Jeff Morriss d8c246d53d Fix CID 700200: the Israeli variant case can't happen in
dissect_application_isup() so comment it out for now.

svn path=/trunk/; revision=42554
2012-05-10 18:33:24 +00:00
Jeff Morriss 7afe87264d Decode the Israeli TCM and CAM messages.
svn path=/trunk/; revision=42465
2012-05-07 15:13:28 +00:00
Jeff Morriss 444187c5e8 Add support for Israeli national variant of (ITU) ISUP; Only the BCM
message is decoded for now.

Also clean up lots of white space and replace tabs (including 4-space tabs)
with spaces.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4231

svn path=/trunk/; revision=42435
2012-05-05 01:55:21 +00:00
pascal a4232cc6bd Remove non-ASCII character
svn path=/trunk/; revision=42101
2012-04-16 18:13:34 +00:00
Chris Maynard 3f7146a937 Define ISUP_ITU_STANDARD_VARIANT before using it.
svn path=/trunk/; revision=42100
2012-04-16 17:17:18 +00:00
Anders Broman b365941321 Introduce a preference to set Standard or National ITU ISUP variant.
svn path=/trunk/; revision=42099
2012-04-16 15:52:32 +00:00
Anders Broman 3f87ab8e85 Add dissection of French national messages.
svn path=/trunk/; revision=42098
2012-04-16 15:28:57 +00:00
Anders Broman d7192a8bac Use content_type_parameter_str in dissect_application_isup()
to determine ISUP standard and ISUP variant(French).

Also fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6258

svn path=/trunk/; revision=42095
2012-04-16 14:11:32 +00:00
Anders Broman a43d44f907 Separate ANSI and ITU messages.
svn path=/trunk/; revision=42093
2012-04-16 13:28:41 +00:00
Chris Maynard 1574813764 Fix Coverity CID's 1439-1448 OVERRUN_STATIC introduced with r41468. Also fix one additional dead store.
svn path=/trunk/; revision=41702
2012-03-21 03:04:15 +00:00
Alexis La Goutte 63b9d7324e Fix some Dead Store (Dead assignement/Dead increment) Warning found by Clang
svn path=/trunk/; revision=41468
2012-03-10 17:49:17 +00:00
Jeff Morriss 183f0e934c Create a list of MTP Service Indicator macros and use them.
svn path=/trunk/; revision=40828
2012-02-03 18:26:37 +00:00
Chris Maynard 436b44b99e Fix some duplicate display filter names.
svn path=/trunk/; revision=40592
2012-01-19 21:57:24 +00:00
Bill Meier 794757ae8f For proto_tree_add_item(..., proto_xxx, ...)use ENC_NA as the encoding arg.
Also: remove trailing whitespace for a number of files.

svn path=/trunk/; revision=39503
2011-10-21 02:10:19 +00:00
Jeff Morriss 449d732485 Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5221 :
Don't assume that the Called party number has digits: it may not, especially
in protocols like INAP.

Rearrange the (pre-existing) no-digits check when dissecting Calling addresses
so we don't pass the empty address to taps.

svn path=/trunk/; revision=39502
2011-10-21 01:50:25 +00:00
Bill Meier 293049dfba Do some conversions of proto_tree_add_item() 'encoding' arg.
(previously missed).

    57   FT_BOOLEAN:       FALSE-->ENC_BIG_ENDIAN
    31   FT_BOOLEAN:       TRUE-->ENC_LITTLE_ENDIAN

    10   FT_BYTES:         ENC_BIG_ENDIAN-->ENC_NA
     1   FT_BYTES:         ENC_LITTLE_ENDIAN-->ENC_NA
    21   FT_BYTES:         FALSE-->ENC_NA
     2   FT_BYTES:         TRUE-->ENC_NA

     2   FT_IPXNET:        ENC_BIG_ENDIAN-->ENC_NA

     6   FT_IPv6:          ENC_BIG_ENDIAN-->ENC_NA
     1   FT_IPv6:          FALSE-->ENC_NA

     6   FT_NONE:          ENC_BIG_ENDIAN-->ENC_NA
    19   FT_NONE:          FALSE-->ENC_NA
     3   FT_NONE:          TRUE-->ENC_NA

     1   FT_STRING:        ENC_BIG_ENDIAN-->ENC_ASCII|ENC_NA
     1   FT_STRING:        ENC_LITTLE_ENDIAN-->ENC_ASCII|ENC_NA
     5   FT_STRING:        FALSE-->ENC_ASCII|ENC_NA
     1   FT_STRING:        TRUE-->ENC_ASCII|ENC_NA

     4   FT_STRINGZ:       ENC_NA-->ENC_ASCII|ENC_NA
     8   FT_STRINGZ:       FALSE-->ENC_ASCII|ENC_NA

     1   FT_INT32:         FALSE-->ENC_BIG_ENDIAN
     1   FT_INT32:         TRUE-->ENC_LITTLE_ENDIAN

    11   FT_UINT8:         0-->ENC_BIG_ENDIAN
   111   FT_UINT8:         FALSE-->ENC_BIG_ENDIAN
    17   FT_UINT8:         TRUE-->ENC_LITTLE_ENDIAN
     1   FT_UINT16:        0-->ENC_BIG_ENDIAN
    68   FT_UINT16:        FALSE-->ENC_BIG_ENDIAN
    18   FT_UINT16:        TRUE-->ENC_LITTLE_ENDIAN
     4   FT_UINT24:        FALSE-->ENC_BIG_ENDIAN
    70   FT_UINT32:        FALSE-->ENC_BIG_ENDIAN
     1   FT_UINT32:        TRUE-->ENC_LITTLE_ENDIAN
     4   FT_UINT64:        FALSE-->ENC_BIG_ENDIAN
     1   FT_UINT64:        TRUE-->ENC_LITTLE_ENDIAN

     1   FT_UINT_STRING:   FALSE-->ENC_ASCII|ENC_BIG_ENDIAN


svn path=/trunk/; revision=39442
2011-10-16 23:38:49 +00:00
Bill Meier 67ee5049d4 Convert 'encoding' parameter of certain proto_tree_add_item() calls in non-autogenerated epan/dissectors:
Specifically:  Replace FALSE|0 and TRUE|1 by ENC_BIG_ENDIAN|ENC_LITTLE_ENDIAN as
  the encoding parameter for proto_tree_add_item() calls which directly reference
  an item in hf[] which has a type of:
     FT_BOOLEAN
     FT_IPv4
     FT_EUI64
     FT_GUID
     FT_UINT_STRING

Also: For type FT_ITv6 use ENC_NA. (This was missed in SVN #39260)

svn path=/trunk/; revision=39328
2011-10-10 00:39:31 +00:00
Bill Meier 4e57694d4a Convert 'encoding' parameter of certain proto_tree_add_item() calls in non-autogenerated epan/dissectors:
Specifically:  Replace FALSE|0 and TRUE|1 by ENC_BIG_ENDIAN|ENC_LITTLE_ENDIAN as
 the encoding parameter for proto_tree_add_item() calls which directly reference
 an item in hf[] which has a type of:
    FT_UINT8
    FT_UINT16
    FT_UINT24
    FT_UINT32
    FT_UINT64
    FT_INT8
    FT_INT16
    FT_INT24
    FT_INT32
    FT_INT64
    FT_FLOAT
    FT_DOUBLE


svn path=/trunk/; revision=39288
2011-10-06 03:35:44 +00:00
Bill Meier 94f36ca4ff Use ENC_NA as encoding for proto_tree_add_item() calls which directly reference an hf item (in hf[] with types:
FT_NONE
   FT_BYTES
   FT_IPV6
   FT_IPXNET
   FT_OID

Note: Encoding field set to ENC_NA only if the field was previously TRUE|FALSE|ENC_LITTLE_ENDIAN|ENC_BIG_ENDIAN

svn path=/trunk/; revision=39260
2011-10-04 22:44:31 +00:00
Anders Broman 49b4ec10b6 From Christopher Maynard:
From doc/README.tapping:

IF the tap is going to return private data using the last parameter to
tap_queue_packet() and IF the protocol can appear multiple times inside the
same packet, you will have to make sure that each instance of
tap_queue_packet() is using its own instance of private struct variable
so they don't overwrite each other.

This was the case here, so I changed the static allocation of tap_rec to be
ep_alloc'd.  I also tried to clean up the Info column a bit.  With this patch
applied, the graph now shows the APM and ANM correctly instead of 2 ANM's.

https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5966

svn path=/trunk/; revision=37893
2011-07-04 20:43:29 +00:00
Bill Meier d2269ce7d5 Fix gcc 4.6 "set but not used [-Wunused-but-set-variable]" warnings.
svn path=/trunk/; revision=37716
2011-06-19 18:47:35 +00:00
Stephen Fisher d82e43c6e1 Fix a "equality comparison with extraneous parentheses" warning found
by clang 3.0 (trunk 129935) compiler.


svn path=/trunk/; revision=36822
2011-04-22 17:36:16 +00:00
Stig Bjørlykke 27344a90fe Removed some unneeded assignments.
Found by clang.

svn path=/trunk/; revision=36698
2011-04-18 15:29:25 +00:00
Jeff Morriss 28939cef5c Simplify the generation of the 'name' passed to tick_stat_node().
svn path=/trunk/; revision=36342
2011-03-26 01:22:31 +00:00
Anders Broman fcec56cd31 Register BICC by name.
svn path=/trunk/; revision=35938
2011-02-13 15:01:34 +00:00
Stig Bjørlykke 84bc28bd6a Introduce "Fragment count" filter element for all protocols doing reassembly.
svn path=/trunk/; revision=35705
2011-01-30 21:01:07 +00:00
Guy Harris a8bc4a0d13 Rename the routines that handle dissector tables with unsigned integer
keys to have _uint in their names, to match the routines that handle
dissector tables with string keys.  (Using _port can confuse people into
thinking they're intended solely for use with TCP/UDP/etc. ports when,
in fact, they work better for things such as Ethernet types, where the
binding of particular values to particular protocols are a lot
stronger.)

svn path=/trunk/; revision=35224
2010-12-20 05:35:29 +00:00
Anders Broman 7870de6f95 Fill value_strings.
svn path=/trunk/; revision=34875
2010-11-15 16:46:07 +00:00
Anders Broman 84dd318764 Extend value_strings to make full use of value_string_ext.
svn path=/trunk/; revision=34872
2010-11-14 20:53:15 +00:00
Bill Meier fc5f614cec Fix a few typos in two value_string arrays ....
svn path=/trunk/; revision=34828
2010-11-09 22:58:17 +00:00
Anders Broman 18a3357ad3 Fill th Q.850 tables.
svn path=/trunk/; revision=34827
2010-11-09 21:13:28 +00:00
Bill Meier b78ec52693 Use value_string_ext fcns to access certain value_string arrays;
Sort certain value_string arrays so the values are in ascending order;
Use val_to_str_ext() instead of for loops to do value_string array lookups (voip_calls.c).
Minor whitespace cleanup.

svn path=/trunk/; revision=34794
2010-11-05 22:44:03 +00:00
Bill Meier 93b94a23ca Define some fcns & vars as static; Some #includes not req'd; packet-mikey.h not req'd.
svn path=/trunk/; revision=34464
2010-10-10 23:28:40 +00:00
Bill Meier 69df32fb11 #include <string.h> not needed.
svn path=/trunk/; revision=32411
2010-04-06 22:09:47 +00:00
Bill Meier 09764dd969 Remove unneeded #include <stdio.h>
svn path=/trunk/; revision=32367
2010-04-03 21:55:23 +00:00
Tomas Kukosa cd719af33a Add heuristic table for Q.931 User-specific protocol
svn path=/trunk/; revision=32218
2010-03-17 15:25:20 +00:00