This makes it easier to track the packet number cipher.
Change-Id: I220935e91c324e0a641306c590f55af4992ee2e1
Ping-Bug: 13881
Reviewed-on: https://code.wireshark.org/review/29636
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Dissect functions for CNUM/VTS were returning TRUE for all wrong role/type combinations instead of FALSE ( = Rejecting the parameter )
Change-Id: I1aae5b76db83cef6b59f5244c05a67b2110f8969
Reviewed-on: https://code.wireshark.org/review/29634
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This reverts commit f94cfa0cdc.
Reason for revert: we don't use those diagnostic pragmas with those
older compilers.
Change-Id: I5154527dcc3813fb893c382059cb33538f2d29f7
Reviewed-on: https://code.wireshark.org/review/29639
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Use dummy length in proto_tree_add_subtree_format(),
proto_item_set_len() will set the correct length later.
Bug: 15120
Change-Id: I7a56f3d1541b75eb53bc03750b6402a8b78a8251
Reviewed-on: https://code.wireshark.org/review/29465
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
- update doc link to MBIM_CID_PCO
- add numeric values and dissector skeleton for MBIM_CID_BASE_STATIONS_INFO
and MBIM_CID_LOCATION_INFO_STATUS
- MBIM_CID_MS_NETWORK_BLACKLIST: Set command has the same data as response
- MBIM_CID_MS_NETWORK_BLACKLIST: Query command has no data, but is legal
Change-Id: I8158029ae1e9ae2bc6fb389e889eb0bb71aa3d5d
Reviewed-on: https://code.wireshark.org/review/29624
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Its handling of warnings, and of warnings-treated-as-errors, is horribly
broken; once you've asked for a warning, and have specified -Werror,
there appears to be nothing whatsoever that you can do to keep that
warning from being an error *everywhere* in the code.
Prior to change Ib591a1d6beaa13337d927a446b4d8d5e687ff610, the tests for
warnings were all failing on the macOS buildbot, so *no* warnings were
being requested.
With this change, a warning won't be reported as an error, but at least
it'll be reported.
(We should probably switch to using Clang on the macOS buildbot at some
point; I don't know whether the version of Clang currently on the
buildbot is safe to use, but if we ever run a newer version of Xcode,
which doesn't come with llvm-gcc - which may involve running a newer
version of macOS on the buildbot as well - it's presumably safe, given
that it's the only compiler Apple shipped.)
Change-Id: I677967cb87b91f68f08de546e59abff1dbd6788b
Reviewed-on: https://code.wireshark.org/review/29623
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Messages with long headers have a payload length while short header
messages extend to the end of a datagram.
Create a new tvb for every message since the decryption routines assume
that the header starts from the beginning of the tvb.
quic_get_message_tvb tries to avoid throwing exceptions in most cases if
the (payload) length is too large such that dissection can proceed until
the payload is encountered. (One edge case is when the varint cannot
even be read, but then indeed the message is severely malformed.)
Change-Id: Id42f55dfd73905b709b218002b9ca660f6f703f1
Ping-Bug: 13881
Reviewed-on: https://code.wireshark.org/review/29607
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
It was setting EF_TYPE and then clearing it; it should set EF_TYPE and
clear EF_VALS.
Change-Id: Ie0a85a12646c0395e50abb34caf32367e4191da0
Reviewed-on: https://code.wireshark.org/review/29621
Reviewed-by: Guy Harris <guy@alum.mit.edu>
If you specify -Werror and -Wshorten-64-to-32, there does not appear to
be any way to get llvm-gcc *NOT* to treat those warnings as errors - not
with pragmas, and not even with -Wno-error=shorten-64-to-32.
Change-Id: Ia82df3f548085cca8d187c4b43c02060b87f0542
Reviewed-on: https://code.wireshark.org/review/29620
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Replace a tab in an arguments string with a space while we're at it.
Change-Id: Iee6ce920fbd7a883fb23bc798abb7f965e3757e6
Reviewed-on: https://code.wireshark.org/review/29619
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Ninja, at least, complains about tabs.
Change-Id: I65c3458dadc7096773084864d5e3970d1d9d580d
Reviewed-on: https://code.wireshark.org/review/29618
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Prepare for PKN decryption (draft -12) during the initial handshake.
Ping-Bug: 13881
Change-Id: I675086f732e39679bcb94e2e20da3d4bd40d0f2e
Reviewed-on: https://code.wireshark.org/review/29606
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
It appears that -Werror overrides them, at least with llvm-gcc; I guess
the options are evaluated in order.
Change-Id: I0fd9e544a8e191a8950e17e97513912034763645
Reviewed-on: https://code.wireshark.org/review/29615
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Was Apple trying to release a game for Mac OS X, somewhat resembling
Whack-A-Mole, when they went into the lab and had Igor help them stitch
together the GCC front end and the LLVM back end?
Change-Id: If08392c3d244a83f50f62b4d7c878ae9a274ec4b
Reviewed-on: https://code.wireshark.org/review/29614
Reviewed-by: Guy Harris <guy@alum.mit.edu>
See if *that* prevents us from failing with a warning;
-Wno-error=unused-function doesn't seem to do the trick.
Change-Id: If2dec4ca70451670d0181c6cd0c7bc714e856c95
Reviewed-on: https://code.wireshark.org/review/29613
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Always use -Werror if it's supported, even with Apple's llvm-gcc, and
only use -Wno-error= with llvm-gcc. Use -Wno-error= with all the errors
we get in the buildbot.
Change-Id: I6797f064d2d354f979e24fcb04f592e9313af721
Reviewed-on: https://code.wireshark.org/review/29612
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This reverts commit f6b8bc39c6.
Reason for revert: prior to 4.6 or so, the pragmas didn't work as well,
e.g. they couldn't be used inside a function; we depend on them being
usable within a function.
Change-Id: I7a7a0c08a2aca553233c237b8b6c43115095804e
Reviewed-on: https://code.wireshark.org/review/29610
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Apple's llvm-gcc appears not to support suppressing warnings with
pragmas, so, if we're building on a Mac (we check for APPLE), and we're
not using Clang, we don't turn on -Werror, because we rely on those
pragmas to suppress otherwise-unremovable warnings in order to build
warning-free.
Change-Id: I43bd1ab42918c6ba22643b4a2d4cc3618c25434b
Reviewed-on: https://code.wireshark.org/review/29609
Reviewed-by: Guy Harris <guy@alum.mit.edu>
The ieee80211ax D3.0 support got merged accidentally with some issues.
This fixes the remainder of those issues.
Change-Id: I2a3a427e04cb1dca076fd761458de92d4d5e0df2
Reviewed-on: https://code.wireshark.org/review/29602
Petri-Dish: Richard Sharpe <realrichardsharpe@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Replace $HOME with ~ in window title %F variable.
Optimize code to check if variable is used before doing replacement.
Change-Id: I95ef8505e50379d98fdb1661e09394d1ded7ecca
Reviewed-on: https://code.wireshark.org/review/29597
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
The macOS buildbot is currently using llvm-gcc, which is based on GCC
4.2.
Change-Id: I8497243333410380e1d0bc7fa35bccbf841cada1
Reviewed-on: https://code.wireshark.org/review/29596
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Srsly, you're dealing with *one-byte*, *two_byte*, and *four-byte*
values, might as well say "1", "2", and "4" - either sizeof(guint8) is
guaranteed to be 1, sizeof(guint16) is guaranteed to be 2, and
sizeof(guint32) is guaranteed to be 4, in which case you might as well
just use 1, 2, and 4, or they're *not* guaranteed to be 1, 2, and 44, in
which case you *have* to use 1, 2, and 4, because a value other than 1,
2, or 4 is invalid.
Change-Id: I49b354cd619f6fe8d625af0322f4861ad8f9b1f1
Reviewed-on: https://code.wireshark.org/review/29591
Reviewed-by: Guy Harris <guy@alum.mit.edu>
The original reason for having a WARN_FLAGS set of variables has
been lost.
Change-Id: I3eae3cf9d0bad5f3895f6fee59c2c64183c8f244
Reviewed-on: https://code.wireshark.org/review/29526
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This changeset merges in the changes that have been tested in a resent
test event at the WFA. It will not dissect older D2.x packet captures.
Change-Id: Id38a27a61a6a2a083575448e5c59a8e190827e6d
Reviewed-on: https://code.wireshark.org/review/29512
Petri-Dish: Richard Sharpe <realrichardsharpe@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
- this change re-enables dissection of large lists of sequential objects lacking prefixes.
- corrected some object/variation text in the comments
Change-Id: Ia410f53198e9918509208739c94dbb4df4ecfc25
Reviewed-on: https://code.wireshark.org/review/29582
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Srsly, you're dealing with *four-byte* value, might as well say "4" -
either sizeof(guint32) is guaranteed to be 4, in which case you might as
well just use 4, or it's *not* guaranteed to be 4, in which case you
*have* to use 4, because a value other than 4 is invalid.
Change-Id: I6deb106f326e9402744a2e728468b3ce4c220b02
Reviewed-on: https://code.wireshark.org/review/29586
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Srsly, you're fetching a *two-byte* value, might as well say "2" -
either sizeof(guint16) is guaranteed to be 2, in which case you might as
well just use 2, or it's *not* guaranteed to be 2, in which case you
*have* to use 2, because a value other than 2 is invalid.
Change-Id: I9da8dc66d3a77e98cb0a0a5501655594c509eb87
Reviewed-on: https://code.wireshark.org/review/29585
Reviewed-by: Guy Harris <guy@alum.mit.edu>