Commit Graph

81677 Commits

Author SHA1 Message Date
Gerald Combs 50da270b8a BLF: Fix Win32 compilation issues.
Fix

```
wiretap\blf.c(368,73): error C2220: the following warning is treated as an error [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(368,73): error C2220:         unsigned char *compressed_data = g_try_malloc0(tmp.infile_length); [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(368,73): error C2220:                                                                         ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(368,73): warning C4244: 'function': conversion from 'guint64' to 'gsize', possible loss of data [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(368,73): warning C4244:         unsigned char *compressed_data = g_try_malloc0(tmp.infile_length); [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(368,73): warning C4244:                                                                         ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(375,59): warning C4244: 'function': conversion from 'guint64' to 'gsize', possible loss of data [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(375,59): warning C4244:         unsigned char *buf = g_try_malloc0(tmp.real_length); [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(375,59): warning C4244:                                                           ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(654,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(654,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(blf_ethernetframeheader_t)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(654,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
  busmaster.c
wiretap\blf.c(733,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(733,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(blf_ethernetframeheader_ex_t)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(733,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(818,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(818,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(canheader)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(818,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(859,27): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(859,27): warning C4018:         if (object_length < (data_start - block_start) + sizeof(canheader) + payload_length_valid + sizeof(can2trailer)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(859,27): warning C4018:                           ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(894,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(894,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(canheader)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(894,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(966,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(966,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(canheader)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(966,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1045,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1045,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(frheader)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1045,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1126,23): warning C4018: '<': signed/unsigned mismatch [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1126,23): warning C4018:     if (object_length < (data_start - block_start) + sizeof(frheader)) { [build\wiretap\wiretap.vcxproj]
wiretap\blf.c(1126,23): warning C4018:                       ^ [build\wiretap\wiretap.vcxproj]
```
2021-07-18 17:05:31 -07:00
Developer Alexander 1f12e1d267 json: fix buffer overflow in string_unescape()
Fixes a potential buffer overflow issue in string_unescape() with a redesign
to be more robust against invalid input.

It makes use of wmem_strbuf API now.

Closes #17475
2021-07-18 20:02:52 +00:00
Gerald Combs 96c29704c8 [Automatic update for 2021-07-18]
Update manuf, services enterprise numbers, translations, and other items.
2021-07-18 09:29:30 +00:00
Evan Huus f54493278f Delete various unused fields
Discovered during the build failure of
https://gitlab.com/wireshark/wireshark/-/merge_requests/3695
2021-07-17 16:35:41 -04:00
Jaap Keuter 490017ea7f XML: don't try to hide the UTF-8 Byte Order Mark
Closes #17489
2021-07-17 08:52:42 +00:00
Developer Alexander 2051cadf99 can: Optimized column info for better readability
Column info is tuned for better readability. It containes CAN ID and Length.
The same applies to protocol item within protocol tree.

Entire packet data (payload) should not be printed to column info by default.
So this behaviour is removed.
2021-07-17 07:15:27 +00:00
Guy Harris c64a9bbde7 erf: make a copy of the first SHB comment.
We free it, but what wtap_block_get_nth_string_option_value() returns is
what's stored in the block, and it might get freed up out from under us.
Save a copy of it, so that when we free it, we're not double-freeing.
2021-07-16 15:59:58 -07:00
Dr. Lars Völker 27c72d1edc LIN: Fix ID parsing (bugfix) 2021-07-16 17:56:46 +02:00
Dr. Lars Völker 73bb25bbc9 BLF: fix clang warnings 2021-07-16 14:45:21 +00:00
Dr. Lars Völker c22846d898 ISO15765: Add support for the new CAN API
This patch allows to register single IDs for CAN.
2021-07-16 10:09:44 +00:00
Arkady Gilinsky 4742371c97 oampdu: Add Network port declaration and it's parsing to GetRequest packets
* Declarations were added according to CableLab specification

Signed-off-by: Arkady Gilinsky <8351139-ark-g@users.noreply.gitlab.com>
2021-07-16 09:44:54 +00:00
Dr. Lars Völker 4cb4217dfd TECMP: Adding a filter for Channel ID names
This patch allows adding a channel name column or use a filter for it.
2021-07-16 09:28:45 +00:00
Dr. Lars Völker e0055d0698 Signal-PDU: Add support for the new CAN API
This patch directly registers configured CAN IDs.
2021-07-16 09:12:18 +00:00
Gerald Combs 6cb4f17828 NSIS: Add DPI awareness
Set `ManifestDPIAware true` in the NSIS installer and uninstaller. Note
that this trades a better appearance on HiDPI displays for some
oddly-sized controls.
2021-07-16 08:43:31 +00:00
Dr. Lars Völker 102a952533 CAN: Adding support for more specific tables (2)
This patch changes TECMP, 1722, and caneth to use the new
socketcan_call_subdissectors method.
2021-07-16 08:27:11 +00:00
Jaap Keuter fba16c88f4 JUNIPER: Set proper item length for protocol layer 2021-07-16 08:10:34 +00:00
Dr. Lars Völker 796819c955 BLF: Support for BLF file format
This patch adds first support for the BLF file format.
2021-07-16 07:37:43 +00:00
Gerald Combs feea07528a docbook: Fix our admon image widths.
Set a minimum width for our admonition graphics. Otherwise some browsers
make them tiny. Fixes #17473.

Fix was done via

420a8a3d7c

which also pulls in upstream CSS fixes.
2021-07-16 07:00:45 +00:00
Gerald Combs a2718d0d22 CMake: Remove no-longer-used checks.
The following commits removed code that required the following defines,
so remove them:

c0711693ab HAVE_GETOPT_H (Partial; still required by CMake)
2925fb0850 HAVE_MKSTEMPS
0c889d6f5c HAVE_SYS_IOCTL_H
0c889d6f5c HAVE_SYS_SOCKIO_H
0c889d6f5c HAVE_STRUCT_SOCKADDR_SA_LEN
9c5049a80b HAVE_STRUCT_STAT_ST_FLAGS
2021-07-15 15:03:53 -07:00
Evan Huus f58850d207 tcp: switch packet_scope to pinfo->pool
Per mailing list discussion:
https://www.wireshark.org/lists/wireshark-dev/202107/msg00030.html

Long-term we want to get rid of the wmem_*_scope globals in favour of
passing wmem pools around. Step one is to replace all reasonable uses of
wmem_packet_scope() with pinfo->pool which has effectively the same
lifespan. This converts the TCP dissector as a proof of concept. TCP is
a common enough protocol this should stress-test the idea fairly well.
2021-07-15 18:14:16 +00:00
Arkady Gilinsky 96c0700c62 wireshark(HEAD): oampdu: Fix: do not stop GetReq packet parsing for Object 0
* The next_byte variable is taken before the pointer moved forward, this lead
   to stop parsing get request packets when object is 0. This commit fixes it.

Signed-off-by: Arkady Gilinsky <8351139-ark-g@users.noreply.gitlab.com>
2021-07-15 13:01:38 +00:00
Martin Mathieson 458d870a66 ORAN FH CUS: Fix C-Section dissection.
Some fields are present or not depending upon the section
type - fix reserved/beamId error.
2021-07-15 11:44:21 +01:00
Guy Harris 0822e8b3e5 tshark: fix the checks for --capture-comment.
Move those checks out of #ifdef HAVE_LIBPCAP/#endif, as that option is
supported even if we don't build with pcap - it's also used when reading
one file and writing another.

Don't check for pcapng when deciding whether, when reading from an
existing capture file, we can write it with added file comments; check
whether the specified file type supports file comments and, if it
doesn't, report all file formats that do as part of the error.
2021-07-15 02:10:52 -07:00
Developer Alexander 2a1ebd1e91 can: more specific dissector tables for CAN IDs and extended IDs
Introduces two new dissector tables can.id and can.extended_id to enable a
more precise control of subdissectors dependent on the can id which is often
used to identify the the payload.

Since standard CAN IDs and extended IDs can be used in the same network and
their ranges overlap it is necessary to have two different dissector tables.

Existing Decode as dissector table can.subdissector stays as is to prevent a
breaking change. But new dissector tables can.id and can.extended_id get
priority over can.subdissector since they are more specific. Id they get a
match can.subdissector won't be called.

New dissector tables can.id and can.extended_id are accessible in lua scripts
via DissectorTable:add() while can.subdissector unfortunately is not.

For related Discussion see MR !3405
2021-07-15 07:29:46 +00:00
Gerald Combs 34ef2066e5 CMake: Don't bother checking for fcntl.h or floorl.
fcntl.h appears to be available on all of our supported platforms,
including Windows. We've also been including it without HAVE_FCNTL_H
guards in a few places (e.g. sshdump.c) without any issues for some
time.

floorl is part of C99.
2021-07-15 06:41:05 +00:00
J M cbed7130de DoIP: Add TLS handover for encrypted communication 2021-07-15 06:40:22 +00:00
Guy Harris 0a9ef601d2 Clean up handling of --capture-comment.
Don't store the comments in a capture_options structure, because that's
available only if we're being built with capture support, and
--capture-comment can be used in TShark when reading a capture file and
writing another capture file, with no live capture taking place.

This means we don't handle that option in capture_opts_add_opt(); handle
it in the programs that support it.

Support writing multiple comments in dumpcap when capturing.

These changes also fix builds without pcap, and makes --capture-comment
work in Wireshark when a capture is started from the command line with
-k.

Update the help messages to indicate that --capture-comment adds a
capture comment, it doesn't change any comment (much less "the" comment,
as there isn't necessarily a single comment).

Update the man pages:

- not to presume that only pcapng files support file comments (even if
that's true now, it might not be true in the future);
- to note that multiple instances of --capture-comment are supported,
and that multiple comments will be written, whether capturing or reading
one file and writing another;
- clarify that Wireshark doesn't *discard* SHB comments other than the
first one, even though it only displays the first one;
2021-07-15 05:43:36 +00:00
Stefan Metzmacher 94ac641efa packet-kerberos: implement PAC Ticket checksum verification
We use some private functions from MIT kerberos:
- krb5_free_enc_tkt_part()
- decode_krb5_enc_tkt_part()
- encode_krb5_enc_tkt_part()
but we already do that for krb5int_c_mandatory_cksumtype(),
which is newer than the above functions.

We use all of them only under HAVE_KRB5_PAC_VERIFY,
so we don't seem to need additional configure tests.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2021-07-15 04:52:30 +00:00
Stefan Metzmacher 8cd877fc4d packet-kerberos: always get the true length from decrypt_krb5_data_asn1()
Otherwise the child_tvb blobs may contain to much data.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2021-07-15 04:52:30 +00:00
Gerald Combs 9b78a42855 CMake: Fixup qtui's includes.
Add ${MINIZIP_INCLUDE_DIRS} to qtui's includes instead of every
target's. Make more includes SYSTEM PRIVATE.
2021-07-14 17:33:18 -07:00
Gerald Combs f6872b0c3e GitLab CI: Produce less test output.
Pass `--output-on-failure` instead of `--verbose` to ctest so that we
produce more relevant output.
2021-07-14 18:17:08 +00:00
Alexis La Goutte 0ea7692ec4 sv: fix typo ConfRef => ConfRev
Reported by Robert Sandholzer (#17486)
2021-07-14 17:46:39 +00:00
Gerald Combs 8834b470d0 CMake: Fixup SpanDSP's TIFF includes.
Add TIFF_INCLUDE_DIR to SPANDSP_INCLUDE_DIRS, but only if TIFF has been
found.

Ping #17477.
2021-07-14 09:10:09 -07:00
Martin Mathieson 1f9f287fba ISO15765: Make a function static. 2021-07-14 13:29:33 +01:00
Martin Mathieson 560f271d27 ISIS-LSP: Fix spelling of "algorithm" 2021-07-14 10:56:24 +00:00
Guy Harris dfef4a750d Rename LONGOPT_NUM_CAP_COMMENT to LONGOPT_CAPTURE_COMMENT.
The latter is what editcap calls --capture-comment, and the _NUM serves
no purpose whatsoever.  One #define name for it suffices.
2021-07-14 09:51:54 +00:00
Dr. Lars Völker 95dc4f52bc LIN: Adding support for LIN dissection
This patch adds support for LIN (Local Interconnect Network) as
well as support for:
- Signal PDUs on LIN
- ISO 15765 (ISO TP) on LIN
- TECMP transported LIN is handle like LIN

LIN is a simple automotive fieldbus to connect for example simple
sensors and actuators to an electronic control unit.
2021-07-14 09:31:06 +00:00
Guy Harris cc36b74139 pcapng: shuffle functions that process various option types.
Define them in the order in which wiretap/wtap_opttypes.h defines the
corresponding enum values for wtap_opttype_e.
2021-07-14 01:01:27 -07:00
Guy Harris 7b0c4950a5 wiretap: clean up option definitions a bit.
Spell out "DESCRIPTION" for the IDB description option, as it's spelled
out in the pcapng spec.

Put the #defines for various options in the same order as the block
types for them are in the pcapng spec.
2021-07-14 06:55:12 +00:00
Chuck Craft b531a6aa61 WSUG: rpcapd not included with npcap
Open issues at npcap to support rpcap client and server:
https://github.com/nmap/npcap/issues/312
https://github.com/nmap/npcap/issues/74
2021-07-14 06:35:54 +00:00
David Perry 0c6d1216fe Rework how comments show in edit menu
Addresses [this issue][1] reported with the revised comment editing UI,
wherein comments with embedded newlines may not appear properly in the
menu.

[1]: https://gitlab.com/wireshark/wireshark/-/merge_requests/2859#note_621024711
2021-07-14 04:55:06 +00:00
David Perry 67b54e8b66 tshark: allow --capture-comment when reading a file
Allows adding one or more capture comments to a new pcapng file when
tshark is reading from a file. Currently, tshark only allows setting one
capture comment, and that only when doing a live capture.

The use case for this feature is given in bug #15005.
I decided to allow multiple capture comments to match the same ability
in `editcap`.

To allow this change, I changed the function signature of
`process_cap_file()` so it takes a `capture_options` struct instead of
individual parameters that affect the capture.
2021-07-14 04:34:52 +00:00
Gerald Combs ff60fcf92d CMake: Adjust wsutil includes and linking.
Mark wsutil's includes SYSTEM PRIVATE. This exposed a lot of targets
that were indirectly picking up include paths via the wsutil target, so
add direct includes where needed. The G.722 and G.726 codecs were
implicilty including tiffio.h; find it explicitly instead.

Mark some of wsutil's libraries PRIVATE, but leave commonly-used ones
PUBLIC.

Ping #17477.
2021-07-14 03:56:05 +00:00
Gerald Combs 9ae60d8483 GitLab CI: Don't print a performance summary on Windows.
In the Windows merge request build job, don't pass
/consoleloggerparameters:PerformanceSummary;NoSummary to msbuild. It
makes the output more verbose and in turn makes errors more difficult to
find.
2021-07-14 00:48:46 +00:00
Guy Harris 23f19e4a5d wiretap: iptrace/Sniffer/Peek classic always have packet flags.
For iptrace files, there's always a direction indication (which also
means that the flags field will never be zero - "outbound" and "inbound"
both have non-zero values - so the test for non-zero always succeeds, so
it's not even a useful test).

For Sniffer Ethernet/FDDI/synchronous serial line files, and for Peek
classic files, there are always flags; they might be zero if there were
no errors, but that doesn't mean that the lack of errors shouldn't be
noted with a flags field.

While we're at it, shuffle creating of the block next to the setting of
the record type - the block and record type should match, so the two
operations are doing related things.
2021-07-14 00:31:03 +00:00
Gerald Combs 9c344b207d CMake: Fix nullability warnings for the version_info target.
Add "SYSTEM" to "target_include_directories(version_info ...", which
keeps

```
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/_stdio.h:93:16: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
        unsigned char   *_base;
                        ^
```

from being printed here.
2021-07-13 23:56:42 +00:00
Chuck Craft a7d927a9e9 prefs_register_protocol_obsolete protocols with only obsolete prefs
Related to #17465 and !3526
2021-07-13 23:12:04 +00:00
bookding 175d75aa03 MySQL: Add support for session track gitds & transaction info 2021-07-13 21:43:41 +00:00
Martin Mathieson eb2015a373 DCT2000: Support a format for MAC-NR PDUs inside comment lines 2021-07-13 17:22:01 +01:00
Richard Sharpe 893ec461f2 ieee80211: Correctly handle trigger frames when there is no padding. 2021-07-13 07:10:15 -07:00