commit cde7eb73a1b
Author: Niels Widger <niels@qacafe.com>
Date:   Mon Mar 25 13:58:54 2024 -0400

    sharkd: Add "column_info" field to "status" method

    Add new `column_info` field to `sharkd`'s `status` method which
    contains additional column information.  A new `column_info` field was
    added because the existing `columns` field is a simple string array
    and therefore new fields could not be added to it in a
    backwards-compatible manner.  The new `column_info` field includes
    each column's title, format string (i.e. `%x` or
    `%Cus:<expr>:<occurrence>` if `COL_CUSTOM`) as well as booleans
    indicating if the column is visible or resolved.

    The existing `sharkd` unit tests `test_sharkd_req_status_no_pcap` and
    `test_sharkd_req_status` have been updated to check for the new
    `column_info` field.

    (cherry picked from commit a7236f6a57802cddb8d57f21d904bea729051b09)

commit 99655aa204c
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Mar 27 09:52:21 2024 -0400

    IPPUSB: Avoid (mostly harmless) string overread

    The result of tvb_get_ptr and the CHUNKED_END array are not
    null terminated (but are guaranteed to be CHUNK_LENGTH_MIN),
    so memcmp is more appropriate than strncmp, as the later will
    call strlen, which goes outside the desired range. It's a read,
    not a write, and it will be thrown away because it will always
    compare larger than CHUNK_LENGTH_MIN, but there's no reason to
    do it. It also, at least on some versions of gcc and some compiler
    options, causes a stringop-overread warning that becomes an error.

    For good practice, replace the tvb_get_ptr + memcmp call with
    tvb_memeql.

    (cherry picked from commit 3a7b6188972e5fc59ce7df053e660b4f200795f8)

commit e6abb97eb87
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Mar 26 19:03:31 2024 -0400

    Qt: Apply the fix for SyntaxComboBoxes to Qt 5.15.3

    The change that caused SyntaxLineEdit backgrounds not to be applied
    when inside a QComboBox (#18175, caused by Qt trying to fix
    https://bugreports.qt.io/browse/QTBUG-81533) was backported to
    Qt 5.15.3, so apply it on those versions as well.

    There might well be a better way to work around this, but this
    is simple enough and works.

    Fix #18996

    (cherry picked from commit 24b27a78e2cb2c64f1b359c920fd5f2fa051396a)

commit c05c751df5a
Author: Gerald Combs <gerald@wireshark.org>
Date:   Mon Mar 25 16:29:53 2024 -0700

    Prep for 4.2.4

commit bff2e50c192
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 17:16:46 2024 -0700

    DVB-S2: Add a null check

    (cherry picked from commit 105da2927f217e21216b0d1f3e5c6f4022d28ac6)

commit 4bd1e2d4deb
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 17:12:04 2024 -0700

    ISO 7816: Add a null check

    (cherry picked from commit 45342588857f4410c7e2c7d11c72105010e459b3)

commit c430b886679
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 17:03:35 2024 -0700

    H.264+H.265: Add null checks

    Make sure our field pointers are valid. Found by scan-build.

    (cherry picked from commit 0cc1a5f11077094266b2bd3ddf272aa0a5c7ae88)

    Conflicts:
            epan/dissectors/packet-h264.c
            epan/dissectors/packet-h265.c

commit 9cc50ba9757
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 24 09:24:14 2024 +0000

    [Automatic update for 2024-03-24]

    Update manuf, services enterprise numbers, translations, and other items.

commit 73cae3cda13
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 10:37:13 2024 -0700

    Add recursion checks to SoulSeek, SML, and Socks

    (cherry picked from commit 5366c18d28774f30c463d95df0e5e58d61f85897)

commit 092d48aec06
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 11:53:04 2024 -0700

    Recursion updates for Gryphon, MATE, OpcUa, PNIO, and WiMAX ASN CP

    (cherry picked from commit 6d4375846b07b827c73be6474c34dc68284414ab)

    Conflicts:
            plugins/epan/mate/mate_runtime.c
            plugins/epan/opcua/opcua_simpletypes.c

commit 76c41d8dc0a
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 23 10:19:43 2024 -0700

    Add recursion checks to LLRP, MQ PCF, OPSI, and OSC

    (cherry picked from commit f9e954497fb9900dfc62fd55b870f0d859147ec6)

commit f0678f3ae71
Author: Guy Harris <gharris@sonic.net>
Date:   Fri Mar 22 12:23:04 2024 -0700

    expert: register ei_unreassembled with proto_unreassembled.

    We have two pseudo-protocols, not one, and proto_unreassembled is
    intended for "Wireshark didn't reassemble this, so we ran past the end
    of the first segment" type errors.  Have two separate ei_register_info[]
    arrays, one for errors deemed "malformed" and one for errors deemed
    "unreassembled", and register them with the appropriate protocols.

    (cherry picked from commit e4a33420689431c6c399946fb3c6203cf687b5a2)

commit 0ef35722a7f
Author: Gerald Combs <gerald@wireshark.org>
Date:   Thu Mar 21 09:25:29 2024 -0700

    USBVIDEO: Add a class data type check

    Make sure our class data type is USB_CONV_VIDEO before trying to use it.

    Fixes #19717

    (cherry picked from commit 0e1bad2875f2d73a6d67169eeb9f1cdb7554e1c2)

commit a9c7dcd27eb
Author: Gerald Combs <gerald@wireshark.org>
Date:   Thu Mar 21 13:03:14 2024 -0700

    Windows: Upgrade c-ares to 1.27.0

    (cherry picked from commit c733727c76a012b43d4026071e51e9a0d56559f3)

commit 02218b1fb77
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Mar 20 12:02:51 2024 -0400

    TFTP: Fix export objects in single pass tshark

    We cannot know during the first pass if the capture file contains
    the last block of a TFTP transfer, so we have to copy the blocks
    regardless (if we have no missing blocks yet.)

    Fix #19715

    (cherry picked from commit e640ecd591fdc837ee2ed79b1e39bee5b34829e3)

commit b0288cb8fb4
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Mar 20 09:54:17 2024 -0700

    Add recursion checks to EXTREME MESH, LwM2M-TLV, MPLS ECHO, SNA, and TCAP

    (cherry picked from commit 1ed5bd8dd2c7b1a8c79c60fb368717728f0d15c4)

commit b03e1136fc4
Author: Guy Harris <gharris@sonic.net>
Date:   Tue Mar 19 11:43:18 2024 -0700

    mac-lte: fix more bogus casts.

    It is *not* safe to pass a pointer to anything other than a pointer to a
    guint32/uint32_t as the last argument to proto_tree_add_item_ret_uint().

    Doing so, and then making the compiler's complaint about that because
    you want your code to compile, means that a full 32 bits will be written
    to, even though they're being written to somethiing smaller than 32
    bits, so *something* outside of the item to be stored into will be
    written.  If you're *lucky*, that will be padding.  If you're *not*
    lucky, it could be anothr variable, or something else in memory.

    Don't do that.

    (cherry picked from commit 3ea56842a3750d760d1742e534eab424e81d9a41)

commit 34bf4d1d361
Author: Matan Perelman <matan1008@gmail.com>
Date:   Tue Mar 19 09:07:13 2024 +0200

    mac-lte: Fix memory access in LONG_BSR_LCID

    Before this change, when reaching LCID Group 2 in LONG_BSR_LCID parsing,
    the call to `proto_tree_add_item_ret_uint` with `(guint32*)&buffer_size[2]`
    would access memory beyond the array since the array contains 4 elements
    of type guin8. The invalid access sometimes created an unexpected write
    to the `lcids` array, changing the LCID and causing a wrong dissection
    of the matching body.

    (cherry picked from commit 5de524bc2027b6d65480849f780169a9553506e2)

commit 4fc3be24f0d
Author: John Thacker <johnthacker@gmail.com>
Date:   Mon Mar 18 10:14:44 2024 -0400

    MinGW+NSIS: Install NSIS package in setup script

    (cherry picked from commit 4c5f838c5881f11a91635ba330d9a5b0f70fa86b)

commit 36afc6b15f5
Author: John Thacker <johnthacker@gmail.com>
Date:   Mon Mar 18 09:43:16 2024 -0400

    MinGW+NSIS: Work around QTBug-122257 when building

    For one status message type, windeployqt --list ignores the
    verbosity setting and prints them to standard out in
    Qt 6.6.0 - 6.6.2. Work around that so that MSYS2 builds work.

    https://bugreports.qt.io/browse/QTBUG-122257

    (cherry picked from commit 3cff44e4a06e5c0aa09e090538e0cea08e5a45d8)

commit 3bc3389128b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 17 12:52:39 2024 -0700

    Add recursion checks to DCOM, MPEG PES, PROXY, Snort config, and Thread

    (cherry picked from commit 6653bfd82ed86417578a31525de67e5f1e299a89)

    Conflicts:
            epan/dissectors/packet-snort-config.c

commit b8146867260
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 17 10:37:39 2024 -0700

    Add recursion checks to DICOM, FC-SWILS, PIM, RSL, and WASSP

    (cherry picked from commit e9f0d2c22a23bf279753884fd9a8980d2ae13642)

commit 218d89ff7db
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 17 09:25:25 2024 -0700

    Add recursion checks to DCCP, KNX/IP, PANA, SOME/IP, and WLCCP

    (cherry picked from commit db886b4acbc761e730d2364e3759019266404275)

commit 9c9a8a5defe
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 16 10:35:37 2024 -0700

    Add recursion checks to CSN.1, GSM A-bis OML, NAS-5GS, SolarEdge, and WMIO

    (cherry picked from commit 73b6bf25e27796352774f7d95ef053c1da1d1cfd)

    Conflicts:
            epan/dissectors/packet-wmio.c

commit 248cb260566
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 17 09:24:41 2024 +0000

    [Automatic update for 2024-03-17]

    Update manuf, services enterprise numbers, translations, and other items.

commit 9042c92dd95
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 16 09:44:46 2024 -0700

    Add recursion checks to CQL, GSM GSUP, MSWSP, RSVP, and WTP

    (cherry picked from commit 277d965657060085e14990d7eafc596f0b1f0ed0)

commit cc138f8ea22
Author: Gerald Combs <gerald@wireshark.org>
Date:   Fri Mar 15 14:31:15 2024 -0700

    Add recursion checks to COSE, GQUIC, SUA, and XML

    (cherry picked from commit 7122291d5d0df839f4dd404cad13d93e36bd04a0)

commit 8cac5932f79
Author: Anders Broman <a.broman58@gmail.com>
Date:   Mon Mar 4 12:22:54 2024 +0100

    Lua: Replace lua_pushnumber with lua_pushinteger where apropriate.

    (cherry picked from commit 4e997a93ea4c494b5fdae5b14829feffafa6f453)

commit 77897acfb46
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Mar 12 19:28:43 2024 -0700

    Add recursion checks to COROSYNC/TOTEMSRP, HSMS, ProtoBuf, RTLS, and YAMI

    (cherry picked from commit 5b29346f9b7e4c67401afc2015b880de760eb73b)

commit efed69f77b8
Author: John Thacker <johnthacker@gmail.com>
Date:   Thu Mar 14 20:43:24 2024 -0400

    Lua: Don't test for removed functions

    atan2, cosh, sinh, tanh, pow, frexp, ldexp, and log10 were
    removed from Lua 5.3. (log10 was removed in Lua 5.2), along
    with other functions.

    Don't test for or promise their existence. People using them in dissectors
    will have to use workarounds. The most common ones have native
    implementations - anyone using hyperbolic sine in a dissector will
    have to find some other workaound.

    Related to #10881

    (backported from ad69c29f8e89b4f77ae4c63fa1b65da2ec57d648)

commit 12b34c36d3a
Author: John Thacker <johnthacker@gmail.com>
Date:   Sun Mar 3 17:46:26 2024 -0500

    Lua: In tests, use load instead of loadstring on Lua > 5.1

    loadstring was removed after Lua 5.1. load given a string argument
    has the same behavior as loadstring did. Test for the Lua version
    in order to use the appropriate function.

    Related to #10881

    (cherry picked from commit 5e4d7dd565b9262c38847ff33688b675996d2546)

commit 4791b23c6c6
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Mar 13 08:39:38 2024 -0400

    wsutil: Allow converting zero length bytestrings again

    Prior to 3.6, we allowed the bytes_to_str function to convert
    an empty (but non NULL) hex byte string to an empty string,
    and some uses expected that, e.g. in the UATs. Allow that again.

    Fix #19705

    (cherry picked from commit eb585523846961c8bfef20d7206a265e76825cd8)

commit 9dbd02ff654
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Mar 12 23:29:14 2024 -0400

    Qt: queue TCP stream graph replots during mouse moves

    For a mouseMove event, don't immediately replot but queue
    the replot for the next event loop iteration. This dramatically
    improves performance on Linux for graphs with a large number
    of points when moving the mouse for graphs.

    (cherry picked from commit 1ea44a05e95d71d458750ee3f57fbf9801989e5f)

commit 4577621fc2f
Author: Jaap Keuter <jaap.keuter@xs4all.nl>
Date:   Wed Mar 13 01:13:02 2024 +0000

    SNMP set correct req/resp relation when req's are repeated.

    (cherry picked from commit 97bef124aea9d15fb202b8e9c412d4c575025d15)

    ab0f0c24 SNMP set correct req/resp relation when req's are repeated.

commit 59c270da82f
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Mar 12 09:44:36 2024 -0400

    dfilter: Fix parsing of single character hex character escapes

    Fix parsing of C-style hex escape character constants with only
    one hex digit.

    Prevents errors like:

    Error: '\x1' is too long to be a valid character constant.

    (cherry picked from commit e05dfae55318c3b4e0f3176decdc2d06941fb729)

commit 29ab3749d3a
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 10 11:59:21 2024 -0700

    Add recursion checks to BVLC, DOCSIS MAC MGMT, MsgPack, RTMPT, and ZigBee ZCL

    (cherry picked from commit 9bfa8d9142ba9efa38827346486c895df9dce9cc)

commit a6cdd65539b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 10 10:25:14 2024 -0700

    Add recursion checks to BT SDP, GTPv2, NHRP, SCTP, and Windows common

    (cherry picked from commit 128c298122e71147f7fa3d7b6df2d7f0fde4eb7a)

    Conflicts:
            epan/dissectors/packet-sctp.c

commit 022b66008bf
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 9 17:22:34 2024 -0800

    Add recursion checks to BT BNEP, DOF, ICQ, Q.2931, and S7COMM

    (cherry picked from commit e50ef0effb253534c1e8afa9102aa6d52f9cbd12)

commit f170401f909
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 10 09:24:40 2024 +0000

    [Automatic update for 2024-03-10]

    Update manuf, services enterprise numbers, translations, and other items.

commit 59c773d6540
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 9 10:56:40 2024 -0800

    Add recursion checks to BGP, Etch, LI5G, RPL, and SIMULCRYPT

    (cherry picked from commit 6f2514fba5fca8cbdc0b3513979a68f56424f868)

commit 53e8374919d
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 9 10:32:56 2024 -0800

    Add recursion checks to BFCP, EDONKEY, QNET, RTPS, and XMPP

    (cherry picked from commit 709404e401cfb36fdeb38f0bc1bd481b7309c1d9)

commit 4c3c98e2abc
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 9 12:29:15 2024 -0800

    GitLab CI+tools: Homebrew recently adopted PEP 668

    Attempting to install Python packages using pip under Homebrew now
    returns

    ```
    error: externally-managed-environment
    × This environment is externally managed
    ╰─> To install Python packages system-wide, try brew install
        xyz, where xyz is the package you are trying to
        install.

        If you wish to install a non-brew-packaged Python package,
        create a virtual environment using python3 -m venv path/to/venv.
        Then use path/to/venv/bin/python and path/to/venv/bin/pip.

        If you wish to install a non-brew packaged Python application,
        it may be easiest to use pipx install xyz, which will manage a
        virtual environment for you. Make sure you have pipx installed.
    note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
    ```

    Install pytest and pytest-xdist in a venv for now.

    (cherry picked from commit 77ec5a5068f9c68e67957c7978ef340b1e00536a)

commit 7be4bbb413d
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Mar 6 20:40:42 2024 -0500

    t38: Allocate forced defragmented memory in correct scope

    Fragment data can't be allocated in pinfo->pool scope, as it
    outlives the frame. Set it to be freed when the associated tvb
    is freed, as done in the main reassemble.c code.

    Fix #19695

    (cherry picked from commit 6fd3af5e999c71df67c2cdcefb96d0dc4afa5341)

commit eb894c6bca6
Author: John Thacker <johnthacker@gmail.com>
Date:   Sun Mar 3 20:11:02 2024 -0500

    Lua: Convert the time to an integer in tests

    Apparently in Lua 5.3, os.date doesn't like being handed a
    value with fractional seconds. Convert the time to an integer
    via a method that also works on Lua 5.1

    Related to #10881

    (cherry picked from commit 61e8d3392ae476516c22fa727e01a21846f2a487)

commit 1b3e1c9e8ec
Author: John Thacker <johnthacker@gmail.com>
Date:   Mon Mar 4 17:11:21 2024 -0500

    Lua: Make tests work on Lua 5.4

    Lua tables are stored with reference values that default to
    a one-up counter starting at 1. To reduce the number of necessary
    reallocations, the allocated but previously freed entries form
    a linked list. Starting with the head of the freelist, each
    reference points to the index number of the next freed reference
    in the list, or 0 as a sentinel value. The head always present
    and is 0 if nothing has been deleted.

    On Lua 5.4 the head of the list is always index 3 (LUA_RIDX_LAST + 1).
    On earlier Lua, 0 is used.

    Various C API functions like lua_next and lua_len (and thus the length
    operator #) do not distinguish between these values that refer to
    table indices and those that refer to objects we've stored in them.
    We can distinguish by checking whether or not the value for a particular
    key is one of our classes, e.g. a ProtoField, or a lua_Number. Our
    setters should assure that we aren't putting any lua_Numbers into
    the tables.

    Related to #10881

    (cherry picked from commit 2188257743e44c98806df3968d756500f9697309)

commit 3959fc563dc
Author: Anders Broman <a.broman58@gmail.com>
Date:   Wed Feb 21 21:34:10 2024 +0100

    LUA: Make it compile with LUA 5.4

    (cherry picked from commit f9e052b88ed2303f2f2b52d0808cded1f5736576)

commit 3a10e3984ba
Author: Anders Broman <a.broman58@gmail.com>
Date:   Wed Feb 21 21:23:28 2024 +0100

    LUA bitop: Convery our lua_bitop.c to work with 5.3 and 5.4

    The code is written by Andrew Engelbrecht and found here:
    https://github.com/LuaJIT/LuaJIT/issues/384

    (cherry picked from commit 926344c16c2147d06689cbde3c1e08aa6b5d6e93)

commit 2283c1efd4d
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Mar 5 09:19:39 2024 -0500

    ICMPv6: Remove recursion check from 0 length option path

    Fixup 972bb56d0ab3fc825955d58bee629ba13c1e1a99

    Fix #19688

    (cherry picked from commit ba82fcdef633214518aa2ea7f7a99f54e6bb03f3)

commit 7d7be263168
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 3 17:38:10 2024 -0800

    ASAP: More recursion updates

    Check against pinfo->flags.in_error_pkt.

    (cherry picked from commit d46e93b274aec46d75ca91dcd4e6f4f7a4b9f420)

commit 79fdafac830
Author: Gerald Combs <gerald@wireshark.org>
Date:   Mon Mar 4 14:13:59 2024 -0800

    Add recursion checks to Bencode, BT-DHT, ErlDP, H.233, and H.264

    (cherry picked from commit f38f79d6e14c5a278d5e08ba1b96f9f4c0e600e0)

commit 175347ef5e2
Author: Gerald Combs <gerald@wireshark.org>
Date:   Mon Mar 4 11:33:20 2024 -0800

    Add recursion checks and suppressions to BEEP, Kafka, and OpenFlow

    (cherry picked from commit fcde25cfb8dc0d86904aaeaab8b50e87e1985fc0)

commit 18b84f7734d
Author: Gerald Combs <gerald@wireshark.org>
Date:   Mon Mar 4 10:51:16 2024 -0800

    Add recursion checks to Banana, ISAKMP, KINK, M2UA, and M3UA

    (cherry picked from commit 48e65f0c54b05dbc3d082dc645e3d111b46e9055)

commit d238e207d84
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 3 17:53:45 2024 -0800

    Remove our recursion checks in ICMPv6 and NETLINK

    We'll run out of packet before we run out of stack in each case.

    (cherry picked from commit 972bb56d0ab3fc825955d58bee629ba13c1e1a99)

commit 4a83b8f470b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Mar 3 09:25:02 2024 +0000

    [Automatic update for 2024-03-03]

    Update manuf, services enterprise numbers, translations, and other items.

commit 13e199a4a56
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 2 18:42:13 2024 -0800

    ASAP: Make sure pinfo is set

    Fixes #19685.

    (cherry picked from commit dc84bddc1f245512c56aa3f5e617db9fff729796)

commit 0a90847b7e9
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 2 15:37:37 2024 -0800

    Add recursion checks to BACnet, CIP, IPP, LISP, and NETLINK

    (cherry picked from commit c4d62f97615f85b24f86a0ab2a8aa0d62851b6e5)

commit 129b918b14a
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 2 11:58:35 2024 -0800

    Add recursion checks to ASAP, iSCSI, JXTA, MBIM, and MQTT-SN

    (cherry picked from commit c49e1f2ceacac3e7a808f95c88d4eabf81c996e5)

commit 2d24f6d995e
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sat Mar 2 10:46:44 2024 -0800

    Add recursion checks to AMQP, GNW, LDP, CFLOW, and RDP

    (cherry picked from commit 3948fe5132f9641b662c888efb74b1bd01216cc9)

commit 80e5533370b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Fri Mar 1 13:48:31 2024 -0800

    Add recursion checks to various protocols

    (cherry picked from commit d0c09f485951a0b014102e8fc82aa5b854d9c33b)

commit e7f8b65fdf0
Author: Gerald Combs <gerald@wireshark.org>
Date:   Fri Mar 1 09:32:00 2024 -0800

    Rebuild our ASN.1 dissectors

    Switch to simple recursion checks.

commit 406c023c621
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 28 17:13:45 2024 -0800

    epan: Add simple recursion checks

    Add a "dissection_depth" element to packet_info, and add
    increment_dissection_depth and decrement_dissection_depth. Assert if our
    dissection depth exceeds the gui_max_tree_depth preference.

    Use them to replace some of the current p_get_proto_depth and
    p_set_proto_depth calls.

    Get rid of PINFO_LAYER_MAX_RECURSION_DEPTH and use the
    gui_max_tree_depth preference in call_dissector and
    dissector_try_heuristic.

    (cherry picked from commit 4f35c3a34a33f06fb86d4567715d2e935f506cd5)

    Conflicts:
            epan/dissectors/file-blf.c
            epan/dissectors/packet-smb2.c

commit 783048838e2
Author: John Thacker <johnthacker@gmail.com>
Date:   Thu Feb 29 18:38:14 2024 -0500

    tools: Parse ranges in make-services.py

    The new services parsing was only putting the first and last port
    of a range into the static C array data. This was a regression
    in 4.2 compared to 4.0

    (cherry picked from commit 95f6f94f8bd711660959d7d6b7ca0fffcd2f7630)

commit 9c374bbfa1e
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Feb 28 18:16:20 2024 -0500

    docs: Explicitly set wildcard when including dissection-options tags

    The double wildcard is implied on recent versions of asciidoctor,
    but explicitly specifying doesn't hurt, and fixes the includes on
    some older versions (such as that with RHEL 8.)

    https://docs.asciidoctor.org/asciidoc/latest/directives/include-tagged-regions/#tag-filtering
    (backported from commit bb37fcb0260eb06692ec127ceb05597c678bf4a7)

commit c8e98a245cb
Author: Niels Widger <niels@qacafe.com>
Date:   Mon Feb 26 13:51:53 2024 -0500

    sharkd: Increase JSON buffer size from 2048 to 8192 bytes

    This commit increases the maximum size for the JSON commands processed
    by `sharkd` from 2048 to 8192 bytes.  The primary reason for this
    change is to allow larger filters in `filter0`...`filter9` arguments
    which, combined with the outer JSON boilerplate, can cause a command
    to quickly hit the existing 2048-byte limit.

    (cherry picked from commit 8989c732fc0b78039c72b695e7c7099948ea5491)

commit 57741bfc81d
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Feb 27 20:25:05 2024 -0500

    prefs: Fix null defererences, remove obsolete function

    Null dereference check to fix Coverity CIDs 1399640 and 1399641.
    Remove a function that has been unused for a decade.

    (cherry picked from commit 7dc0f853c6eed609f13fb2786c3cfa833dc850b5)

commit aeffdcf8206
Author: John Thacker <johnthacker@gmail.com>
Date:   Wed Feb 28 06:59:45 2024 -0500

    JSON-3GPP: Don't crash on empty suppFeat JSON value

    Return straightaway if the length is 0 or less. (It shouldn't
    be less unless the JSON dissector has issues, but if it's
    -1 it might not raise an exception adding the string because of
    the longstanding feature of -1 length for a FT_STRING meaning
    "to the end of the tvb.")

    Fix #19677

    (cherry picked from commit ade326dbf56afb361158f7246572d5a96b7493dc)

commit 005a3e8fdf7
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Feb 27 09:02:55 2024 -0500

    ENRP: Check for invalid parameter & error cause lengths

    The value in the length field in ENRP parameters and error causes
    include the length and types, and must be at least 4. In particular,
    not erring on zero can cause an infinite loop.

    https://datatracker.ietf.org/doc/html/rfc5354

    Fix #19674

    (backported from commit 84ffa648eaaa6292c5332df236b10d70f7cf07d0)

commit 4cc9f9bbbf7
Author: Triton Circonflexe <triton@kumal.info>
Date:   Sat Feb 24 21:39:31 2024 +0100

    Thrift: Fix recursion check

    Previous recursion check only worked with generic dissector.
    The introduced changes cover the sub-dissectors as well.

    Remove the existing check as it counted basic types as well.
    Add a check at every place where a sub-tree is created:
    - containers (list, set, map)
    - structures

    (cherry picked from commit 4eaf10bc4e46762b1e304baf188d0767907e1914)

commit 3243e000415
Author: John Thacker <johnthacker@gmail.com>
Date:   Thu Feb 22 08:54:12 2024 -0500

    Qt: Work around QTBUG-122109 when applying packet list style sheet

    https://bugreports.qt.io/browse/QTBUG-122109

    A bug introduced by the fix for https://bugreports.qt.io/browse/QTBUG-116013
    causes all visible sections to reset to the default section size whenever a
    style sheet is applied (even if defaultSectionSize didn't change.)

    Make sure that before applying a style sheet we prevent our recent
    column widths from being updated, and then restore column widths
    from the recent values afterwards.

    This affects versions 6.5.4 (commercial only, 6.5.3 is the last free
    release) and 6.6.1 and 6.6.2.

    (cherry picked from commit ea38f142e89f81181fe397da0875a7df05787162)

commit 854dd3c85f0
Author: Patrik Thunström <patrik.thunstroem@technica-engineering.de>
Date:   Sun Feb 25 00:07:45 2024 +0100

    CSV Export: Last column no longer exported when hidden.

    Prior to fix the last column no matter if hidden or not was
    always included when exporting packet dissections to CSV.

    Fixes #19666.

    (cherry picked from commit 30c0ab964ff62ef95b1a0ec9c04ebbbb0cd51c43)

commit 535a868fab5
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Feb 25 09:26:26 2024 +0000

    [Automatic update for 2024-02-25]

    Update manuf, services enterprise numbers, translations, and other items.

commit 459c0d50cb9
Author: John Thacker <johnthacker@gmail.com>
Date:   Fri Feb 23 07:56:18 2024 -0500

    Inject TLS Secrets: Check for NULL used secrets map

    The GUI menu item should probably be disabled without a capture file
    too.

    Fix #19667

    (cherry picked from commit ac90d8c83437c4eb120f8d64025f2ca07269f35e)

commit 315e14a35d5
Author: Gerald Combs <gerald@wireshark.org>
Date:   Thu Feb 22 18:35:09 2024 -0800

    ICMPv6: Add a recursion check

    Fix

    ```
    wireshark/epan/dissectors/packet-icmpv6.c:1709:1: warning: function 'dissect_icmpv6_nd_opt' is within a recursive call chain [misc-no-recursion]
     1709 | dissect_icmpv6_nd_opt(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree)
          | ^
    wireshark/epan/dissectors/packet-icmpv6.c:1709:1: note: example recursive call chain, starting from function 'dissect_icmpv6_nd_opt'
    wireshark/epan/dissectors/packet-icmpv6.c:2247:30: note: Frame #1: function 'dissect_icmpv6_nd_opt' calls function 'dissect_icmpv6_nd_opt' here:
     2247 |                 opt_offset = dissect_icmpv6_nd_opt(tvb, opt_offset, pinfo, icmp6opt_tree);
          |                              ^
    wireshark/epan/dissectors/packet-icmpv6.c:2247:30: note: ... which was the starting point of the recursive call chain; there may be other cycles
    ```

    (cherry picked from commit 0eb0d6fdb4394872e68ed2c8c9d2cc1a1bc85db9)

commit 27d5c37e714
Author: Gerald Combs <gerald@wireshark.org>
Date:   Thu Feb 22 18:50:24 2024 -0800

    SMB2: Add recursion checks

    (cherry picked from commit 1515b211e20354e097092de0b52e50862e64ce36)

    Conflicts:
            epan/dissectors/packet-smb2.c

commit db9610c3896
Author: Gerald Combs <gerald@wireshark.org>
Date:   Thu Feb 22 18:29:49 2024 -0800

    DHCPv6: Add a recursion check

    Fix

    ```
    wireshark/epan/dissectors/packet-dhcpv6.c:1846:1: warning: function 'dhcpv6_option' is within a recursive call chain [misc-no-recursion]
     1846 | dhcpv6_option(tvbuff_t *tvb, packet_info *pinfo, proto_tree *bp_tree,
          | ^
    wireshark/epan/dissectors/packet-dhcpv6.c:1846:1: note: example recursive call chain, starting from function 'dhcpv6_option'
    wireshark/epan/dissectors/packet-dhcpv6.c:2052:28: note: Frame #1: function 'dhcpv6_option' calls function 'dhcpv6_option' here:
     2052 |             temp_optlen += dhcpv6_option(tvb, pinfo, subtree,
          |                            ^
    wireshark/epan/dissectors/packet-dhcpv6.c:2052:28: note: ... which was the starting point of the recursive call chain; there may be other cycles
    wireshark/epan/dissectors/packet-dhcpv6.c:2958:1: warning: function 'dissect_dhcpv6' is within a recursive call chain [misc-no-recursion]
     2958 | dissect_dhcpv6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
          | ^
    ```

    (cherry picked from commit 5a04c4ecee4a40851c8fd0f7de0ee96d257bb752)

commit cd5c51f50f7
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 21 15:01:00 2024 -0800

    AllJoyn: Add recursion checks

    (cherry picked from commit 8b0e90d62e283d3aa7b00aa17a55a53bde362da4)

commit 3b7f2c1ca79
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 21 14:27:58 2024 -0800

    6LoWPAN: Add recursion checks

    (cherry picked from commit 34c90f7a3d31c74c7f66a71dcd23eed326718190)

commit 5d2c25d97e6
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 21 11:53:18 2024 -0800

    TN5250: Add a recursion check

    (cherry picked from commit 282bd19e887a56496011d14b1bf7bdde40f9216e)

commit 0e272f66bd2
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 21 11:08:42 2024 -0800

    MONGO: Add a recursion check

    (cherry picked from commit 7183ac40da718b4a0531f84adf090e9a97c1297a)

commit d8231096d5c
Author: John Thacker <johnthacker@gmail.com>
Date:   Tue Feb 20 22:58:58 2024 -0500

    text2pcap: Set encapsulation to WIRESHARK_UPPER_PDU with -P

    The documentation, both man page and help, claims that text2pcap
    automatically sets the encapsulation to WIRESHARK_UPPER_PDU if
    -P is given. Make the behavior match the documentation.

    (cherry picked from commit 339d6d4aba6f51f32c9483ea4dab5790b713d247)

commit a29a21fb697
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 15:22:07 2024 -0800

    RBM: Add a recursion check

    Fix

    ```
    wireshark/epan/dissectors/file-rbm.c:196:13: warning: function 'dissect_rbm_array' is within a recursive call chain [misc-no-recursion]
      196 | static void dissect_rbm_array(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value_str)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:410:13: note: example recursive call chain, starting from function 'dissect_rbm_object'
      410 | static void dissect_rbm_object(tvbuff_t* tvb, packet_info* pinfo, proto_tree* ptree, guint* offset, gchar** type, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:439:4: note: Frame #1: function 'dissect_rbm_object' calls function 'dissect_rbm_string' here:
      439 |                         dissect_rbm_string(tvb, pinfo, tree, offset, &value_local);
          |                         ^
    wireshark/epan/dissectors/file-rbm.c:325:2: note: Frame #2: function 'dissect_rbm_string' calls function 'dissect_rbm_object' here:
      325 |         dissect_rbm_object(tvb, pinfo, tree, offset, NULL, NULL);
          |         ^
    wireshark/epan/dissectors/file-rbm.c:325:2: note: ... which was the starting point of the recursive call chain; there may be other cycles
    wireshark/epan/dissectors/file-rbm.c:222:13: warning: function 'dissect_rbm_hash' is within a recursive call chain [misc-no-recursion]
      222 | static void dissect_rbm_hash(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value_str)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:321:13: warning: function 'dissect_rbm_string' is within a recursive call chain [misc-no-recursion]
      321 | static void dissect_rbm_string(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:329:13: warning: function 'dissect_rbm_regex' is within a recursive call chain [misc-no-recursion]
      329 | static void dissect_rbm_regex(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:344:13: warning: function 'dissect_rbm_userclass' is within a recursive call chain [misc-no-recursion]
      344 | static void dissect_rbm_userclass(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:355:13: warning: function 'dissect_rbm_variable' is within a recursive call chain [misc-no-recursion]
      355 | static void dissect_rbm_variable(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value_str)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:368:13: warning: function 'dissect_rbm_struct' is within a recursive call chain [misc-no-recursion]
      368 | static void dissect_rbm_struct(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:374:13: warning: function 'dissect_rbm_drb' is within a recursive call chain [misc-no-recursion]
      374 | static void dissect_rbm_drb(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:383:13: warning: function 'dissect_rbm_rubyobject' is within a recursive call chain [misc-no-recursion]
      383 | static void dissect_rbm_rubyobject(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:400:13: warning: function 'dissect_rbm_extended' is within a recursive call chain [misc-no-recursion]
      400 | static void dissect_rbm_extended(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:410:13: warning: function 'dissect_rbm_object' is within a recursive call chain [misc-no-recursion]
      410 | static void dissect_rbm_object(tvbuff_t* tvb, packet_info* pinfo, proto_tree* ptree, guint* offset, gchar** type, gchar** value)
          |             ^
    wireshark/epan/dissectors/file-rbm.c:535:6: warning: function 'dissect_rbm_inline' is within a recursive call chain [misc-no-recursion]
      535 | void dissect_rbm_inline(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, guint* offset, gchar** type, gchar** value)
          |      ^
    ```

    (cherry picked from commit d7b15ff6d19763cc29f3cc4677aef28aed2879df)

commit ec470ca63d8
Author: John Thacker <johnthacker@gmail.com>
Date:   Thu Feb 15 19:39:52 2024 -0500

    extcap: Fix writing preferences to file

    Do not change the preference pointer inside the Extcap Options
    Dialog. That changes the real preference value, which disturbs
    the check inside prefs_store_ext_multiple that storeValues() calls
    for whether a pref has changed or not. Since the prefs are already
    changed to their new value, we won't realize that we need to write
    out a new preference file.

    The other changes in #18487 are sufficent to fix the problem
    identified there (though it's a bit unclear what "required" means
    in combination with a default, and whether we have to send the
    default value for the required parameter or can omit it.)

    If the button says "Save", then save the preferences regardless
    of what the "extcap Save on Start" preference says.

    Fix #19639. Related to #18487

    (cherry picked from commit 268e7425416f0f482bc001c0ca8010c425db49c9)

commit c1584528c32
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 14:28:59 2024 -0800

    JPEG: Add a recursion check

    Fix

    ```
    /builds/wireshark/wireshark/epan/dissectors/file-jpeg.c:773:1: warning: function 'process_tiff_ifd_chain' is within a recursive call chain [misc-no-recursion]
      773 | process_tiff_ifd_chain(proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo,
          | ^
    /builds/wireshark/wireshark/epan/dissectors/file-jpeg.c:773:1: note: example recursive call chain, starting from function 'process_tiff_ifd_chain'
    /builds/wireshark/wireshark/epan/dissectors/file-jpeg.c:896:37: note: Frame #1: function 'process_tiff_ifd_chain' calls function 'process_tiff_ifd_chain' here:
      896 |                                     process_tiff_ifd_chain(tree, tvb, pinfo, encoding,
          |                                     ^
    /builds/wireshark/wireshark/epan/dissectors/file-jpeg.c:896:37: note: ... which was the starting point of the recursive call chain; there may be other cycles
    ```

    (cherry picked from commit 46c652102f432577961cac534f20fc88fa6c11cf)

commit 69f9eab216b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 14:03:02 2024 -0800

    BLF: Add a recursion check

    Fix

    ```
    wireshark/epan/dissectors/file-blf.c:498:1: warning: function 'dissect_blf_lobj' is within a recursive call chain [misc-no-recursion]
      498 | dissect_blf_lobj(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, gint offset_orig) {
          | ^
    wireshark/epan/dissectors/file-blf.c:886:1: note: example recursive call chain, starting from function 'dissect_blf_next_object'
      886 | dissect_blf_next_object(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint offset) {
          | ^
    wireshark/epan/dissectors/file-blf.c:893:32: note: Frame #1: function 'dissect_blf_next_object' calls function 'dissect_blf_lobj' here:
      893 |             int bytes_parsed = dissect_blf_lobj(tvb, pinfo, tree, offset);
          |                                ^
    wireshark/epan/dissectors/file-blf.c:580:27: note: Frame #2: function 'dissect_blf_lobj' calls function 'dissect_blf_next_object' here:
      580 |                     tmp = dissect_blf_next_object(sub_tvb, pinfo, subtree, offset_sub);
          |                           ^
    wireshark/epan/dissectors/file-blf.c:580:27: note: ... which was the starting point of the recursive call chain; there may be other cycles
    wireshark/epan/dissectors/file-blf.c:886:1: warning: function 'dissect_blf_next_object' is within a recursive call chain [misc-no-recursion]
      886 | dissect_blf_next_object(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint offset) {
          | ^
    ```

    (cherry picked from commit 3b2c961eeb3eda36a0253cc5111396a4d6a424e0)

commit 4861d841305
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 09:41:29 2024 -0800

    ISIS LSP: Add a recursion check

    Fix

    ```
    wireshark/epan/dissectors/packet-isis-lsp.c:3431:1: warning: function 'dissect_sub_clv_tlv_22_22_23_141_222_223' is within a recursive call chain [misc-no-recursion]
     3431 | dissect_sub_clv_tlv_22_22_23_141_222_223(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree,
          | ^
    wireshark/epan/dissectors/packet-isis-lsp.c:3431:1: note: example recursive call chain, starting from function 'dissect_sub_clv_tlv_22_22_23_141_222_223'
    wireshark/epan/dissectors/packet-isis-lsp.c:3541:21: note: Frame #1: function 'dissect_sub_clv_tlv_22_22_23_141_222_223' calls function 'dissect_sub_clv_tlv_22_22_23_141_222_223' here:
     3541 |                     dissect_sub_clv_tlv_22_22_23_141_222_223(tvb, pinfo, subtree, local_offset, local_len);
          |                     ^
    wireshark/epan/dissectors/packet-isis-lsp.c:3541:21: note: ... which was the starting point of the recursive call chain; there may be other cycles
    ```

    Add Clang-Tidy suppressions as well.

    (cherry picked from commit 16d85df6f447b082afce8cf183d187d6144f2870)

commit 4557986660b
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 09:41:29 2024 -0800

    GIOP: Add a recursion check

    Add Clang-Tidy suppressions as well.

    (cherry picked from commit 45f9dae43cc9f6253bc8e8f2d12afa47a8925e62)

commit 37eb42985eb
Author: Gerald Combs <gerald@wireshark.org>
Date:   Tue Feb 20 09:24:00 2024 -0800

    ENRP: Add a recursion check

    Add Clang-Tidy suppressions as well.

    (cherry picked from commit 6c52cdf959a4da6a4bf148713cb341b40f06355b)

commit e1299a0ef50
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Feb 18 09:24:20 2024 +0000

    [Automatic update for 2024-02-18]

    Update manuf, services enterprise numbers, translations, and other items.

commit d3ad478c920
Author: Noan <noan.perrot@gmail.com>
Date:   Tue Nov 28 09:36:44 2023 +0000

    Fix parse number of scalability structures in VP9

    (cherry picked from commit 8873aba1a03fb2fdf618807a416d528b52143bd8)

    92ceaf04 Fix parse number of scalability structures
    d40a502b Fix parse number of scalability structures in VP9

commit 6f399ff8e6f
Author: Gerald Combs <gerald@wireshark.org>
Date:   Sun Feb 18 10:09:57 2024 -0800

    tools: Don't assume that Homebrew has Lua 5.1

    [skip ci]

    (cherry picked from commit deac878dd56a4c04fc4dc9f198167314262c0af7)

commit 9dbb5482ef0
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 14 13:18:50 2024 -0800

    GitLab CI: Add release notes artifacts

    (cherry picked from commit d54031eda9e94e9c7ab28e8a70b2509dc20cdfc9)

commit 4520e9eb867
Author: Gerald Combs <gerald@wireshark.org>
Date:   Wed Feb 14 13:32:10 2024 -0800

    Version: 4.2.3 → 4.2.4

    [skip ci]
