Commit graph

2244 commits

Author SHA1 Message Date
Alexis La Goutte
a5f1afe2b7 decoders(transum): fix redundant redeclaration of 'add_detected_tcp_svc’ [-Wredundant-decls]
Change-Id: I70ccf182160086a4c04467eec214857a461a2869
Reviewed-on: https://code.wireshark.org/review/19373
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-21 15:57:46 +00:00
Alexis La Goutte
c7a46477d3 transum: fix no previous prototype for ‘proto_register_transum’ [-Wmissing-prototypes]
the last one

Change-Id: I8b279d11b61645a19b0b356d52cf66eed0180700
Reviewed-on: https://code.wireshark.org/review/19372
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-21 15:57:16 +00:00
Alexis La Goutte
56cf6998bb transum: fix no previous prototype for '...’ [-Wmissing-prototypes]
Part 2...

Change-Id: Id219bd2b04de2003b5bfa4a33893d0310856275d
Reviewed-on: https://code.wireshark.org/review/19368
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-12-21 11:37:42 +00:00
Alexis La Goutte
cf0f6ae0ae transum: add Modelines info
Change-Id: I9d9ffdb7d32a940dbe155e82946d59f649cafe09
Reviewed-on: https://code.wireshark.org/review/19345
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-19 13:32:10 +00:00
Alexis La Goutte
562954bbe6 transum: fix no previous prototype for '...’ [-Wmissing-prototypes]
Comment set_pkt_rrpd (not used)

Change-Id: I8d571f3cd45c51b07969132718a43244003c0f59
Reviewed-on: https://code.wireshark.org/review/19344
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-19 13:31:57 +00:00
Alexis La Goutte
8e19794b5e decoders(transum): fix no previous prototype for ‘decode_*’ [-Wmissing-prototypes]
Change-Id: I93b24285443d99799f83c40f61f413c2d106c85f
Reviewed-on: https://code.wireshark.org/review/19338
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-18 21:24:56 +00:00
AdrianSimionov
81fc27f5d7 [docsis->type2ucd] Fix issue with decoding
Burst 4 and Burst 5 values are now properly decoded.

Change-Id: I6232a19eb849a419825be69435069e4be721cbc1
Reviewed-on: https://code.wireshark.org/review/19327
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-18 11:55:44 +00:00
Jiri Novak
7eee48ad55 RTP: RTP dissector is able to decode RTP over TCP (RFC 4571)
Bug: 13251
Change-Id: I56a01e779f7f0eadc8a078f88543269a91148f00
Reviewed-on: https://code.wireshark.org/review/19293
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-18 03:12:48 +00:00
Michael Mann
232cb9a2dd Remove proto_item_append_text calls in favor of BASE_UNIT_STRING.
Many proto_item_append_text calls were just adding a unit string to a field.
There's a better way to do that now.

Change-Id: Id18d5ac1ea4d8ecdc4cbe7ebaec07fbd2eab6e78
Reviewed-on: https://code.wireshark.org/review/19289
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-16 03:04:11 +00:00
Michael Mann
b7f4e25059 Adjust proto_tree_add_uint_format_value calls to use unit string
Several calls to proto_tree_add_uint_format_value could be better served
using BASE_UNIT_STRING with a "unit string" in hf_ field.  There also
a few cases where proto_tree_add_uint_format_value could just be
proto_tree_add_uint.

Added a few more "common" unit string values to unit_strings.[ch]

Change-Id: Iaedff82c515269c9c31ab9100dff19f5563c932d
Reviewed-on: https://code.wireshark.org/review/19242
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-12-13 22:56:50 +00:00
Pascal Quantin
693dcd276e Build TRANSUM plugin
Add plugin to autofoo and CMake build systems and fix errors found
Add plugin to Windows installer (optional component activated by default)

Change-Id: Id1b777bdee04e53076b3291f6fb68d5abad6985d
Reviewed-on: https://code.wireshark.org/review/19228
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2016-12-13 08:50:27 +00:00
Paul Offord
fb0c288f99 transum: plugin code
A plugin to calculate response, service and spread time values based on
the RTE model.

Bug: 12892
Change-Id: I47d7e5354fc269916851a318fef10b826897eaf8
Reviewed-on: https://code.wireshark.org/review/17750
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-12-09 04:41:35 +00:00
Guy Harris
6f37317539 Include config.h at the very beginning of all Flex scanners.
That way, if we #define anything for large file support, that's done
before we include any system header files that either depend on that
definition or that define it themselves if it's not already defined.

Change-Id: I9b07344151103be337899dead44d6960715d6813
Reviewed-on: https://code.wireshark.org/review/19035
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-12-02 21:02:10 +00:00
Pascal Quantin
f975020121 DOCSIS: fix an infinite recursion introduced in g3e1828e
Bug: 13179
Change-Id: I4c510dab463f7c223bcaabd3157ca791dd86d690
Reviewed-on: https://code.wireshark.org/review/18958
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Seth Alexander <pxsdaemon@gmail.com>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2016-11-26 17:40:30 +00:00
Birol Capa
c551e06e79 PROFINET: Update LineDelay Dissection
When LineDelay is decoded, the FormatIndicator is not evaluted.

Sample LineDelay: 2147483658 (0x80 00 00 0a)
This value should be 10,
since FormatIndicator (Bit 31) = 0x01 states that this is a CableDelay.

Change-Id: I08ae8e6de8b6f8c493122109e29e91dc47096734
Reviewed-on: https://code.wireshark.org/review/18950
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-11-25 21:41:55 +00:00
Seth Alexander
8eb6b3ee14 Removed Manipulation of Visited Flag
Change-Id: Ic77afa3fd0b9cabb3f2681be099e11be79d271be
Reviewed-on: https://code.wireshark.org/review/18938
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-11-24 04:03:16 +00:00
Seth Alexander
3e1828e351 Added Path Value and CRC to DOCSIS Plugin
DOCSIS update with basic defragmentation

Bug: 13106
Change-Id: Idbb42c80b87c0c3189da087b523733cf0b19967c
Reviewed-on: https://code.wireshark.org/review/18676
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-11-22 14:18:22 +00:00
Alexis La Goutte
70c3260083 profinet (dcerpc pn io): Fix Dead Store (Dead assignement/Dead increment) Warning found by Clang
Change-Id: I5b7d97b6238c26dd8fa748aaa59a84eb4a03274c
Reviewed-on: https://code.wireshark.org/review/18814
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-11-14 16:29:53 +00:00
Birol Capa
4994d3dbf3 PROFINET: Add Asset Management Record Dissection
Identification and Maintenance (I&M) and AssetManagement (AM) functions
are to collect information about the assets of an automation plant
to cover the use cases such as
identification, configuration, commissioning, diagnosis etc..

PROFINET plugin should support the Asset Management Record (AMR).

Bug: 13112
Change-Id: I9c557b5f7f4f633fdd475c2c9e8900a8e6c2ba47
Reviewed-on: https://code.wireshark.org/review/18719
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-11-13 17:36:43 +00:00
Bruno Verstuyft
7ba0c0cc02 DOCSIS: Added dissector for type51 UCD
Change-Id: Ifb46b2bd0a6eeae3e641ebcb3ecc89fc4f74b3f9
Reviewed-on: https://code.wireshark.org/review/18673
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-11-13 00:55:55 +00:00
Birol Capa
faa5ba2e20 PROFINET: Update MRP dissection according to IEC62439-2 Ed.2.
The MRP PDU dissection is updated with respect to MRP standard IEC62439-2 Ed.2.
0x88e3 is added for MRP Ether Type
String definions of MRP block and sub block types are updated.
dissect_pn_ManuData function is removed since it is not used anymore.

Change-Id: Iec6666abc75bcba4189f2c38851407abc23267f9
Reviewed-on: https://code.wireshark.org/review/18730
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-11-10 13:27:31 +00:00
Birol Capa
12e030cd5b PROFINET: Update preliminary version of the Reporting System (RS) dissection.
Timestamp decoding is added.
Name of "Stop Observer" is changed as "Observer Status Observer".
TimeStatusObserver padding bytes location is changed.
Text of RS_ReasonCode for value "0" is changed from "Reserved" to "No Detail".

Change-Id: I2c231d75001a89a1e41f2518f5c6ca1fdf49a2f0
Reviewed-on: https://code.wireshark.org/review/18662
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-11-07 13:27:48 +00:00
Alexis La Goutte
832852f533 gryphon (plugins): fix spelling typo found by lintian
Change-Id: I82f87f809ff0a261dacf38a2fb52aa4788403490
Reviewed-on: https://code.wireshark.org/review/18500
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-27 07:12:32 +00:00
Alexis La Goutte
38bf499648 docsis (plugins): fix spelling typo found by lintian
Change-Id: I730c8df46165d4778174d6931785765d2434d14d
Reviewed-on: https://code.wireshark.org/review/18502
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-27 07:10:29 +00:00
Alexis La Goutte
4f39ed9713 ethercat (plugins): fix spelling typo found by lintian
Change-Id: I85a86953c89979e975e178fed1ae13dddab304d0
Reviewed-on: https://code.wireshark.org/review/18501
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-27 07:09:35 +00:00
Guy Harris
a6d81effbc Clean up file handle management.
The main reason fclose() could fail is if the file is open for writing,
not all the buffered data has been written out at the time fclose() was
called, and the attempt to write it out fails.  In any case, the file
handle is no longer valid after fclose() completes, whether the close
succeeds or not, so there's no reason to keep it around.

There's no reason to check whether it's null in a loop called in code
where it's not null to start with and where it's not set to null in the
loop.

This should fix CID 1374111.

Change-Id: Ib8067a17731b41d6b184a5a415addc2ecaa7c00c
Reviewed-on: https://code.wireshark.org/review/18359
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-10-21 22:30:39 +00:00
Balint Reczey
bf96599f19 Drop redundant SIZEOF() macro
Change-Id: I6db2033746f5f22dd0229c96727bb352bdb1e866
Reviewed-on: https://code.wireshark.org/review/18298
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
Petri-Dish: Balint Reczey <balint@balintreczey.hu>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-19 04:02:06 +00:00
Michael Mann
2eb7b05b8c Convert most UDP dissectors to use "auto" preferences.
Similar to the "tcp.port" changes in I99604f95d426ad345f4b494598d94178b886eb67,
convert dissectors that use "udp.port".

More cleanup done on dissectors that use both TCP and UDP dissector
tables, so that less preference callbacks exist.

Change-Id: If07be9b9e850c244336a7069599cd554ce312dd3
Reviewed-on: https://code.wireshark.org/review/18120
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-13 02:51:18 +00:00
Birol Capa
50ddeaadf9 PROFINET: Don't display expert information when implicit AR is used.
According to specification:
Value(UUID): 00000000-0000-0000-0000-000000000000
Meaning: Reserved
Use: The value NIL indicates the usage of the implicit AR.

Change-Id: Iea807f14bf6da36700b778a1383ebd970aa105a5
Reviewed-on: https://code.wireshark.org/review/17951
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-10-12 03:45:38 +00:00
Michael Mann
e8022a9c7b Profinet I/O: Sanity check number of I/O objects
Can prevent really long loops from fuzz testing.

Bug: 12851
Change-Id: I85e00af2c4753ce4c5bcb650a7df188d7f679c9a
Reviewed-on: https://code.wireshark.org/review/18136
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-10 13:11:29 +00:00
Michael Mann
268841f3e0 Combine Decode As and port preferences for tcp.port dissector table.
This patch introduces new APIs to allow dissectors to have a preference for
a (TCP) port, but the underlying data is actually part of Decode As functionality.
For now the APIs are intentionally separate from the regular APIs that register a
dissector within a dissector table.  It may be possible to eventually combine the
two so that all dissectors that register with a dissector table have an opportunity
to "automatically" have a preference to adjust the "table value" through the
preferences dialog.

The tcp.port dissector table was used as the guinea pig.  This will eventually be
expanded to other dissector tables as well (most notably UDP ports).  Some
dissectors that "shared" a TCP/UDP port preference were also converted. It also
removed the need for some preference callback functions (mostly when the callback
function was the proto_reg_handoff function) so there is cleanup around that.

Dissectors that has a port preference whose default was 0 were switched to using
the dissector_add_for_decode_as_with_preference API rather than dissector_add_uint_with_preference

Also added comments for TCP ports used that aren't IANA registered.

Change-Id: I99604f95d426ad345f4b494598d94178b886eb67
Reviewed-on: https://code.wireshark.org/review/17724
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-10-08 02:44:53 +00:00
Birol Capa
d2a59db2bb PROFINET: Add preliminary version of the Reporting System (RS) dissection.
The Reporting System (RS) ASE is composed of Observers and Event buffer queues.

Bug: 12959
Change-Id: Ibce2d607bffe9c04b24e8ccd5ef502307fbba7c6
Reviewed-on: https://code.wireshark.org/review/17965
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-10-03 17:44:23 +00:00
Peter Wu
534787e402 cmake: make WERROR_COMMON_FLAGS a normal string
Instead of checking for the boolean "FALSE", just set an empty string.
This avoids the need to check for WERROR_COMMON_FLAGS before using it.

The transformation is the same for all files, remove
"if (WERROR_COMMON_FLAGS)" and "endif()", reindent and add quotes (since
we have a string here and not a list).

Modelines have been added where missing.

Change-Id: I0ab05ae507c51fa77336d49a99a226399cc81b92
Reviewed-on: https://code.wireshark.org/review/17997
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Reviewed-by: Dario Lombardo <lomato@gmail.com>
Tested-by: Dario Lombardo <lomato@gmail.com>
2016-09-30 20:08:02 +00:00
Birol Capa
48b641576c PROFINET: Fix variable may not have been initialized warning
The variable may not have been initialized.
To make code more readable and to avoid possible future mistakes
initialize the variables.

Change-Id: I0c5e78b6d625c87252a4c47e263a3d5c701f2674
Reviewed-on: https://code.wireshark.org/review/17962
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-09-29 03:55:03 +00:00
Birol Capa
a88b7bc1a6 PROFINET: Fix switch statement has no default
A switch statement has no section labeled default.
To make the code more readable add the default statement with a good comment.

Change-Id: Iacd9b1520628e229baedc89277d07ffac2caf1b6
Reviewed-on: https://code.wireshark.org/review/17960
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Petri-Dish: Jaap Keuter <jaap.keuter@xs4all.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-09-29 00:51:15 +00:00
Birol Capa
814477c32f PROFINET: Fix pointer variable 'fp' previously deallocated warning
'fp' pointer variable was freed or deleted in an earlier statement.

To make code more readable and to avoid possible future mistakes
make sure that developer sees this situation.

Change-Id: Ib5b9c4c32000adf05a30e094ebc98fe4bc4cfa52
Reviewed-on: https://code.wireshark.org/review/17961
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-09-29 00:49:57 +00:00
Birol Capa
a3ce2336b2 PROFINET: Fix possibly passing a null pointer to function
A NULL pointer is possibly being passed to a function identified.

Change-Id: I87afb4fcd669451d94fecbcb827e7ff82d3e6740
Reviewed-on: https://code.wireshark.org/review/17950
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
2016-09-28 18:14:14 +00:00
Peter Wu
b6a2915d0d mate: fix Match edge cases, improve documentation
Use strcmp to sort AVPs in an AVPL and for matching instead of comparing
pointer addresses. Pointers can only be used for (in)equality, there is
no ordering in them. Matching of attributes however requires a better
ordering to know whether the operator (condition) or whether the operand
(data) can be skipped. Otherwise it is possible that condition (b)
randomly fails to match data (a,b).

User-visible changes (mainly edge cases):

 - Loose (a=1, a?) on data (a=0, a=1) would previously fail to return
   (a=0,a=1) because the a? condition is not tried for data a=0. Now it
   tries all compatible conditions for a data AVP.
 - Any Match condition like (a=1, a^1) would previously be treated the
   same as (a=1) while (a^1, a=1) would still be seen as (a^1, a=1). The
   first case is now fixed to match (a=1, a^1). (Via a fix in insert_avp
   to ensure that (a=1) is not considered the same as (a^1).)
 - Every (a=1, a=2) on data (a=1, b=1) previously failed, but the
   comment "it will not create a list if there is not a match for every
   attribute in op" suggests that it should return (a=1).
 - Every (a=1) on data (a=2) previously succeeded (bug) while it would
   fail on (a=2, b=1). This is fixed now by checking whether any of the
   conditions really have matching data for the attribute.

Other changes: optimize merge_avpl and new_avpl_*_match to insert in
linear time instead of quadratic, rewrite and add comments in an attempt
to make it easier to understand. Merge the new_avpl_every_match and
new_avpl_exact_match functions and rename it to new_avpl_pairs_match to
reflects its actual implemented functionality.

Not addressed in this patch is the quasi-randomness of the returned
data AVPL. AVPLs are unordered, so the condition Strict (a?) on data
(a=1, a=2) could in theory return either (a=1) or (a=2). In practice
this returns (a=1) because of alphabetical ordering, but this cannot
really be relied on. It gets worse for conditions like Strict (a?, a>1),
these are considered undefined behavior (without warnings for now).

Ping-Bug: 12184
Change-Id: I0008448ffcb96183f106cb937c4f488e26a82f92
Reviewed-on: https://code.wireshark.org/review/17777
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-09-23 05:59:26 +00:00
Birol Capa
7477e1c3b9 Fix Profinet RPCInterfaceUUID decoding
The translation of all RPCInterfaceUUID for PNIO evaluates to "PNIO".
However, UUID allows distinction of
 - UUID_IO_DeviceInterface (IOD-IF)
 - UUID_IO_ControllerInterface (IOC-IF)
 - UUID_IO_SupervisorInterface (IOS-IF)
 - UUID_IO_ParameterServerInterface (PServ-IF)

Bug: 12938
Change-Id: I97c27808f61abd96728421488bb0ee5fdbace566
Reviewed-on: https://code.wireshark.org/review/17865
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-09-22 15:41:41 +00:00
Guy Harris
d7fe514fc0 Improve support for single-character fields and filter expressions.
Add an FT_CHAR type, which is like FT_UINT8 except that the value is
displayed as a C-style character constant.

Allow use of C-style character constants in filter expressions; they can
be used in comparisons with all integral types, and in "contains"
operators.

Use that type for some fields that appear (based on the way they're
displayed, or on the use of C-style character constants in their
value_string tables) to be 1-byte characters rather than 8-bit numbers.

Change-Id: I39a9f0dda0bd7f4fa02a9ca8373216206f4d7135
Reviewed-on: https://code.wireshark.org/review/17787
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-09-19 02:51:13 +00:00
Pascal Quantin
29a243d61c irda: restore a line removed by mistake in ge4c059f
Bug: 12821
Change-Id: If6423c7f8443eccd6ddb4b699bbc327a965d0d74
Reviewed-on: https://code.wireshark.org/review/17477
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2016-09-04 09:54:17 +00:00
Guy Harris
d781979550 Use "ecatf" as the protocol name, to parallel everything else.
The fields have names beginning with "ecatf.", the dissector is called
"ecatf", and it's only the frame layer of EtherCAT anyway, so just call
it "ecatf".

Change-Id: I2f127363fd115c307f0525f612fe184a30d46c55
Reviewed-on: https://code.wireshark.org/review/17406
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-08-31 01:00:31 +00:00
Guy Harris
a4c8ebc18b Don't do any Decode As stuff for dissector tables not used with Decode As.
Have all dissector tables have a "supports Decode As" flag, which
defaults to FALSE, and which is set to TRUE if a register_decode_as()
refers to it.

When adding a dissector to a dissector table with a given key, only add
it for Decode As if the dissector table supports it.

For non-FT_STRING dissector tables, always check for multiple entries
for the same protocol with different dissectors, and report an error if
we found them.

This means there's no need for the creator of a dissector table to
specify whether duplicates of that sort should be allowed - we always do
the check when registering something for "Decode As" (in a non-FT_STRING
dissector table), and just don't bother registering anything for "Decode
As" if the dissector table doesn't support "Decode As", so there's no
check done for those dissector tables.

Change-Id: I4a1fdea3bddc2af27a65cfbca23edc99b26c0eed
Reviewed-on: https://code.wireshark.org/review/17402
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-08-31 00:08:01 +00:00
Dario Lombardo
91abbb3dd8 ethercat: fix check for SdoControl (CID 1256520).
Change-Id: I6a24974b41f9abee32e3a170b607062bf80f3368
Reviewed-on: https://code.wireshark.org/review/16990
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-08-10 19:32:08 +00:00
Michael Mann
9f4a294f22 Cleanup the final checkAPI g_warning complaints.
Change-Id: I7606ee55be4428909e255496c0344fffe5847f02
Reviewed-on: https://code.wireshark.org/review/16804
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-07-31 15:30:09 +00:00
Michael Mann
8b0e9c6672 Follow up for proto_tree_add_checksum.
Fill in the "gaps" so that all dissectors that verify checksums have both a
status and expert info field.

Also address comments from original proto_tree_add_checksum patch that didn't make it.

Ping-Bug: 8859
Change-Id: I2e6640108fd6bb218cb959fe9e4ba98a13e43a2f
Reviewed-on: https://code.wireshark.org/review/16590
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-07-27 03:40:02 +00:00
Michael Mann
907d49483d Fix some of the checkAPIs.pl warnings for g_warning.
1. Create ws_g_warning for legitimate uses of g_warning
2. Use proto_tree_add_debug_text
3. Comment some out

Change-Id: Ida044bf40286b955fdd529c4f9907c8e09b3d7c5
Reviewed-on: https://code.wireshark.org/review/16678
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-07-26 04:08:50 +00:00
Michael Mann
1da1f945e2 Fix checkAPI.pl warnings about printf
Many of the complaints from checkAPI.pl for use of printf are when its embedded
in an #ifdef and checkAPI isn't smart enough to figure that out.
The other (non-ifdef) use is dumping internal structures (which is a type of
debug functionality)
Add a "ws_debug_printf" macro for printf to pacify the warnings.

Change-Id: I63610e1adbbaf2feffb4ec9d4f817247d833f7fd
Reviewed-on: https://code.wireshark.org/review/16623
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-07-25 04:26:50 +00:00
Michael Mann
8505fb08c1 Fix shadow variable warnings.
Change-Id: I1e6bd722b3f04f171b462fc680ca080bb7ec03c7
Reviewed-on: https://code.wireshark.org/review/16625
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-07-24 15:16:14 +00:00
Pascal Quantin
53de2c2378 Convert more glib memory to wmem pinfo pool
Change-Id: I4cc23bc19a6bd8c6a8e0389eaf939dbb60fe0ca3
Reviewed-on: https://code.wireshark.org/review/16562
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-07-22 06:21:54 +00:00