Commit Graph

80199 Commits

Author SHA1 Message Date
Guy Harris f785cf5340 Fix the captions for the buttons in the "export specified packets" dialog.
The "Selected packet" caption is wrong, as there could be more than one
packet selected.  Furthermore, in the non-Windows "export specified
packets" dialog, the caption is "Selected packets only", so go with the
full caption.

The "Marked packets" caption also lacks the "only" that it has in the
other dialog; add it as well.
2021-03-14 17:10:57 -07:00
Guy Harris 03d6f39a99 libwiretap: make wtap_wtap_encap_to_pcap_encap() private to the library.
Only a tiny amount of code outside libwiretap needs to know about
pcap/pcapng LINKTYPE_ values, and all that code needs to know is, for a
given LINKTYPE_ value, what the corresponding WTAP_ENCAP_ value is.
Nothing should need to know, for a given WTAP_ENCAP_ value, what its
LINKTYPE_ value is.

Make it the case that nothing *does* need to know, for a given
WTAP_ENCAP_ value, what its LINKTYPE_ value is.  Export
wtap_dump_can_write_encap() and use *that*, in the "import hex dump"
code, what formats can be written to a pcap file.
2021-03-14 14:22:16 -07:00
Guy Harris 7dc17158db tap_export_pdu: fix an out-of-date comment. 2021-03-14 13:13:37 -07:00
Jirka Novak 2e87c27ce1 Voice dialogs: Unified naming and order of buttons in dialogs
Dialogs has same order of buttons:
- dialog specific (Flow Sequence, Find Reverse, Analyze, Reset Diagram)
- common voice functions (Prepare Filter, Play Streams)
- exports (Copy, Export)
- Close of dialog

Names were unified:
- Copy really copying to clipboard
- Save/Export was unified to Export
2021-03-14 19:08:45 +01:00
Guy Harris 01151ec332 Clean up "Export PDUs to File" code.
Combine exp_pdu_file_open() is called only by do_export_pdu(); just
combine them into one routine.

Get rid of the exp_pdu_t * argument to do_export_pdu(); instead, have
the exp_pdu_t structure be a local variable in that routine.  There's no
need to initialize exp_pdu_data.pkt_encap in
ExportPDUDialog::on_buttonBox_accepted() - do_export_pdu() already does
so.

The return value of do_export_pdu() isn't used; don't return anything.
2021-03-14 06:51:36 -07:00
Jirka Novak 006f0ab571 Voice dialogs: Added Select All/None/Invert to all of it 2021-03-14 13:14:53 +00:00
Gerald Combs bc45d75608 [Automatic update for 2021-03-14]
Update manuf, services enterprise numbers, translations, and other items.
2021-03-14 09:49:44 +00:00
Guy Harris d4c55ba464 tap_export_pdu: free err_info for WTAP_ERR_INTERNAL.
WTAP_ERR_INTERNAL also returns an err_info script describing the
internal error, so it should be freed to avoid leaking it.
2021-03-13 22:35:25 -08:00
Guy Harris 610dffbb19 pcapng: make sure the packet encapsulation matches the interface encapsulation.
If an attempt is made to write a packet with one encapsulation for an
interface with a different encapsulation, report an internal error.
2021-03-13 22:00:21 -08:00
Guy Harris c92f22d034 debian: wtap_register_backwards_compatibility_lua_name isn't a public API.
It's *not* for use by plugins, it's *only* for use by existing built-in
file type/subtype modules to provide support for an old deprecated
mechanism in Lua code.
2021-03-13 18:11:05 -08:00
John Thacker ea60a57826 tshark, export_pdu: Allow tshark to export PDUs to other file types
The export PDU API now allows writing to a different file type. tshark
already has a -F flag for the output file type. If that option is given,
respect it for export PDU. Also, rec.rec_header.packet_header.pkt_encap
expects WTAP encapsulation types, not PCAP encapsulation types, so don't
call wtap_wtap_encap_to_pcap_encap(), or else it won't actually write to
pcap files, only pcapng (using the wrong sort of encap numbers eventually
leads to WTAP_ENCAP_PER_PACKET, which we don't write to non-pcapng.)
2021-03-14 00:14:40 +00:00
Guy Harris 9bd144b8ea tshark: clean u the way the -U option lists available taps.
Allow "-U ?" as well as an empty argument; an empty argument is a bit
counterintuitive.

Simplify the introductory line of output - asking for a list of taps
isn't an error in which the user failed to supply a tap name, it's a
case where the user suplied a request for a list of tap names.

Just use fprintf() to print the list, and indent the elements of the
list, as we do with other lists of valid arguments.

List the valid arguments if the user specified an invalid argument as
well.
2021-03-13 15:32:14 -08:00
Thomas Sailer b5f2ed34b1 btle: decode new control PDUs and advertising info in 5.2
Decode control PDUs and advertising informationintroduced in
Bluetooth Core v5.2
2021-03-13 16:56:11 +00:00
Gerald Combs d23b0b82c4 GitLab CI: Fix our debian-stable version.
Run tools/make-version.pl in the build:debian-stable job.

Make sure make-version.pl updates debian/control correctly.
2021-03-13 16:36:35 +00:00
Preston Hunt 172323a3e1 IEEE 802.11: Add dissection of FTM action trigger values 2021-03-13 14:06:13 +00:00
Guy Harris 1eb4a62dbc tshark: fix handling of "you're writing to a closed pipe" errors on Windows.
On Windows, a write to a pipe where the read side has been closed
apparently may return the Windows error ERROR_BROKEN_PIPE, which the
Visual Studio C library maps to EPIPE, or may return the Windows error
ERROR_NO_DATA, which the Visual Studio C library maps to EINVAL.

So, on Windows, for errors other than the ones for which we're reporting
a special error message, check for EINVAL with a *Windows* error of
ERROR_NO_DATA and, if that's what we have, don't print an error message;
otherwise, print an error message that reports a message based on the
Windows error (rather than a relatively uninformative "Invalid argument"
error).

This should fix issue #16192.

Clean up indentation while we're at it.
2021-03-13 12:37:46 +00:00
Martin Mathieson e5916d1fc9 NVME: Fix some spellings 2021-03-13 12:01:11 +00:00
Guy Harris f99bd01cee nvme: don't assume "%lu" is the right format to use for a guint64.
The right format to use is "%" G_GUINT64_FORMAT.  A guint64 might be an
unsigned long or it might be an unsigned long long; do not assume which
one it will be on all platforms.
2021-03-13 03:31:12 -08:00
Guy Harris 5d39e36198 doc: Clean up lists of file types.
Add missing entries, regularize the descriptions, etc..

Note that pcap and pcapng are the native formats.

Fix various issues.

Update the editcap -F output to match urrent reality.

While we're at it, sort the libwiretap modules, putting observer.c in
the right place.
2021-03-13 10:02:02 +00:00
Valerii Zapodovnikov cc6a45420a VP8: some cosmetics from RFC 7741 2021-03-13 09:36:21 +00:00
Dr. Lars Völker dabf0af6b7 AUTOSAR NM: In default configuration all CAN packets will be dissected
The default value for the CAN-ID Mask is currently 0. If no config is
present, all comparisons would be always true. This leads to all CAN
packets are being dissected by this dissector by default.
This is a huge performance problem and surely not intended.

This patch sets the default of the CAN-ID Mask to 0xffffffff, so that
in the unconfigured case, only the CAN-ID 0 would be dissected.
2021-03-13 08:00:30 +00:00
Constantine Gavrilov 272ff625f5 NVME Identify Controller: decode TNVMCAP, UNVMCAP, RPMBS fields.
Also, undo a3000150a6 changes, per review comments.
2021-03-13 07:18:47 +00:00
Constantine Gavrilov d509e7e872 NVME Identify Controller: decode MTFA, HMPRE, HMMIN fields. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov b7f3a922e0 NVME Identify Controller: decode AVSCC, APSTA, WCTEMP, CCTEMP fields. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 6b9adc46de NVME Identify Controller: Error Log Page Entries and Number of Power States decoding. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov ded4a94c71 NVME Identify Controller: Firmware Updates and Log Page Attributes decoding. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov e2b444a650 NVME Identify Controller: fix compile with CLANG in strict mode. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 5d0488cadc Refactor dissect_nvme_identify_ctrl_resp() function.
Since the intention is to add full decoding of the entire page, rewrite the function to use
add_tree_entries() and define decoding structures to avoid repeating the same code for
each decoded block.
2021-03-13 07:18:47 +00:00
Constantine Gavrilov 72443746a8 NVME Identify Controller: decode Optional Admin Command Support. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov d1f5fa2965 NVME Identify Controller: decode NVMe Management Interface 2021-03-13 07:18:47 +00:00
Constantine Gavrilov d277368d26 NVME Identify Controller: decode Command Retry Delay Times 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 23a3f83140 NVME Identify Controller: decode FRU Globally Unique Identifier. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov c88eb867d6 NVME Identify Controller: decode Controller Type 2021-03-13 07:18:47 +00:00
Constantine Gavrilov f7ba8421cf NVME Identify Controller: add Read Recovery Levels decoding. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 7d20992d8f NVME Identify Controller: add and use add_decode_group(). 2021-03-13 07:18:47 +00:00
Constantine Gavrilov af803b6f01 NVME Identify Controller: Decode Contoller Attributes. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 04add823a5 NVME Identify Controller: Decode RTD3 fileds. 2021-03-13 07:18:47 +00:00
Constantine Gavrilov 84be51e614 NVME Identify Controller: Decode Optional Asyncrhonous Events Support. 2021-03-13 07:18:46 +00:00
Constantine Gavrilov de0a0a3568 NVME Identify Controller: decode additional fields:
* Firmware revision (FR)
* Recommended Arbitration Burst (RAB)
* IEEE OUI Identifier (IEEE)
* Controller Multi-Path I/O and Namespace Sharing Capabilities (CMIC)
* Print MDTS pages value
* Controller ID (CNTLID)
* Version (VER)
2021-03-13 07:18:46 +00:00
Valerii Zapodovnikov 381207c4e3 RTP: fixed comments, https 2021-03-13 04:05:12 +00:00
Gerald Combs e5adb4b506 GitLab CI: Speed up our fetching/cloning.
Fetching the complete Wireshark repository in GitLab's CI currently
takes about 3.5 minutes. GitLab CI lets you do shallow cloning, but only
up to 1000 commits. This isn't sufficient for any of our jobs that might
need a reachable tag since it's currently about 1200 commits away in
master.

Set GIT_DEPTH to 1 (which appears to trigger the required shallow clone
logic in GitLab's CI), then deepen it by setting GIT_FETCH_EXTRA_FLAGS
to "--depth=5000". This is *should* be much faster than a full checkout
and still give us a reachable tag:

$ git rev-list --count v3.3.0rc0..v3.5.0rc0
2330
$ git rev-list --count v3.1.0rc0..v3.3.0rc0
2198
$ git rev-list --count v2.9.0rc0..v3.1.0rc0
3449
2021-03-12 18:01:47 +00:00
Alexis La Goutte 71f4712532 ncsi: Fix warning found by Clang Analyzer
packet-ncsi.c:653:55: warning: Although the value stored to 'offset' is used in the enclosing expression, the value is never actually read from 'offset' [deadcode.DeadStores]
2021-03-12 12:33:52 +00:00
Alexis La Goutte c3687757b9 mbim: Fix warning found by Clang Analyzer
packet-mbim.c:2871:5: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
packet-mbim.c:2976:5: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
packet-mbim.c:4053:9: warning: Value stored to 'offset' is never read [deadcode.DeadStores]
2021-03-12 12:33:52 +00:00
Vahap Emin Ağaoğulları ed2955cf4c PTP: PTPv2 dissection updates
PTPv2 dissection dissected according to IEE Std 802.1AS-2011
This dissection updated according to IEE Std 802.1AS-2020.
2021-03-12 10:42:52 +00:00
ishaangandhi ee64d6362c ICMP: Support MTU in RFC 5837
This commit parses MTU's from interface identification objects when possible. Previously, they were unread.
2021-03-12 08:53:43 +00:00
Guy Harris c473eba8dc observer: rename source and update name.
Name the source to the code to read Observer files after the file
format, not the company that created it, got bought by JDSU, and then
ended up in Viavi when JDSU split.

Refer to the file format as "Viavi Observer" to reflect that.
2021-03-11 16:01:27 -08:00
Guy Harris 2561f1e9f8 libwiretap: don't have a central table of file type/subtype name mappings.
Let individual file type/subtype modules register their
backwards-compatibility names, rather than having a centralized table
that would need to be updated along with the module.
2021-03-11 13:56:40 -08:00
Guy Harris 98485a1c27 pcapng: small cleanups in pcap_open().
We don't need to initialize first_section before calling
pcapng_read_section_header_block(); it doesn't depend on it being
initialized, and sets byte_swapped, version_major, and version_minor if
what it reads is a valid SHB, so we don't need to set those in
pcap_open().

We don't need to set shb_off until we've deemed this to be a pcapng
file, so do so at the same point that we initialize

We also don't need to initialize wblock until we call
pcapng_read_section_header_block(), so do so all in one place.
2021-03-11 12:49:24 -08:00
Guy Harris e0afa7f2a4 Observer is now a product of Viavi.
JDSU bought Network Instruments, and then split into Viavi and Lumentum,
with Viavi getting Observer.
2021-03-11 20:02:14 +00:00
Nardi Ivan 20a6fea312 EAP: fix a memory leak 2021-03-11 19:52:38 +01:00