subtree updates

meta-security: 30e755c592..283a773f24:
  Armin Kuster (2):
        meta-security: Drop ${PYTHON_PN}
        openscap: update to tip to fix new build issue.

  Jeremy A. Puhlman (4):
        arpwatch: fix misspelling of PACKAGECONFIG
        aprwatch: Add path for sendmail
        Check for usrmerge before removing /usr/lib
        arpwatch: install man8 dir

  Kevin Hao (4):
        docs: dm-verity.txt: Fix a typo
        dm-verity: Adjust the image names according to the oe-core change
        dm-verity: Set the IMAGE_FSTYPES correctly when dm-verity is enabled
        dm-verity-image-initramfs: Set IMAGE_NAME_SUFFIX to empty

  Max Krummenacher (1):
        layer.conf: Update for the scarthgap release series

  Mingli Yu (1):
        python3-pyinotify: Make asyncore support optional for Python 3

poky: 7165c23237..110ee701b3:
  Alejandro Hernandez Samaniego (1):
        python3-manifest: Sync RDEPENDS with latest version

  Alexander Kanavin (11):
        meson: correct upstream version check (exclude pre-releases)
        cargo-c-native: convert from git fetcher to crate fetcher
        cargo-c-native: update 0.9.18 -> 0.9.30
        man-pages: use env from coreutils-native
        sdk-manual: correctly describe separate build-sysroots tasks in direct sdk workflows
        dev/ref-manual: document conf-summary.txt together with conf-notes.txt
        dev-manual: improve descriptions of 'bitbake -S printdiff'
        wayland: fix upstream version check by asking gitlab directly
        python3: correct upstream version check
        bitbake: bitbake: improve descriptions of '-S printdiff'
        selftest/sstatetests: run CDN check twice, ignoring errors the first time

  Alexandre Truong (1):
        oeqa/selftest/devtool: fix test_devtool_add_git_style2

  Anibal Limon (1):
        wic: bootimg-partition allow to set var to get boot files

  BELOUARGA Mohamed (1):
        ref-manual: add documentation of the variable SPDX_NAMESPACE_PREFIX

  Bartosz Golaszewski (1):
        linux-firmware: update to 20240312

  Baruch Siach (1):
        oeqa/selftest/overlayfs: test read-only rootfs

  Bruce Ashfield (16):
        linux-yocto/6.6: cfg: generic arm64
        linux-yocto/6.6: cfg: riscv XHCI
        linux-yocto/6.6: update to v6.6.21
        linux-yocto/6.6: update CVE exclusions (6.6.21)
        linux-yocto/6.6: cfg: drop unsettable options
        linux-yocto/6.6: drm/tilcdc: Set preferred depth
        linux-yocto/6.6: update to v6.6.22
        linux-yocto/6.6: update CVE exclusions (6.6.22)
        yocto-bsps: update to v6.6.21
        linux-yocto/6.6: cfg: genericarm64 platform/peripheral support
        linux-yocto/6.6: cfg: genericarm64 configuration updates
        linux-yocto/6.6: nftables: ptest and cleanup tweaks
        linux-yocto/6.6: update to v6.6.23
        linux-yocto/6.6: update CVE exclusions (6.6.23)
        linux-yocto-dev: bump to v6.9
        lttng-modules: update to v2.13.12

  Changqing Li (1):
        dnf: fix Exception handling for class ProcessLock

  Chen Qi (1):
        ovmf: set CVE_PRODUCT and CVE_VERSION

  Christian Taedcke (1):
        kernel-fitImage: only include valid compatible line

  Derek Erdmann (1):
        bitbake: fetch2/git: Install Git LFS in local repository config

  Enrico Jörns (3):
        cml1: remove needless check for write_taint attribute
        cml1: prompt location of updated .config after do_menuconfig()
        perf: fix TMPDIR contamination for recent mainline kernels

  Enrico Scholz (1):
        shadow: fix copydir operation with 'pseudo'

  Felix Moessbauer (1):
        bitbake: utils: better estimate number of available cpus

  Harish Sadineni (3):
        gcc: Oe-selftest failure analysis - fix for tcl errors
        gcc: Oe-selftest failure analysis - fix for vect-simd test failures
        binutils: gprofng - change use of bignum to use of bignint

  Jermain Horsman (1):
        bblayers/makesetup.py: Move git utility functions to oe.buildcfg module

  Joe Slater (1):
        systemd: enable mac based names in NamePolicy

  Jose Quaresma (5):
        go.bbclass: set GOPROXY
        elfutils: fix unused variable BUFFER_SIZE
        go: keep the patches in order
        go: upgrade 1.22.1 -> 1.22.2
        sstatesig: fix netrc.NetrcParseError exception

  Joshua Watt (4):
        sstatesig: Set hash server credentials from bitbake variables
        bitbake: siggen: Add support for hashserve credentials
        sstatesig: Warn on bad .netrc
        bitbake: bitbake-hashclient: Warn on bad .netrc

  Jörg Sommer (1):
        autotools: update link in comment for cross compiling

  Kevin Hao (1):
        image-live.bbclass: Adjust the default value for INITRD_LIVE

  Khem Raj (13):
        systemd: Check for directory before chmod'ing it
        llvm: Update to 18.1.1 release
        elfutils: Fix build break with clang
        glibc: Update to tip of 2.39 branch
        pam: Fix build with musl
        piglit: Switch to upstreamed patch for musl fix
        qemuriscv: Fix kbd and mouse emulation for qemuriscv64
        llvm: Upgrade to 18.1.2 bugfix release
        glibc: Repace aarch configure patch fix with a backport
        valgrind: Backport fixes from 3.22 branch
        tcl: Forward port skip logic for musl ptests
        readline: Apply patches from readline-8.2-patches
        mesa: Drop LLVM-17 patch

  Lee Chee Yang (1):
        migration-guides: add release notes for 4.0.17

  Marcel Ziswiler (1):
        mesa: enable imagination powervr support

  Markus Volk (11):
        mesa: fix opencl-spirv build
        vala: merge bb and inc files
        vala: fix for gtk4 prior to 4.14
        libsoup: enable vapi support
        gsettings-desktop-schemas: update 45.0 -> 46.0
        libadwaita: update 1.4.4 -> 1.5.0
        gtk4: update 4.12.5 -> 4.14.1
        systemd: disable mdns feature in resolved for zeroconf
        webkitgtk: update 2.42.5 -> 2.44.0
        gtk+3: disable wayland without opengl
        epiphany: update 45.3 -> 46.0

  Martin Jansa (2):
        contributor-guide: be more specific about meta-* trees
        pixman: explicitly disable openmp in native builds

  Max Krummenacher (1):
        git: git-replacement-native: depend on ca-certificate

  Michael Opdenacker (8):
        manuals: add initial stylechecks with Vale
        profile-manual: usage.rst: formatting fixes
        manuals: use "manual page(s)"
        profile-manual: usage.rst: fix reference to bug report
        documentation: Makefile: remove releases.rst in "make clean"
        migration-guides: draft notes for upcoming release 5.0
        manuals: add initial stylechecks with Vale
        profile-manual: usage.rst: further style improvements

  Oleh Matiusha (3):
        bash: improve reproducibility
        curl: improve reproducibility
        gmp: improve reproducibility

  Paul Barker (1):
        kernel: Fix check_oldest_kernel

  Peter A. Bigot (1):
        bitbake: lib/bb: support NO_COLOR

  Peter Kjellerstedt (1):
        util-linux: Set the license for util-linux-fcntl-lock to MIT

  Philippe Rivest (1):
        bitbake: bitbake: fetch2/git: Escape parentheses in git src name

  Quentin Schulz (1):
        u-boot: fix externalsrc not triggering do_configure on defconfig changes

  Randy MacLeod (1):
        gstreamer: upgrade 1.22.10 -> 1.22.11

  Richard Purdie (10):
        poky: Update to prepare for scarthgap release
        layer.conf: Prepare for release, drop nanbield LAYERSERIES
        expat: Upgrade 2.6.1 -> 2.6.2
        bash/flex: Ensure BUILD_FLAGS doesn't leak onto target
        uninative: Add pthread linking workaround
        poky-altcfg: Default to ipk packaging
        util-linux: Add missing MIT license
        util-linux: Add fcntl-lock
        run-postinsts: Add workaround for locking deadlock issue
        oeqa/sstatetests: Fix race issue

  Ross Burton (22):
        genericarm64.wks: reorder partitions
        genericarm64: clean up kernel modules and firmware
        linux-firmware: add support for deduplicating the firmware
        linux-firmware: set LICENSE field for -liquidui and -mellanox
        linux-firmware: remove pointless linux-firmware-gplv2-license package
        curl: improve run-ptest
        curl: increase test timeouts
        gstreamer1.0: improve test reliability
        linux-yocto: put COMPATIBLE_MACHINE first
        linux-yocto: implicitly track oe-core's kernel version for genericarm64
        bitbake: fetch2: handle URIs with single-valued query parameters
        python3_pip517: just count wheels in the directory, not subdirectories
        python-*: don't set PYPI_ARCHIVE_NAME and S when PYPI_PACKAGE is sufficient
        tcl: improve run-ptest
        tcl: skip I/O channel 46.1
        genericarm64: add qemuboot configuration
        classes/qemuboot: add depends on qemu-system-native and qemu-helper-native
        README.hardware.md: fix Markdown formatting
        README.hardware.md: add section on genericarm64 on qemu
        glib-2.0: skip a timing sensitive ptest
        openssl: fix crash on aarch64 if BTI is enabled but no Crypto instructions
        curl: fix quoting when disabling flaky tests

  Ryan Eatmon (1):
        perf: Fix QA error due to most recent kernel

  Sam Van Den Berge (1):
        shadow: don't install libattr.so.* when xattr not in DISTRO_FEATURES

  Sava Jakovljev (1):
        bitbake: bitbake-worker: Fix bug where umask 0 was not being applied to a task

  Simone Weiß (1):
        gnutls: upgrade 3.8.3 -> 3.8.4

  Soumya Sambu (1):
        go: Upgrade 1.22.0 -> 1.22.1

  Sourav Kumar Pramanik (1):
        libseccomp: Add back in PTESTS_SLOW list

  Sundeep KOKKONDA (1):
        rust: reproducibility issue fix with v1.75

  Tim Orling (2):
        coreutils: drop obsolete liberror-perl RDEPENDS
        liberror-perl: move to meta-perl

  Timon Bergelt (1):
        populate_sdk_ext.bbclass: only overwirte lsb string if uninative is used

  Tom Hochstein (2):
        bmaptool: Add bmap-tools runtime alias for compatibility
        toolchain-shar-relocate.sh: Add check for missing command 'file'

  Trevor Woerner (1):
        bmaptool: update to latest

  Ulrich Ölmann (1):
        ref-manual: classes: update description of class 'image_types'

  Viswanath Kraleti (1):
        bitbake: fetch2: Fix misleading "no output" msg

  Wang Mingyu (1):
        libadwaita: upgrade 1.4.3 -> 1.4.4

  William Lyu (1):
        openssh: Add a workaround for ICE on powerpc64le

  Xiangyu Chen (3):
        lttng-tools: skip kernel tests if no kernel modules present
        ltp: fix missing connectors tests in scenario_groups/default
        lttng-tools: fix rotation-destroy-flush test fails if no kernel module present

  Yang Xu (1):
        bitbake: bitbake-worker: Fix silent hang issue caused by unexpected stdout content

  Yannick Rodriguez (1):
        linux-firmware: Move Intel 9260 modules firmware.

  Yash Shinde (1):
        glibc: Skip 2 qemu tests that can hang in oe-selftest

  Yi Zhao (1):
        libtirpc: drop redundant PACKAGECONFIG

  Yoann Congal (6):
        cve-update-nvd2-native: Fix typo in comment
        cve-update-nvd2-native: Add an age threshold for incremental update
        cve-update-nvd2-native: Remove duplicated CVE_CHECK_DB_FILE definition
        cve-update-nvd2-native: nvd_request_next: Improve comment
        cve-update-nvd2-native: Fix CVE configuration update
        cve-update-nvd2-native: Remove rejected CVE from database

  Yogesh Tyagi (1):
        lttng-modules: fix v6.8+ build

  david d zuhn (1):
        bitbake: bitbake-worker: allow '=' in environment variable values

  lixiaoyong (3):
        kernel-module-split.bbclass: enhance objcopy command call for kernel compilation with llvm
        utils: enhance readelf command call with llvm
        oe/package: enhance objdump command call with llvm

meta-raspberrypi: 92a9b7a012..d072cc8a48:
  Khem Raj (9):
        linux-raspberrypi: Add recipe for 6.6 LTS kernel
        bluez-firmware-rpidistro: Upgrade to 1.2-9+rpt3 release
        linux-firmware-rpidistro: Upgrade to bookworm/20230625-2+rpt2
        raspberrypi-firmware: Fetch using git URI
        rpi-base: Add missing broadcom/ prefix to find DTB files
        rpi-default-versions: Switch default kernel to 6.6
        linux-raspberrypi_6.6: Bump to 6.6.22
        rpi-bootfiles: Resort to github APIs for tarballs
        raspberrypi-firmware: Revert to debian archive

  Martin Jansa (1):
        userland: fix installed-vs-shipped in multilib builds

  jdavidsson (1):
        rpi-base: Add hifiberry-dacplusadc overlay

meta-arm: aba9250494..d9e18ce792:
  Abdellatif El Khlifi (1):
        arm-bsp/corstone1000: add documentation disclaimer

  Alexander Sverdlin (1):
        optee-ftpm: fix EARLY_TA_PATHS passed to optee-os

  Ali Can Ozaslan (4):
        arm-bsp/trusted-firmware-m: corstone1000: update to 2.0
        arm-bsp/trusted-services: corstone1000: Client Id adjustments after TF-M 2.0
        arm/trusted-firmware-m: Change GNU Arm compiler version for TF-M 2.0
        arm-bsp/trusted-firmware-a: n1sdp: update to 2.10

  Anusmita Dutta Mazumder (2):
        arm-bsp/n1sdp: Update scp-firmware version
        arm-bsp/n1sdp: Update EDK2 version

  Bence Balogh (2):
        arm-bsp/u-boot: corstone1000: fix SMCCC_ARCH_FEATURES detection in the PSCI driver
        arm-bsp/trusted-firmware-a: corstone1000: remove SMCCC_ARCH_FEATURES discovery workaround

  Delane Brandy (1):
        arm/trusted-firmware-a: fix mbedTLS version

  Drew Reed (2):
        kas: Corstone-1000 kas files updated
        bsp: Corstone-1000 userguide updates

  Emekcan Aras (2):
        arm-bsp/trusted-firmware-a: Upgrade Corstone1000 to TF-A v2.10
        arm/trusted-services: Add recipe for block storage service

  Jon Mason (17):
        README: Add information about release process and mailing list
        arm/linux-yocto: remove unreferenced patch
        arm/optee: disable clang due to breakage
        arm-bsp/tf-a-tests: remove corstone1000 intermediate SHA
        arm-bsp/tfa-tests: move n1sdp patch to platform directory
        CI: update kas to 4.3.1
        arm/edk2: update to 202402
        arm/trusted-firmware-a: update to 2.10.2
        arm/sbsa-acs: update to 7.1.4
        arm/scp-firmware: update to v2.14.0
        arm-toolchain/gcc-arm-none-eabi: remove 11.2
        CI: reduce coverage of dev kernel
        arm/sbsa-acs: remove unreferenced patch
        arm-toolchain: correct UPSTREAM_CHECK
        Revert "arm/rmm: Add bitbake, include and patch file for RMM firmware"
        arm/sbsa-acs: use UPSTREAM_CHECK_URI for version checking
        arm: use UPSTREAM_CHECK_COMMITS for git versioned recipes

  Mathieu Poirier (1):
        arm/rmm: Add bitbake, include and patch file for RMM firmware

  Ross Burton (3):
        arm arm-bsp: enable patch-status warnings
        Add SECURITY.md
        CI: ignore netrc warnings caused by Kas

meta-openembedded: a0237019f5..a6bcdca5b4:
  Bartosz Golaszewski (1):
        libgpiod: update to v2.1.1

  Chad Rockey (1):
        cppzmq-dev expects /usr/lib/libzmq.a

  Changqing Li (1):
        postgresql: fix a runtime error

  Chen Qi (1):
        tcprelay: fix a minor cross compilation do_configure issue

  Christophe Chapuis (9):
        lvgl: fix typo in lv-conf.inc
        lvgl: install lv_conf.h
        lvgl: remove useless FILES include
        lvgl: cleanup sed instructions in lv-conf.inc
        lvgl: add more variables to lv-conf.inc
        lvgl: fix libdrm include
        lvgl: lv-conf.inc: generalize sed instructions
        lvgl: make libdrm include conditional
        lvgl: cleanup sed expression

  Dan McGregor (2):
        python3-pylint: Update to 3.1.0
        python3-pylint: Fix ptest failures

  Derek Straka (1):
        python3-dbus: re-add recipe with latest patches and add ptest

  Etienne Cordonnier (1):
        uutils-coreutils: upgrade 0.0.24 -> 0.0.25

  Fathi Boudra (1):
        python3-django: upgrade 4.2.10 -> 4.2.11

  Guðni Már Gilbert (2):
        python3-ecdsa: remove python3-pbr
        python3-ecdsa: cleanup DEPENDS

  Jaeyoon Jung (1):
        lvgl: Set resolution prior to buffer

  Joe Slater (1):
        googletest: allow for shared libraries

  Jose Quaresma (1):
        ostree: Upgrade 2024.4 -> 2024.5

  Jörg Sommer (3):
        sngrep: new recipe for ncurses SIP Messages flow viewer
        spandsp: new telephony DSP library
        bluez-tools: New recipe for bluez5 tools

  Kai Kang (2):
        Packages depends on libadwaita should require distro feature opengl
        thin-provisioning-tools: install binary to ${sbindir}

  Khem Raj (55):
        squid: Upgrade to 6.8
        libosinfo: Fix build with libxml2 v2.12
        xmlstarlet: Fix build with API breakage in libxml2 2.12
        mariadb: Fix build with libxml2 2.12 ABI changes
        libmusicbrainz: Update to tip of trunk
        gnome-commander: Fix build with taglib 2.0
        gnome-online-accounts: Fix build with libxml2 2.12
        vlc: Upgrade to 3.0.20
        netcf: Fix build with latest gnulib
        php: Upgrade to 8.2.16
        vlc: Fix build on 32bit x86
        libtinyxml2: Extend for nativesdk
        lvgl: Fix dev-elf build QA
        layer.conf: Update for the scarthgap release series
        dietsplash: Update and fix build with musl
        frr: Upgrade to latest on 9.1 stable
        frr: Fix build on newer musl
        layer.conf: Prepare for release, drop nanbield LAYERSERIES
        libcamera: Fix clang support patches
        plocate: Fix sys/stat.h and linux/stat.h conflicts with musl
        liburing: Upgrade to 2.5
        openflow: Delete recipe for 1.0
        openflow: Merge .inc into .bb
        openflow: Fix build with musl
        tracker-miners: Disable seccomp support on musl
        libcamera: Fix build on musl systems
        ipset: Update to 7.21
        ot-daemon: Update to tip of trunk
        ot-br-posix: Update to latest
        wpantund: Update to latest
        xfsdump: Fix build with musl >= 1.2.5
        xfstests: Fix build with musl >= 1.2.5
        net-snmp: Fix build with musl
        rdma-core: Fix build with musl >= 1.2.5
        ssmtp: Fix build with musl >= 1.2.5
        autofs: Fix build with musl >= 1.2.5
        lvm2: Fix build with musl 1.5.2+
        sanlock: Fix build with musl >= 1.2.5
        ndctl: Fix build issues seen with musl 1.2.5
        sdbus-c++-libsystemd: Upgrade to 255.4 release of systemd
        sdbus-c++,sdbus-c++-tools: Upgrade to 1.5.0 release
        wtmpdb: Upgrade to 0.11.0 release
        uftrace: Fix build with musl >= 1.2.5
        fio: Upgrade to 3.36+git
        i2cdev: Include libgen.h on musl
        directfb: Fix build with musl >= 1.2.5
        iwd: Upgrade to 2.16
        minifi-cpp: Fix libsodium build on aarch64/clang
        multipath-tools: Fix build with musl >= 1.2.5
        aer-inject: Fix build with latest musl
        aer-inject: Replace hardcoded /usr with ${prefix}
        microsoft-gsl: Disable disabled-macro-expansion warning as error on clang/musl
        meta-python-image-ptest: Use 2G RAM for some demanding tests
        python3-pydbus: Add bash dependency for ptests
        highway,libjxl: Remove -mfp16-format=ieee when using clang compiler

  Leon Anavi (7):
        python3-anyio: Upgrade 4.2.0 -> 4.3.0
        python3-httpx: Upgrade 0.26.0 -> 0.27.0
        python3-multidict: Upgrade 6.0.4 -> 6.0.5
        python3-croniter: Upgrade 2.0.1 -> 2.0.3
        python3-paho-mqtt: Upgrade 1.6.1 -> 2.0.0
        python3-typeguard: Upgrade 4.1.5 -> 4.2.1
        python3-cachetools: Upgrade 5.3.2 -> 5.3.3

  Marek Vasut (14):
        lvgl: Drop dialog-lvgl
        lvgl: Upgrade to LVGL 9 series
        lvgl: Rename lv-drivers.inc to lv-conf.inc
        lvgl: Add SDL2 fullscreen mode configuration option
        lvgl: Configure assertions based on DEBUG_BUILD
        lvgl: Default to XRGB8888 DRM framebuffer
        lvgl: Build shared library
        lvgl: Replace sed patching with real patches
        lvgl: Generate proper shared libraries with version suffix
        lvgl: Reinstate demo configuration settings
        lvgl: Update to 9.1.0
        lvgl: Drop superfluous ALLOW_EMPTY
        lvgl: Drop unnecessary PV append
        lvgl: Deduplicate PACKAGECONFIG into lv-conf

  Markus Volk (66):
        mozjs-115: fix reproducibility issue
        webp-pixbuf-loader: update 0.2.5 -> 0.2.7
        gnome-control-center: fix reproducibility issue
        gnome-disk-utility: fix reproducibility issue
        gnome-settings-daemon: fix reproducibility issue
        gnome-terminal: fix reproducibility issue
        libvncserver: fix reproducibility issue
        editorconfig-core-c: fix reproducibility issue
        crossguid: fix reproducibility issue
        waylandpp: fix reproducibility issue
        polkit: remove unneeded workaround
        gtk-vnc: fix reproducibility issue
        pipewire: update 1.0.3 -> 1.0.4
        mutter: remove zenity from rdepends
        mutter: update 45.4 -> 46.0
        gnome-shell: update 45.4 -> 46.0
        gnome-settings-daemon: update 45.0 -> 46.0
        gnome-software: update 45.3 -> 46.0
        evince: update 45.0 -> 46.0
        gnome-online-accounts: update 3.48.0 -> 3.50.0
        evolution-data-server: build with webkitgtk4
        folks: update 0.15.7 -> 0.15.8
        gnome-control-center: update 45.3 -> 46.0
        xdg-desktop-portal-gnome: update 45.1 -> 46.0
        tracker: update 3.6.0 -> 3.7.0
        tracker-miners: update 3.6.2 -> 3.7.0
        freerdp3: add recipe
        wireplumber: update 0.4.17 -> 0.5.0
        tecle: update 45.0 -> 46.0
        gnome-calculator: update 45.0.2 -> 46.0
        gnome-session: update 45.0 -> 46.0
        gnome-remote-desktop: update 45.1 -> 46.0
        gnome-calendar: update 45.1 -> 46.0
        libgweather4: update 4.4.0 -> 4.4.2
        gtksourceview5: update 5.10.0 -> 5.12.0
        gnome-control-center: use gcr4 variant
        libcloudproviders: update 0.3.5 -> 0.3.6
        gnome-themes-extra: build with gtk+3
        gtk4mm: add recipe
        gnome-system-monitor: update 45.0.1 -> 46.0
        gnome-boxes: update 45.0 -> 46.0
        eog: update 45.2 -> 45.3
        gparted: update 1.5.0 -> 1.6.0
        libgtop: update 2.41.1 -> 2.41.3
        gnome-bluetooth: update 42.8 -> 46.0
        gnome-text-editor: update 45.1 -> 46.0
        gnome-chess: update 43.2 -> 46.0
        gnome-disk-utility: update 45.0 -> 46.0
        gnome-shell-extensions: update 45.2 -> 46.0
        msgraph: add recipe
        gvfs: update 1.52.2 -> 1.54.0
        tracker-miners: drop buildpath from tracker-miner-fs-3
        evolution-data-server: disable tests and examples
        tracker-miners: fix reproducibility issue for landlock
        file-roller: update 43.1 -> 44.0
        apache2: preset mpm=prefork by default
        gnome-user-share: add recipe
        gnome-control-center: update 46.0 -> 46.0.1
        gdm: update 45.0.1 -> 46.0
        gnome-user-share: remove hardcoded paths
        ghex: update 45.1 -> 46.0
        libjxl: add recipe
        gnome-backgrounds: add runtime depenency for libjxl
        highway: add recipe
        webkitgtk3: update 2.42.5 -> 2.44.0
        gnome-control-center: restore Upstream-Status line

  Martin Jansa (5):
        unionfs-fuse, dropwatch, postgresql, yasm, multipath-tools, python3-pybind11: add missing Upstream-Status
        recipes: Drop remaining PR values from recipes
        freerdp3: disable shadow without x11
        xfstests: upgrade to v2024.03.03
        gtkmm4: add x11 to REQUIRED_DISTRO_FEATURES

  Maxin John (7):
        tracker: remove unused patch
        openal-soft: remove unused patches
        libio-pty-perl: remove unsed patch
        opengl-es-cts: remove unused patch
        emacs: remove unused patch
        webkitgtk3: remove unused patch
        python3-eth-utils: remove unused patches

  Michael Heimpold (1):
        ser2net: add a systemd service file

  Mingli Yu (4):
        gosu: Upgrade to 1.17
        googletest: Pass -fPIC to CFLAGS
        re2: Upgrade 2023.03.01 -> 2024.03.01
        nss: Upgrade 3.74 -> 3.98

  Ola x Nilsson (2):
        abseil-cpp: Split so-files into separate packages
        abseil-cpp: Split so-files into separate packages

  Peter Kjellerstedt (3):
        abseil-cpp: A little clean-up
        libnice: Disable the examples and the tests
        abseil-cpp: A little clean-up

  Peter Marko (5):
        jwt-cpp: fix cmake file install path
        soci: fix buildpaths warning
        libcpr: add new recipe
        python3-grpcio: cleanup dependencies
        microsoft-gsl: add new recipe including ptest

  Petr Gotthard (2):
        libmbim: Revert back to the latest stable 1.30.0
        libqmi: Revert back to the latest stable 1.34.0

  Randy MacLeod (2):
        rsyslog: update from 8.2306.0 to 8.2402.0
        nftables: Add DESCRIPTION and HOMEPAGE

  Richard Purdie (2):
        imagemagick/lcms/fftw: Allow nativesdk versions to exist
        buildtools-imagemagick: Add new recipe

  Robert P. J. Day (1):
        fmt: remove unnecessary "inherit ptest" directive

  Robert Yang (6):
        yaffs2-utils: Upgrade to 20221209
        xfsprogs: 6.5.0 -> 6.6.0
        gnulib: 2018-12-18 -> 202401
        thin-provisioning-tools: 1.0.9 -> 1.0.12
        gperftools: 2.10 -> 2.15
        freeradius: 3.0.26 -> 3.2.3

  Ross Burton (1):
        python3-pydantic-core: just set PYPI_PACKAGE

  Sam Van Den Berge (1):
        python3-aiohttp: add missing dependencies

  Samuli Piippo (1):
        geoclue: enable demo agent

  Thomas Roos (1):
        usrsctp: upgrade to latest version

  Tim Orling (1):
        liberror-perl: move recipe from oe-core

  Tomasz Żyjewski (1):
        python: python-libusb1: add recipe

  Wang Mingyu (124):
        bats: upgrade 1.10.0 -> 1.11.0
        c-ares: upgrade 1.26.0 -> 1.27.0
        ctags: upgrade 6.1.20240114.0 -> 6.1.20240225.0
        dbus-cxx: upgrade 2.5.0 -> 2.5.1
        ddrescue: upgrade 1.27 -> 1.28
        fetchmail: upgrade 6.4.37 -> 6.4.38
        libtalloc: upgrade 2.4.1 -> 2.4.2
        libtdb: upgrade 1.4.9 -> 1.4.10
        neatvnc: upgrade 0.7.2 -> 0.8.0
        ostree: upgrade 2024.3 -> 2024.4
        python3-astroid: upgrade 3.0.3 -> 3.1.0
        python3-cbor2: upgrade 5.6.1 -> 5.6.2
        python3-dnspython: upgrade 2.6.0 -> 2.6.1
        python3-eventlet: upgrade 0.35.1 -> 0.35.2
        python3-gcovr: upgrade 7.0 -> 7.2
        python3-google-api-core: upgrade 2.16.2 -> 2.17.1
        python3-google-api-python-client: upgrade 2.118.0 -> 2.120.0
        python3-grpcio(-tools): upgrade 1.60.1 -> 1.62.0
        python3-ipython: upgrade 8.21.0 -> 8.22.1
        python3-pdm: upgrade 2.12.3 -> 2.12.4
        python3-pymisp: upgrade 2.4.185 -> 2.4.186
        python3-scrypt: upgrade 0.8.20 -> 0.8.24
        python3-sentry-sdk: upgrade 1.40.4 -> 1.40.6
        smarty: upgrade 4.3.4 -> 4.4.1
        stunnel: upgrade 5.69 -> 5.72
        abseil-cpp: upgrade 20230802.1 -> 20240116.1
        dnf-plugin-tui: upgrade 1.3 -> 1.4
        boost-sml: upgrade 1.1.9 -> 1.1.11
        ctags: upgrade 6.1.20240225.0 -> 6.1.20240310.0
        dialog: upgrade 1.3-20240101 -> 1.3-20240307
        flatbuffers: upgrade 23.5.26 -> 24.3.7
        gjs: upgrade 1.78.4 -> 1.80.0
        hwdata: upgrade 0.379 -> 0.380
        iceauth: upgrade 1.0.9 -> 1.0.10
        libdnet: upgrade 1.17.0 -> 1.18.0
        libopus: upgrade 1.4 -> 1.5.1
        libreport: upgrade 2.17.11 -> 2.17.15
        libxaw: upgrade 1.0.15 -> 1.0.16
        mcelog: upgrade 196 -> 197
        networkd-dispatcher: upgrade 2.1 -> 2.2.4
        openlldp: upgrade 1.1.0 -> 1.1.1
        opensc: upgrade 0.24.0 -> 0.25.0
        pcsc-lite: upgrade 2.0.1 -> 2.0.3
        python3-a2wsgi: upgrade 1.10.2 -> 1.10.4
        python3-apiflask: upgrade 2.1.0 -> 2.1.1
        python3-argcomplete: upgrade 3.2.2 -> 3.2.3
        python3-bandit: upgrade 1.7.7 -> 1.7.8
        python3-blivet: upgrade 3.8.2 -> 3.9.1
        python3-blivetgui: upgrade 2.4.2 -> 2.5.0
        python3-django: upgrade 5.0.2 -> 5.0.3
        python3-elementpath: upgrade 4.3.0 -> 4.4.0
        python3-eth-abi: upgrade 5.0.0 -> 5.0.1
        python3-eth-rlp: upgrade 1.0.1 -> 2.0.0
        python3-flask-migrate: upgrade 4.0.5 -> 4.0.7
        python3-google-api-python-client: upgrade 2.120.0 -> 2.122.0
        python3-google-auth: upgrade 2.28.1 -> 2.28.2
        python3-googleapis-common-protos: upgrade 1.62.0 -> 1.63.0
        python3-grpcio-tools: upgrade 1.62.0 -> 1.62.1
        python3-grpcio: upgrade 1.62.0 -> 1.62.1
        python3-ipython: upgrade 8.22.1 -> 8.22.2
        python3-mypy: upgrade 1.8.0 -> 1.9.0
        python3-pydantic: upgrade 2.6.3 -> 2.6.4
        python3-pymisp: upgrade 2.4.186 -> 2.4.187
        python3-pymodbus: upgrade 3.6.4 -> 3.6.6
        python3-pyperf: upgrade 2.6.2 -> 2.6.3
        python3-pytest-lazy-fixtures: upgrade 1.0.5 -> 1.0.6
        python3-pytest-timeout: upgrade 2.2.0 -> 2.3.1
        python3-requests-oauthlib: upgrade 1.3.1 -> 1.4.0
        python3-sentry-sdk: upgrade 1.40.6 -> 1.42.0
        python3-tox: upgrade 4.13.0 -> 4.14.1
        python3-traitlets: upgrade 5.14.1 -> 5.14.2
        python3-types-psutil: upgrade 5.9.5.20240205 -> 5.9.5.20240316
        python3-types-python-dateutil: upgrade 2.8.19.20240106 -> 2.9.0.20240316
        tcsh: upgrade 6.24.10 -> 6.24.11
        thingsboard-gateway: upgrade 3.4.4 -> 3.4.5
        xmessage: upgrade 1.0.6 -> 1.0.7
        xrefresh: upgrade 1.0.7 -> 1.1.0
        gjs: upgrade 1.80.0 -> 1.80.2
        gnome-backgrounds: upgrade 45.0 -> 46.0
        gnome-font-viewer: upgrade 45.0 -> 46.0
        libblockdev: upgrade 3.1.0 -> 3.1.1
        libdeflate: upgrade 1.19 -> 1.20
        libmbim: upgrade 1.30.0 -> 1.31.2
        libqmi: upgrade 1.34.0 -> 1.35.2
        libtommath: upgrade 1.2.1 -> 1.3.0
        mcelog: upgrade 197 -> 198
        metacity: upgrade 3.50.0 -> 3.52.0
        python3-asgiref: upgrade 3.7.2 -> 3.8.1
        python3-blivet: upgrade 3.9.1 -> 3.9.2
        python3-cassandra-driver: upgrade 3.29.0 -> 3.29.1
        python3-djangorestframework: upgrade 3.14.0 -> 3.15.1
        python3-eth-rlp: upgrade 2.0.0 -> 2.1.0
        python3-eventlet: upgrade 0.35.2 -> 0.36.1
        python3-filelock: upgrade 3.13.1 -> 3.13.3
        python3-flask-marshmallow: upgrade 1.2.0 -> 1.2.1
        python3-flatbuffers: upgrade 24.3.7 -> 24.3.25
        python3-google-api-core: upgrade 2.17.1 -> 2.18.0
        python3-google-api-python-client: upgrade 2.122.0 -> 2.124.0
        python3-google-auth: upgrade 2.28.2 -> 2.29.0
        python3-graphviz: upgrade 0.20.1 -> 0.20.3
        python3-gspread: upgrade 6.0.2 -> 6.1.0
        python3-jdatetime: upgrade 4.1.1 -> 5.0.0
        python3-pdm: upgrade 2.12.4 -> 2.13.2
        python3-pyasn1-modules: upgrade 0.3.0 -> 0.4.0
        python3-pymisp: upgrade 2.4.187 -> 2.4.188
        python3-pytest-asyncio: upgrade 0.23.5 -> 0.23.6
        python3-pytest-cov: upgrade 4.1.0 -> 5.0.0
        python3-pytest-lazy-fixtures: upgrade 1.0.6 -> 1.0.7
        python3-pywbem: upgrade 1.6.2 -> 1.6.3
        python3-pywbemtools: upgrade 1.2.0 -> 1.2.1
        python3-pyzstd: upgrade 0.15.9 -> 0.15.10
        python3-requests-oauthlib: upgrade 1.4.0 -> 2.0.0
        python3-sentry-sdk: upgrade 1.42.0 -> 1.44.0
        python3-socketio: upgrade 5.11.1 -> 5.11.2
        python3-thrift: upgrade 0.16.0 -> 0.20.0
        python3-tox: upgrade 4.14.1 -> 4.14.2
        python3-web3: upgrade 6.15.1 -> 6.16.0
        st: upgrade 0.9 -> 0.9.1
        thingsboard-gateway: upgrade 3.4.5 -> 3.4.6
        thrift: upgrade 0.19.0 -> 0.20.0
        tracker-miners: upgrade 3.7.0 -> 3.7.1
        tracker: upgrade 3.7.0 -> 3.7.1
        wireshark: upgrade 4.2.3 -> 4.2.4
        wolfssl: upgrade 5.6.6 -> 5.7.0

  William Lyu (3):
        nftables: Fix ptest output format issues
        nftables: Fix ShellCheck violations in ptest wrapper script "run-ptest"
        nftables: Fix failed ptest testcases

  Yi Zhao (13):
        netplan: upgrade 0.106 -> 1.0
        networkmanager: 1.44.0 -> 1.46.0
        postfix: upgrade 3.8.5 -> 3.8.6
        net-snmp: upgrade 5.9.3 -> 5.9.4
        cryptsetup: upgrade 2.7.0 -> 2.7.1
        samba: upgrade 4.19.4 -> 4.19.5
        civetweb: remove buildpaths from civetweb-targets.cmake
        minifi-cpp: upgrade 0.7.0 -> 0.15.0
        openvpn: upgrade 2.6.9 -> 2.6.10
        rocksdb: upgrade 7.9.2 -> 9.0.0
        audit: upgrade 4.0 -> 4.0.1
        netplan: add missing config directory
        strongswan: upgrade 5.9.13 -> 5.9.14

  alperak (15):
        python3-icecream: add recipe
        python3-invoke: add recipe
        python3-traitlets: add ptest and update runtime dependencies
        python3-google-auth-oauthlib: add ptest
        python3-tomli-w: added recipe which is also include ptest
        python3-pytest-localserver: added recipe which is also include ptest
        python3-responses: add recipe
        python3-google-auth: add ptest and update runtime dependencies
        remove obsolete PIP_INSTALL_PACKAGE and PIP_INSTALL_DIST_PATH
        python3-a2wsgi: added recipe which is also include ptest
        python3-httptools: added recipe which is also include ptest
        python3-wsproto: Add recipe
        python3-portalocker: enable ptest
        python3-validators: upgrade 0.22.0 > 0.24.0 and enable ptest
        python3-pydbus: Drop ${PYTHON_PN}

  chenheyun (1):
        aer-inject:add new recipe

Change-Id: I3cf0e5c87ecdfa18c35d318cb64c0e6559348618
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
diff --git a/meta-openembedded/meta-networking/conf/layer.conf b/meta-openembedded/meta-networking/conf/layer.conf
index a9088ee..ac5d15a 100644
--- a/meta-openembedded/meta-networking/conf/layer.conf
+++ b/meta-openembedded/meta-networking/conf/layer.conf
@@ -15,7 +15,7 @@
 
 LAYERDEPENDS_networking-layer = "core meta-python openembedded-layer"
 
-LAYERSERIES_COMPAT_networking-layer = "nanbield"
+LAYERSERIES_COMPAT_networking-layer = "scarthgap"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/fix-memory-leaks.patch b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/fix-memory-leaks.patch
new file mode 100644
index 0000000..22e1fac
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/fix-memory-leaks.patch
@@ -0,0 +1,768 @@
+Upstream-Status: Submitted [https://github.com/khvzak/bluez-tools/pull/48]
+
+From e5db2eec2591f0109f0eb7c2631055210b55f2f5 Mon Sep 17 00:00:00 2001
+Message-Id: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sat, 7 Nov 2020 01:07:24 -0500
+Subject: [PATCH 1/9] Remove memory leaks and overall restructure
+ manager_find_adapter
+
+---
+ src/lib/manager.c | 61 +++++++++++++++++++++++++++++++++--------------
+ 1 file changed, 43 insertions(+), 18 deletions(-)
+
+diff --git a/src/lib/manager.c b/src/lib/manager.c
+index 5286a3a..2263afc 100644
+--- a/src/lib/manager.c
++++ b/src/lib/manager.c
+@@ -136,43 +136,68 @@ const gchar *manager_find_adapter(Manager *self, const gchar *pattern, GError **
+     GVariant *ifaces_and_properties;
+     GVariantIter i;
+ 
++    gchar *pattern_lowercase = g_ascii_strdown(pattern, -1);
++
+     g_variant_iter_init(&i, objects);
+-    while (g_variant_iter_next(&i, "{&o@a{sa{sv}}}", &object_path, &ifaces_and_properties))
++    gboolean still_looking = TRUE;
++    while (still_looking && g_variant_iter_next(&i, "{&o@a{sa{sv}}}", &object_path, &ifaces_and_properties))
+     {
+         const gchar *interface_name;
+-        GVariant *properties;
+         GVariantIter ii;
++        GVariant* properties;
+         g_variant_iter_init(&ii, ifaces_and_properties);
+         while (g_variant_iter_next(&ii, "{&s@a{sv}}", &interface_name, &properties))
+         {
+-            if (g_strstr_len(g_ascii_strdown(interface_name, -1), -1, "adapter"))
++            gchar *interface_name_lowercase = g_ascii_strdown(interface_name, -1);
++            if (strstr(interface_name_lowercase, "adapter"))
+             {
+-                const gchar *object_base_name = g_path_get_basename(object_path);
+-                if (g_strstr_len(g_ascii_strdown(object_base_name, -1), -1, g_ascii_strdown(pattern, -1)))
++                g_free(interface_name_lowercase);
++
++                gchar *object_base_name_original = g_path_get_basename(object_path);
++                gchar *object_base_name = g_ascii_strdown(interface_name, -1);
++                g_free(object_base_name_original);
++
++                if (strstr(object_base_name, pattern_lowercase))
+                 {
+-                    const gchar *retVal = g_strdup(object_path);
+-                    g_variant_unref(properties);
+-                    g_variant_unref(ifaces_and_properties);
+-                    g_variant_unref(objects);
+-                    return retVal;
++                    still_looking = FALSE;
++                    g_free(object_base_name);
++                    break;
+                 }
+-                const gchar *address = g_variant_get_string(g_variant_lookup_value(properties, "Address", NULL), NULL);
+-                if (g_strstr_len(g_ascii_strdown(address, -1), -1, g_ascii_strdown(pattern, -1)))
++
++                g_free(object_base_name);
++
++                const gchar *address_original = g_variant_get_string(g_variant_lookup_value(properties, "Address", NULL), NULL);
++                gchar *address = g_ascii_strdown(address_original, -1);
++
++                if (strstr(address, pattern_lowercase))
+                 {
+-                    gchar *retVal = g_strdup(object_path);
+-                    g_variant_unref(properties);
+-                    g_variant_unref(ifaces_and_properties);
+-                    g_variant_unref(objects);
+-                    return retVal;
++                    still_looking = FALSE;
++                    g_free(address);
++                    break;
+                 }
++                g_free(address);
+             }
++            else
++            {
++                g_free(interface_name_lowercase);
++            }
++
+             g_variant_unref(properties);
+         }
++
+         g_variant_unref(ifaces_and_properties);
+     }
+     g_variant_unref(objects);
++    g_free(pattern_lowercase);
+ 
+-    return NULL;
++    if (still_looking)
++    {
++        return NULL;
++    }
++    else
++    {
++        return object_path;
++    }
+ }
+ 
+ GPtrArray *manager_get_adapters(Manager *self)
+-- 
+2.34.1
+
+
+From 163fcc94f1bc7c8f238e78adb03af914a566d979 Mon Sep 17 00:00:00 2001
+Message-Id: <163fcc94f1bc7c8f238e78adb03af914a566d979.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sat, 7 Nov 2020 22:12:21 -0500
+Subject: [PATCH 2/9] Replace manager_default_adapter with
+ manager_find_adapter(..., NULL, ...)
+
+---
+ src/lib/helpers.c | 57 ++++++++++++++++++-----------------------------
+ src/lib/manager.c | 51 +++++++++---------------------------------
+ src/lib/manager.h |  1 -
+ 3 files changed, 33 insertions(+), 76 deletions(-)
+
+diff --git a/src/lib/helpers.c b/src/lib/helpers.c
+index d7e95f9..99561b5 100644
+--- a/src/lib/helpers.c
++++ b/src/lib/helpers.c
+@@ -159,52 +159,39 @@ Adapter *find_adapter(const gchar *name, GError **error)
+ 
+     Manager *manager = g_object_new(MANAGER_TYPE, NULL);
+ 
+-    // If name is null or empty - return default adapter
+-    if (name == NULL || strlen(name) == 0)
++    // Try to find by id
++    adapter_path = (gchar *) manager_find_adapter(manager, name, error);
++
++    // Found
++    if (adapter_path)
+     {
+-        adapter_path = (gchar *) manager_default_adapter(manager, error);
+-        if (adapter_path)
+-        {
+-            // adapter = g_object_new(ADAPTER_TYPE, "DBusObjectPath", adapter_path, NULL);
+-            adapter = adapter_new(adapter_path);
+-        }
++        // adapter = g_object_new(ADAPTER_TYPE, "DBusObjectPath", adapter_path, NULL);
++        adapter = adapter_new(adapter_path);
+     }
+     else
+     {
+-        // Try to find by id
+-        adapter_path = (gchar *) manager_find_adapter(manager, name, error);
+-
+-        // Found
+-        if (adapter_path)
++        // Try to find by name
++        const GPtrArray *adapters_list = manager_get_adapters(manager);
++        g_assert(adapters_list != NULL);
++        for (int i = 0; i < adapters_list->len; i++)
+         {
++            adapter_path = g_ptr_array_index(adapters_list, i);
+             // adapter = g_object_new(ADAPTER_TYPE, "DBusObjectPath", adapter_path, NULL);
+             adapter = adapter_new(adapter_path);
+-        }
+-        else
+-        {
+-            // Try to find by name
+-            const GPtrArray *adapters_list = manager_get_adapters(manager);
+-            g_assert(adapters_list != NULL);
+-            for (int i = 0; i < adapters_list->len; i++)
++            adapter_path = NULL;
++
++            if (g_strcmp0(name, adapter_get_name(adapter, error)) == 0)
+             {
+-                adapter_path = g_ptr_array_index(adapters_list, i);
+-                // adapter = g_object_new(ADAPTER_TYPE, "DBusObjectPath", adapter_path, NULL);
+-                adapter = adapter_new(adapter_path);
+-                adapter_path = NULL;
+-
+-                if (g_strcmp0(name, adapter_get_name(adapter, error)) == 0)
++                if (*error)
+                 {
+-                    if (error)
+-                    {
+-                        g_error_free(*error);
+-                        *error = NULL;
+-                    }
+-                    break;
++                    g_error_free(*error);
++                    *error = NULL;
+                 }
+-
+-                g_object_unref(adapter);
+-                adapter = NULL;
++                break;
+             }
++
++            g_object_unref(adapter);
++            adapter = NULL;
+         }
+     }
+ 
+diff --git a/src/lib/manager.c b/src/lib/manager.c
+index 2263afc..891fc45 100644
+--- a/src/lib/manager.c
++++ b/src/lib/manager.c
+@@ -84,45 +84,6 @@ GVariant *manager_get_managed_objects(Manager *self, GError **error)
+     return retVal;
+ }
+ 
+-const gchar *manager_default_adapter(Manager *self, GError **error)
+-{
+-    g_assert(MANAGER_IS(self));
+-
+-    GVariant *objects = NULL;
+-    objects = manager_get_managed_objects(self, error);
+-    if (objects == NULL)
+-        return NULL;
+-
+-    const gchar *object_path;
+-    GVariant *ifaces_and_properties;
+-    GVariantIter i;
+-
+-    g_variant_iter_init(&i, objects);
+-    while (g_variant_iter_next(&i, "{&o@a{sa{sv}}}", &object_path, &ifaces_and_properties))
+-    {
+-        const gchar *interface_name;
+-        GVariant *properties;
+-        GVariantIter ii;
+-        g_variant_iter_init(&ii, ifaces_and_properties);
+-        while (g_variant_iter_next(&ii, "{&s@a{sv}}", &interface_name, &properties))
+-        {
+-            if (g_strstr_len(g_ascii_strdown(interface_name, -1), -1, "adapter"))
+-            {
+-                const gchar *retVal = g_strdup(object_path);
+-                g_variant_unref(properties);
+-                g_variant_unref(ifaces_and_properties);
+-                g_variant_unref(objects);
+-                return retVal;
+-            }
+-            g_variant_unref(properties);
+-        }
+-        g_variant_unref(ifaces_and_properties);
+-    }
+-    g_variant_unref(objects);
+-
+-    return NULL;
+-}
+-
+ const gchar *manager_find_adapter(Manager *self, const gchar *pattern, GError **error)
+ {
+     g_assert(MANAGER_IS(self));
+@@ -136,7 +97,11 @@ const gchar *manager_find_adapter(Manager *self, const gchar *pattern, GError **
+     GVariant *ifaces_and_properties;
+     GVariantIter i;
+ 
+-    gchar *pattern_lowercase = g_ascii_strdown(pattern, -1);
++    gchar *pattern_lowercase = NULL;
++    if (pattern != NULL)
++    {
++        pattern_lowercase = g_ascii_strdown(pattern, -1);
++    }
+ 
+     g_variant_iter_init(&i, objects);
+     gboolean still_looking = TRUE;
+@@ -153,6 +118,12 @@ const gchar *manager_find_adapter(Manager *self, const gchar *pattern, GError **
+             {
+                 g_free(interface_name_lowercase);
+ 
++                if (!pattern_lowercase)
++                {
++                    still_looking = FALSE;
++                    break;
++                }
++
+                 gchar *object_base_name_original = g_path_get_basename(object_path);
+                 gchar *object_base_name = g_ascii_strdown(interface_name, -1);
+                 g_free(object_base_name_original);
+diff --git a/src/lib/manager.h b/src/lib/manager.h
+index 0c9e052..b651812 100644
+--- a/src/lib/manager.h
++++ b/src/lib/manager.h
+@@ -54,7 +54,6 @@ extern "C" {
+      * Method definitions.
+      */
+     GVariant *manager_get_managed_objects(Manager *self, GError **error);
+-    const gchar *manager_default_adapter(Manager *self, GError **error);
+     const gchar *manager_find_adapter(Manager *self, const gchar *pattern, GError **error);
+     GPtrArray *manager_get_adapters(Manager *self);
+     const gchar **manager_get_devices(Manager *self, const gchar *adapter_pattern);
+-- 
+2.34.1
+
+
+From b463d9cfc2390ca6352c16e6f6e113cf42d0f688 Mon Sep 17 00:00:00 2001
+Message-Id: <b463d9cfc2390ca6352c16e6f6e113cf42d0f688.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sat, 7 Nov 2020 23:38:42 -0500
+Subject: [PATCH 3/9] Fix remaining g_ascii_strdown leaks
+
+---
+ src/lib/helpers.c    | 2 +-
+ src/lib/manager.c    | 5 ++++-
+ src/lib/properties.c | 4 ++--
+ 3 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/src/lib/helpers.c b/src/lib/helpers.c
+index 99561b5..b61bc07 100644
+--- a/src/lib/helpers.c
++++ b/src/lib/helpers.c
+@@ -242,7 +242,7 @@ Device *find_device(Adapter *adapter, const gchar *name, GError **error)
+                     
+                     if(g_variant_lookup(properties, "Address", "s", &address))
+                     {
+-                        if(g_strcmp0(g_ascii_strdown(address, -1), g_ascii_strdown(name, -1)) == 0)
++                        if(name && address && g_ascii_strcasecmp(address, name) == 0)
+                         {
+                             device = device_new(object_path);
+                         }
+diff --git a/src/lib/manager.c b/src/lib/manager.c
+index 891fc45..d506ae6 100644
+--- a/src/lib/manager.c
++++ b/src/lib/manager.c
+@@ -200,8 +200,11 @@ GPtrArray *manager_get_adapters(Manager *self)
+         g_variant_iter_init(&ii, ifaces_and_properties);
+         while (g_variant_iter_next(&ii, "{&s@a{sv}}", &interface_name, &properties))
+         {
+-            if (g_strstr_len(g_ascii_strdown(interface_name, -1), -1, "adapter"))
++            char* interface_name_lowercase = g_ascii_strdown(interface_name, -1);
++            if (strstr(interface_name_lowercase, "adapter"))
+                 g_ptr_array_add(adapter_array, (gpointer) g_strdup(object_path));
++
++            g_free(interface_name_lowercase);
+             g_variant_unref(properties);
+         }
+         g_variant_unref(ifaces_and_properties);
+diff --git a/src/lib/properties.c b/src/lib/properties.c
+index 8b913d5..70a7640 100644
+--- a/src/lib/properties.c
++++ b/src/lib/properties.c
+@@ -205,12 +205,12 @@ static void _properties_create_gdbus_proxy(Properties *self, GError **error)
+ {
+     if(self->priv->dbus_type && self->priv->dbus_service_name && self->priv->dbus_object_path)
+     {
+-        if(g_ascii_strcasecmp(g_ascii_strdown(self->priv->dbus_type, -1), "system") == 0)
++        if(g_ascii_strcasecmp(self->priv->dbus_type, "system") == 0)
+         {
+             g_assert(system_conn != NULL);
+             self->priv->proxy = g_dbus_proxy_new_sync(system_conn, G_DBUS_PROXY_FLAGS_NONE, NULL, self->priv->dbus_service_name, self->priv->dbus_object_path, PROPERTIES_DBUS_INTERFACE, NULL, error);
+         }
+-        else if(g_ascii_strcasecmp(g_ascii_strdown(self->priv->dbus_type, -1), "session") == 0)
++        else if(g_ascii_strcasecmp(self->priv->dbus_type, "session") == 0)
+         {
+             g_assert(session_conn != NULL);
+             self->priv->proxy = g_dbus_proxy_new_sync(session_conn, G_DBUS_PROXY_FLAGS_NONE, NULL, self->priv->dbus_service_name, self->priv->dbus_object_path, PROPERTIES_DBUS_INTERFACE, NULL, error);
+-- 
+2.34.1
+
+
+From 7ca191164a3a3d8867b1a4af7cd349dc53569fa3 Mon Sep 17 00:00:00 2001
+Message-Id: <7ca191164a3a3d8867b1a4af7cd349dc53569fa3.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sun, 8 Nov 2020 14:04:36 -0500
+Subject: [PATCH 4/9] Don't leak g_variant_lookup_value results in bt-obex
+
+---
+ src/bt-obex.c | 23 ++++++++++++++++-------
+ 1 file changed, 16 insertions(+), 7 deletions(-)
+
+diff --git a/src/bt-obex.c b/src/bt-obex.c
+index 8aacb40..0f044a5 100644
+--- a/src/bt-obex.c
++++ b/src/bt-obex.c
+@@ -213,15 +213,24 @@ static void _obex_opp_client_object_manager_handler(GDBusConnection *connection,
+             g_hash_table_insert(_transfers, g_strdup(interface_object_path), t);
+ 
+             ObexTransferInfo *info = g_malloc0(sizeof(ObexTransferInfo));
+-            info->filesize = g_variant_get_uint64(g_variant_lookup_value(properties, "Size", NULL));
+-            info->filename = g_strdup(g_variant_get_string(g_variant_lookup_value(properties, "Name", NULL), NULL));
+-            info->status = g_strdup(g_variant_get_string(g_variant_lookup_value(properties, "Status", NULL), NULL));
+-            ObexSession *session = obex_session_new(g_variant_get_string(g_variant_lookup_value(properties, "Session", NULL), NULL));
+-            
++
++            GVariant* size_variant = g_variant_lookup_value(properties, "Size", NULL);
++            GVariant* name_variant = g_variant_lookup_value(properties, "Name", NULL);
++            GVariant* status_variant = g_variant_lookup_value(properties, "Status", NULL);
++            GVariant* session_variant = g_variant_lookup_value(properties, "Session", NULL);
++
++            info->filesize = g_variant_get_uint64(size_variant);
++            info->filename = g_variant_dup_string(name_variant, NULL);
++            info->status = g_variant_dup_string(status_variant, NULL);
++            ObexSession *session = obex_session_new(g_variant_get_string(session_variant, NULL));
+             info->obex_root = g_strdup(obex_session_get_root(session, NULL));
+-            
++
++            g_variant_unref(size_variant);
++            g_variant_unref(name_variant);
++            g_variant_unref(status_variant);
++            g_variant_unref(session_variant);
+             g_object_unref(session);
+-            
++
+             g_hash_table_insert(_transfer_infos, g_strdup(interface_object_path), info);
+             if(g_strcmp0(info->status, "queued") == 0)
+                 g_print("[Transfer#%s] Waiting...\n", info->filename);
+-- 
+2.34.1
+
+
+From 7100380b710b36f8e31748ac5bf0e6ffb7c4eed7 Mon Sep 17 00:00:00 2001
+Message-Id: <7100380b710b36f8e31748ac5bf0e6ffb7c4eed7.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Thu, 12 Nov 2020 21:41:55 -0500
+Subject: [PATCH 5/9] Correctly free temporary values in bt-obex
+
+---
+ src/bt-obex.c     | 35 +++++++++++++++++++++++++----------
+ src/lib/helpers.c |  3 ++-
+ 2 files changed, 27 insertions(+), 11 deletions(-)
+
+diff --git a/src/bt-obex.c b/src/bt-obex.c
+index 0f044a5..547186b 100644
+--- a/src/bt-obex.c
++++ b/src/bt-obex.c
+@@ -70,25 +70,32 @@ static void _obex_server_object_manager_handler(GDBusConnection *connection, con
+         const gchar *interface_object_path = g_variant_get_string(g_variant_get_child_value(parameters, 0), NULL);
+         GVariant *interfaces_and_properties = g_variant_get_child_value(parameters, 1);
+         GVariant *properties = NULL;
+-        
++
+         if(g_variant_lookup(interfaces_and_properties, OBEX_TRANSFER_DBUS_INTERFACE, "@a{sv}", &properties))
+         {
+             g_print("[OBEX Server] Transfer started\n");
+             ObexTransfer *t = obex_transfer_new(interface_object_path);
+             g_hash_table_insert(_transfers, g_strdup(interface_object_path), t);
+-            
++
++            GVariant* size_variant = g_variant_lookup_value(properties, "Size", NULL);
++            GVariant* status_variant = g_variant_lookup_value(properties, "Status", NULL);
++            GVariant* session_variant = g_variant_lookup_value(properties, "Session", NULL);
++
+             ObexTransferInfo *info = g_malloc0(sizeof(ObexTransferInfo));
+-            info->filesize = g_variant_get_uint64(g_variant_lookup_value(properties, "Size", NULL));
+-            info->status = g_strdup(g_variant_get_string(g_variant_lookup_value(properties, "Status", NULL), NULL));
+-            ObexSession *session = obex_session_new(g_variant_get_string(g_variant_lookup_value(properties, "Session", NULL), NULL));
+-            
++            info->filesize = g_variant_get_uint64(size_variant);
++            info->status = g_strdup(g_variant_get_string(status_variant, NULL));
++
++            ObexSession *session = obex_session_new(g_variant_get_string(session_variant, NULL));
+             info->obex_root = g_strdup(obex_session_get_root(session, NULL));
+-            
+             g_object_unref(session);
++
++            g_variant_unref(size_variant);
++            g_variant_unref(status_variant);
++            g_variant_unref(session_variant);
+             
+             g_hash_table_insert(_transfer_infos, g_strdup(interface_object_path), info);
+         }
+-        
++
+         if(g_variant_lookup(interfaces_and_properties, OBEX_SESSION_DBUS_INTERFACE, "@a{sv}", &properties))
+         {
+             g_print("[OBEX Server] OBEX session opened\n");
+@@ -177,7 +184,12 @@ static void _obex_server_properties_handler(GDBusConnection *connection, const g
+             {
+                 g_print("[OBEX Server] Transfer succeeded\n");
+                 ObexTransferInfo *info = g_hash_table_lookup(_transfer_infos, object_path);
+-                g_rename(g_build_filename(info->obex_root, info->filename, NULL), g_build_filename(_root_path, info->filename, NULL));
++
++                gchar* old_name = g_build_filename(info->obex_root, info->filename, NULL);
++                gchar* new_name = g_build_filename(_root_path, info->filename, NULL);
++                g_rename(old_name, new_name);
++                g_free(old_name);
++                g_free(new_name);
+             }
+             else if(g_strcmp0(status, "error") == 0)
+             {
+@@ -202,7 +214,8 @@ static void _obex_opp_client_object_manager_handler(GDBusConnection *connection,
+ {
+     if(g_strcmp0(signal_name, "InterfacesAdded") == 0)
+     {
+-        const gchar *interface_object_path = g_variant_get_string(g_variant_get_child_value(parameters, 0), NULL);
++        GVariant* interface_value = g_variant_get_child_value(parameters, 0);
++        const gchar *interface_object_path = g_variant_get_string(interface_value, NULL);
+         GVariant *interfaces_and_properties = g_variant_get_child_value(parameters, 1);
+         GVariant *properties = NULL;
+         
+@@ -242,6 +255,8 @@ static void _obex_opp_client_object_manager_handler(GDBusConnection *connection,
+         }
+         
+         g_variant_unref(interfaces_and_properties);
++        g_variant_unref(interface_value);
++
+         if(properties)
+             g_variant_unref(properties);
+     }
+diff --git a/src/lib/helpers.c b/src/lib/helpers.c
+index b61bc07..d9e2257 100644
+--- a/src/lib/helpers.c
++++ b/src/lib/helpers.c
+@@ -171,7 +171,7 @@ Adapter *find_adapter(const gchar *name, GError **error)
+     else
+     {
+         // Try to find by name
+-        const GPtrArray *adapters_list = manager_get_adapters(manager);
++        GPtrArray *adapters_list = manager_get_adapters(manager);
+         g_assert(adapters_list != NULL);
+         for (int i = 0; i < adapters_list->len; i++)
+         {
+@@ -193,6 +193,7 @@ Adapter *find_adapter(const gchar *name, GError **error)
+             g_object_unref(adapter);
+             adapter = NULL;
+         }
++        g_ptr_array_unref(adapters_list);
+     }
+ 
+     g_object_unref(manager);
+-- 
+2.34.1
+
+
+From 860fb6e19a7bc272722c36a980004044bc9906e5 Mon Sep 17 00:00:00 2001
+Message-Id: <860fb6e19a7bc272722c36a980004044bc9906e5.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Thu, 12 Nov 2020 21:45:51 -0500
+Subject: [PATCH 6/9] Use g_hash_table_new_full() instead of manual freeing
+
+---
+ src/bt-obex.c | 56 +++++++++++++++++----------------------------------
+ 1 file changed, 18 insertions(+), 38 deletions(-)
+
+diff --git a/src/bt-obex.c b/src/bt-obex.c
+index 547186b..413c12d 100644
+--- a/src/bt-obex.c
++++ b/src/bt-obex.c
+@@ -55,6 +55,14 @@ struct _ObexTransferInfo {
+     gchar *status;
+ };
+ 
++static void obex_transfer_info_free(ObexTransferInfo* info)
++{
++    g_free(info->filename);
++    g_free(info->obex_root);
++    g_free(info->status);
++    g_free(info);
++}
++
+ static void sigterm_handler(int sig)
+ {
+     g_message("%s received", sig == SIGTERM ? "SIGTERM" : "SIGINT");
+@@ -117,10 +125,7 @@ static void _obex_server_object_manager_handler(GDBusConnection *connection, con
+             if(g_strcmp0(*inf, OBEX_TRANSFER_DBUS_INTERFACE) == 0)
+             {
+                 g_print("[OBEX Server] OBEX transfer closed\n");
+-                ObexTransfer *transfer = g_hash_table_lookup(_transfers, interface_object_path);
+                 g_hash_table_remove(_transfers, interface_object_path);
+-                g_object_unref(transfer);
+-                g_free(g_hash_table_lookup(_transfer_infos, interface_object_path));
+                 g_hash_table_remove(_transfer_infos, interface_object_path);
+             }
+             
+@@ -272,10 +277,7 @@ static void _obex_opp_client_object_manager_handler(GDBusConnection *connection,
+             if(g_strcmp0(*inf, OBEX_TRANSFER_DBUS_INTERFACE) == 0)
+             {
+                 // g_print("[OBEX Client] OBEX transfer closed\n");
+-                ObexTransfer *transfer = g_hash_table_lookup(_transfers, interface_object_path);
+                 g_hash_table_remove(_transfers, interface_object_path);
+-                g_object_unref(transfer);
+-                g_free(g_hash_table_lookup(_transfer_infos, interface_object_path));
+                 g_hash_table_remove(_transfer_infos, interface_object_path);
+                 if (g_main_loop_is_running(mainloop))
+                     g_main_loop_quit(mainloop);
+@@ -514,8 +516,8 @@ int main(int argc, char *argv[])
+             exit_if_error(error);
+         }
+ 
+-        _transfers = g_hash_table_new(g_str_hash, g_str_equal);
+-        _transfer_infos = g_hash_table_new(g_str_hash, g_str_equal);
++        _transfers = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_object_unref);
++        _transfer_infos = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify)obex_transfer_info_free);
+ 
+         ObexAgentManager *manager = obex_agent_manager_new();
+         
+@@ -552,21 +554,10 @@ int main(int argc, char *argv[])
+         g_hash_table_iter_init(&iter, _transfers);
+         while (g_hash_table_iter_next(&iter, &key, &value))
+         {
+-            ObexTransfer *t = OBEX_TRANSFER(value);
+-            obex_transfer_cancel(t, NULL); // skip errors
+-            g_object_unref(t);
+-            g_hash_table_iter_remove(&iter);
+-        }
+-        g_hash_table_unref(_transfers);
+-        
+-        // Remove transfer information
+-        g_hash_table_iter_init(&iter, _transfer_infos);
+-        while (g_hash_table_iter_next(&iter, &key, &value))
+-        {
+-            g_free(value);
+-            g_hash_table_iter_remove(&iter);
++            obex_transfer_cancel(OBEX_TRANSFER(value), NULL);
+         }
+         g_hash_table_unref(_transfers);
++        g_hash_table_unref(_transfer_infos);
+ 
+         g_dbus_connection_signal_unsubscribe(session_conn, obex_server_object_id);
+         g_dbus_connection_signal_unsubscribe(session_conn, obex_server_properties_id);
+@@ -588,8 +579,8 @@ int main(int argc, char *argv[])
+             exit_if_error(error);
+         }
+         
+-        _transfers = g_hash_table_new(g_str_hash, g_str_equal);
+-        _transfer_infos = g_hash_table_new(g_str_hash, g_str_equal);
++        _transfers = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_object_unref);
++        _transfer_infos = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
+ 
+         gchar * files_to_send[] = {NULL, NULL};
+         files_to_send[0] = g_path_is_absolute(opp_file_arg) ? g_strdup(opp_file_arg) : get_absolute_path(opp_file_arg);
+@@ -663,24 +654,13 @@ int main(int argc, char *argv[])
+         g_hash_table_iter_init(&iter, _transfers);
+         while (g_hash_table_iter_next(&iter, &key, &value))
+         {
+-            ObexTransfer *t = OBEX_TRANSFER(value);
+-            obex_transfer_cancel(t, NULL); // skip errors
+-            g_object_unref(t);
+-            g_hash_table_iter_remove(&iter);
++            obex_transfer_cancel(OBEX_TRANSFER(value), NULL);
+         }
+         g_hash_table_unref(_transfers);
+-        
+-        // Remove transfer information objects
+-        g_hash_table_iter_init(&iter, _transfer_infos);
+-        while (g_hash_table_iter_next(&iter, &key, &value))
+-        {
+-            g_free(value);
+-            g_hash_table_iter_remove(&iter);
+-        }
+-        g_hash_table_unref(_transfers);
+-        
+-        g_object_unref(client);
+ 
++        g_hash_table_unref(_transfer_infos);
++        g_object_unref(client);
++        g_object_unref(session);
+         g_variant_unref(device_dict);
+ 
+         g_free(src_address);
+-- 
+2.34.1
+
+
+From 9804eb7e5996c52cc542eef59ba3b5f4d0b0b2f9 Mon Sep 17 00:00:00 2001
+Message-Id: <9804eb7e5996c52cc542eef59ba3b5f4d0b0b2f9.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Thu, 12 Nov 2020 21:51:34 -0500
+Subject: [PATCH 7/9] Don't set filesize if we don't know the size
+
+I only meant to fix the g_variant_unref warning, but fixing all of them
+works too!
+---
+ src/bt-obex.c | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/src/bt-obex.c b/src/bt-obex.c
+index 413c12d..219d458 100644
+--- a/src/bt-obex.c
++++ b/src/bt-obex.c
+@@ -90,14 +90,22 @@ static void _obex_server_object_manager_handler(GDBusConnection *connection, con
+             GVariant* session_variant = g_variant_lookup_value(properties, "Session", NULL);
+ 
+             ObexTransferInfo *info = g_malloc0(sizeof(ObexTransferInfo));
+-            info->filesize = g_variant_get_uint64(size_variant);
+             info->status = g_strdup(g_variant_get_string(status_variant, NULL));
+ 
+             ObexSession *session = obex_session_new(g_variant_get_string(session_variant, NULL));
+             info->obex_root = g_strdup(obex_session_get_root(session, NULL));
+             g_object_unref(session);
+ 
+-            g_variant_unref(size_variant);
++            if (size_variant != NULL)
++            {
++                info->filesize = g_variant_get_uint64(size_variant);
++                g_variant_unref(size_variant);
++            }
++            else
++            {
++                info->filesize = 0;
++            }
++
+             g_variant_unref(status_variant);
+             g_variant_unref(session_variant);
+             
+-- 
+2.34.1
+
+
+From 9566f84464d486983ec597945bc4d5d1594ed830 Mon Sep 17 00:00:00 2001
+Message-Id: <9566f84464d486983ec597945bc4d5d1594ed830.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sun, 15 Nov 2020 16:18:36 -0500
+Subject: [PATCH 8/9] Fix a use-after-free in bt-obex
+
+---
+ src/bt-obex.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/bt-obex.c b/src/bt-obex.c
+index 219d458..7dc5d6b 100644
+--- a/src/bt-obex.c
++++ b/src/bt-obex.c
+@@ -626,7 +626,7 @@ int main(int argc, char *argv[])
+         mainloop = g_main_loop_new(NULL, FALSE);
+ 
+         ObexClient *client = obex_client_new();
+-        const gchar *session_path = obex_client_create_session(client, dst_address, device_dict, &error);
++        const gchar *session_path = obex_client_create_session(client, dst_address, g_variant_ref(device_dict), &error);
+         exit_if_error(error);
+         ObexSession *session = obex_session_new(session_path);
+         ObexObjectPush *oop = obex_object_push_new(obex_session_get_dbus_object_path(session));
+-- 
+2.34.1
+
+
+From 5271a4c6419b54a0b18070d39bfc69fae2819c00 Mon Sep 17 00:00:00 2001
+Message-Id: <5271a4c6419b54a0b18070d39bfc69fae2819c00.1710791277.git.joerg.sommer@navimatix.de>
+In-Reply-To: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+References: <e5db2eec2591f0109f0eb7c2631055210b55f2f5.1710791277.git.joerg.sommer@navimatix.de>
+From: thatlittlegit <personal@thatlittlegit.tk>
+Date: Sat, 21 Nov 2020 13:09:46 -0500
+Subject: [PATCH 9/9] Fix running sdptool if it isn't in $PATH
+
+---
+ src/bt-device.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/bt-device.c b/src/bt-device.c
+index a739b98..948a10c 100644
+--- a/src/bt-device.c
++++ b/src/bt-device.c
+@@ -331,9 +331,9 @@ static GHashTable *_bt_device_sdp_browse(const gchar *device_path, const gchar *
+         }
+         
+         if(pattern == NULL || strlen(pattern) == 0)
+-            execl("/bin/sdptool", "/bin/sdptool", "browse", "--xml", device_path, (char *) 0);
++            execlp("sdptool", "sdptool", "browse", "--xml", device_path, (char *) 0);
+         else
+-            execl("/bin/sdptool", "/bin/sdptool", "browse", "--xml", "--uuid", pattern, device_path, (char *) 0);
++            execlp("sdptool", "sdptool", "browse", "--xml", "--uuid", pattern, device_path, (char *) 0);
+         
+     }
+     if(pid == -1)
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/obex-file-fix-null-check.patch b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/obex-file-fix-null-check.patch
new file mode 100644
index 0000000..231f3b0
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools/obex-file-fix-null-check.patch
@@ -0,0 +1,41 @@
+Upstream-Status: Submitted [https://github.com/khvzak/bluez-tools/pull/47]
+
+From f9bc83d46f131037f7fa5195a506b65560199d0d Mon Sep 17 00:00:00 2001
+Message-Id: <f9bc83d46f131037f7fa5195a506b65560199d0d.1710791715.git.joerg.sommer@navimatix.de>
+From: George Talusan <george.talusan@gmail.com>
+Date: Mon, 26 Oct 2020 21:35:51 -0400
+Subject: [PATCH] fix null checks
+
+---
+ src/lib/bluez/obex/obex_file_transfer.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/lib/bluez/obex/obex_file_transfer.c b/src/lib/bluez/obex/obex_file_transfer.c
+index 2d3dafe..91c41d6 100644
+--- a/src/lib/bluez/obex/obex_file_transfer.c
++++ b/src/lib/bluez/obex/obex_file_transfer.c
+@@ -194,7 +194,7 @@ GVariant *obex_file_transfer_get_file(ObexFileTransfer *self, const gchar *targe
+ 	g_assert(OBEX_FILE_TRANSFER_IS(self));
+ 	GVariant *ret = NULL;
+ 	GVariant *proxy_ret = g_dbus_proxy_call_sync(self->priv->proxy, "GetFile", g_variant_new ("(ss)", targetfile, sourcefile), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+-	if (proxy_ret != NULL)
++	if (proxy_ret == NULL)
+ 		return NULL;
+ 	ret = g_variant_ref_sink(proxy_ret);
+ 	g_variant_unref(proxy_ret);
+@@ -228,9 +228,9 @@ GVariant *obex_file_transfer_put_file(ObexFileTransfer *self, const gchar *sourc
+ 	g_assert(OBEX_FILE_TRANSFER_IS(self));
+ 	GVariant *ret = NULL;
+ 	GVariant *proxy_ret = g_dbus_proxy_call_sync(self->priv->proxy, "PutFile", g_variant_new ("(ss)", targetfile, sourcefile), G_DBUS_CALL_FLAGS_NONE, -1, NULL, error);
+-	if (proxy_ret != NULL)
++	if (proxy_ret == NULL)
+ 		return NULL;
+ 	ret = g_variant_ref_sink(proxy_ret);
+ 	g_variant_unref(proxy_ret);
+ 	return ret;
+-}
+\ No newline at end of file
++}
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools_git.bb
new file mode 100644
index 0000000..2200563
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/bluez-tools/bluez-tools_git.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Bluez Tools"
+DESCRIPTION = "\
+    Additional tools for bluez5 to list, manage, and show inforations about \
+    adapters, agents, devices, network connections, and obex. \
+"
+HOMEPAGE = "https://github.com/khvzak/bluez-tools"
+BUGTRACKER = "https://github.com/khvzak/bluez-tools/issues"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
+
+DEPENDS = "dbus-glib glib-2.0 readline"
+
+SRC_URI = "\
+    git://github.com/khvzak/bluez-tools.git;protocol=https;branch=master \
+    file://fix-memory-leaks.patch \
+    file://obex-file-fix-null-check.patch \
+"
+SRCREV = "f65321736475429316f07ee94ec0deac8e46ec4a"
+
+S = "${WORKDIR}/git"
+
+inherit autotools pkgconfig
+
+RDEPENDS:${PN} = "bluez5"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_1.16.bb b/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_1.16.bb
index 0a654a1..f5a699d 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_1.16.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/civetweb/civetweb_1.16.bb
@@ -40,4 +40,9 @@
 PACKAGECONFIG[ssl] = "-DCIVETWEB_ENABLE_SSL=ON -DCIVETWEB_SSL_OPENSSL_API_1_1=OFF -DCIVETWEB_ENABLE_SSL_DYNAMIC_LOADING=OFF,-DCIVETWEB_ENABLE_SSL=OFF,openssl (=1.0.2%),"
 PACKAGECONFIG[websockets] = "-DCIVETWEB_ENABLE_WEBSOCKETS=ON,-DCIVETWEB_ENABLE_WEBSOCKETS=OFF,"
 
+do_install:append() {
+    sed -i -e 's|${RECIPE_SYSROOT_NATIVE}||g' \
+        -e 's|${RECIPE_SYSROOT}||g' ${D}${libdir}/cmake/civetweb/civetweb-targets.cmake
+}
+
 BBCLASSEXTEND = "native"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch
index e544236..3635412 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0003-configure.ac-allow-cross-compilation.patch
@@ -12,26 +12,28 @@
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
 Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
 
-update to new version 3.0.17 to fix patch warning
+Update to new version 3.0.17 to fix patch warning
 Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+Rebased for 3.2.3
+Signed-off-by: Randy MacLeod <randy.macleod@windriver.com>
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+
 ---
  src/modules/rlm_krb5/configure.ac | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)
 
 diff --git a/src/modules/rlm_krb5/configure.ac b/src/modules/rlm_krb5/configure.ac
-index a0f510cfb3..d2f3eca03e 100644
+index 9ee6379ea4..1dad481da8 100644
 --- a/src/modules/rlm_krb5/configure.ac
 +++ b/src/modules/rlm_krb5/configure.ac
-@@ -140,7 +140,8 @@ if test x$with_[]modname != xno; then
- 		FR_SMART_CHECK_LIB(krb5, krb5_is_thread_safe)
- 		if test "x$ac_cv_lib_krb5_krb5_is_thread_safe" = xyes; then
- 			AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <krb5.h>]], [[return krb5_is_thread_safe() ? 0 : 1]])],
--				[krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])])
-+				[krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])],
-+				[AC_MSG_WARN(cross compiling: not checking)])
- 		fi
- 	else
- 		krb5threadsafe=""
--- 
-2.25.1
-
+@@ -143,7 +143,8 @@ if test "$krb5threadsafe" != "no"; then
+ 	FR_SMART_CHECK_LIB(krb5, krb5_is_thread_safe)
+ 	if test "x$ac_cv_lib_krb5_krb5_is_thread_safe" = xyes; then
+ 		AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <krb5.h>]], [[return krb5_is_thread_safe() ? 0 : 1]])],
+-			[krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])])
++			[krb5threadsafe="-DKRB5_IS_THREAD_SAFE"], [AC_MSG_WARN([[libkrb5 is not threadsafe]])],
++			[AC_MSG_WARN(cross compiling: not checking)])
+ 	fi
+ else
+ 	krb5threadsafe=""
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch
index 8fd0dca..510136d 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0006-Avoid-searching-host-dirs.patch
@@ -10,189 +10,214 @@
 
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
 Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- acinclude.m4                                                | 4 ++--
- src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac        | 4 ++--
- src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac   | 4 ++--
- src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac      | 4 ++--
- src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac      | 6 +++---
- src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac     | 2 +-
- src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac | 4 ++--
- src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac   | 4 ++--
- 8 files changed, 16 insertions(+), 16 deletions(-)
 
-diff --git a/acinclude.m4 b/acinclude.m4
-index a953d0e1b6..ede143d3c2 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -115,7 +115,7 @@ dnl #
- dnl #  Try to guess possible locations.
- dnl #
- if test "x$smart_lib" = "x"; then
--  for try in /usr/local/lib /opt/lib; do
-+  for try in $smart_lib_dir; do
-     AC_MSG_CHECKING([for $2 in -l$1 in $try])
-     LIBS="-l$1 $old_LIBS"
-     CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS"
-@@ -155,7 +155,7 @@ ac_safe=`echo "$1" | sed 'y%./+-%__pm%'`
+Rebased for 3.2.3
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ m4/fr_smart_check_include.m4                                |    2 +-
+ m4/fr_smart_check_lib.m4                                    |   22 ----------------------
+ src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac        |    4 ++--
+ src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac   |    4 ++--
+ src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac      |    4 ++--
+ src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac      |    6 +++---
+ src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac     |    2 +-
+ src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac |    4 ++--
+ src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac   |    4 ++--
+ 9 files changed, 15 insertions(+), 37 deletions(-)
+
+diff --git a/m4/fr_smart_check_include.m4 b/m4/fr_smart_check_include.m4
+index e7d4443f9c..2b69704f98 100644
+--- a/m4/fr_smart_check_include.m4
++++ b/m4/fr_smart_check_include.m4
+@@ -9,7 +9,7 @@ ac_safe=`echo "$1" | sed 'y%./+-%__pm%'`
  old_CPPFLAGS="$CPPFLAGS"
  smart_include=
  dnl #  The default directories we search in (in addition to the compilers search path)
 -smart_include_dir="/usr/local/include /opt/include"
-+smart_include_dir=
++smart_include_dir=""
  
  dnl #  Our local versions
  _smart_try_dir=
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac
-index 44f84aa27e..23a1899591 100644
+index 0d94ee9bf6..6108e62054 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_db2/configure.ac
-@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then
- 		esac])
+@@ -58,14 +58,14 @@ AC_ARG_WITH(ibmdb2-dir,
+ 	esac])
  
- 	dnl Check for SQLConnect in -ldb2
--	smart_try_dir="$ibmdb2_lib_dir /usr/local/db2/lib /usr/IBMdb2/V7.1/lib"
-+	smart_try_dir="$ibmdb2_lib_dir"
- 	FR_SMART_CHECK_LIB(db2, SQLConnect)
- 	if test "x$ac_cv_lib_db2_SQLConnect" != xyes; then
- 		fail="$fail libdb2"
- 	fi
+ dnl Check for SQLConnect in -ldb2
+-smart_try_dir="$ibmdb2_lib_dir /usr/local/db2/lib /usr/IBMdb2/V7.1/lib"
++smart_try_dir="$ibmdb2_lib_dir"
+ FR_SMART_CHECK_LIB(db2, SQLConnect)
+ if test "x$ac_cv_lib_db2_SQLConnect" != xyes; then
+ 	FR_MODULE_FAIL([libdb2])
+ fi
  
- 	dnl Check for sqlcli.h
--	smart_try_dir="$ibmdb2_include_dir /usr/local/db2/include /usr/IBMdb2/V7.1/include"
-+	smart_try_dir="$ibmdb2_include_dir"
- 	FR_SMART_CHECK_INCLUDE(sqlcli.h)
- 	if test "x$ac_cv_header_sqlcli_h" != xyes; then
- 		fail="$fail sqlcli.h"
+ dnl Check for sqlcli.h
+-smart_try_dir="$ibmdb2_include_dir /usr/local/db2/include /usr/IBMdb2/V7.1/include"
++smart_try_dir="$ibmdb2_include_dir"
+ FR_SMART_CHECK_INCLUDE(sqlcli.h)
+ if test "x$ac_cv_header_sqlcli_h" != xyes; then
+ 	FR_MODULE_FAIL([sqlcli.h])
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac
-index 4c2fd7ba9e..10c864def5 100644
+index 5aa7b4b6ee..2eda5b6cc5 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_firebird/configure.ac
-@@ -60,14 +60,14 @@ if test x$with_[]modname != xno; then
- 		esac])
+@@ -58,14 +58,14 @@ AC_ARG_WITH(firebird-dir,
+ 	esac])
  
- 	dnl Check for isc_attach_database in -lfbclient
--	smart_try_dir="$firebird_lib_dir /usr/lib/firebird2/lib /usr/local/firebird/lib"
-+	smart_try_dir="$firebird_lib_dir"
- 	FR_SMART_CHECK_LIB(fbclient, isc_attach_database)
- 	if test "x$ac_cv_lib_fbclient_isc_attach_database" != xyes; then
- 		fail="$fail libfbclient"
- 	fi
+ dnl Check for isc_attach_database in -lfbclient
+-smart_try_dir="$firebird_lib_dir /usr/lib/firebird2/lib /usr/local/firebird/lib"
++smart_try_dir="$firebird_lib_dir"
+ FR_SMART_CHECK_LIB(fbclient, isc_attach_database)
+ if test "x$ac_cv_lib_fbclient_isc_attach_database" != xyes; then
+ 	FR_MODULE_FAIL([libfbclient])
+ fi
  
- 	dnl Check for ibase.h
--	smart_try_dir="$firebird_include_dir /usr/lib/firebird2/include /usr/local/firebird/include"
-+	smart_try_dir="$firebird_include_dir"
- 	FR_SMART_CHECK_INCLUDE(ibase.h)
- 	if test "x$ac_cv_header_ibase_h" != xyes; then
- 		fail="$fail ibase.h"
+ dnl Check for ibase.h
+-smart_try_dir="$firebird_include_dir /usr/lib/firebird2/include /usr/local/firebird/include"
++smart_try_dir="$firebird_include_dir"
+ FR_SMART_CHECK_INCLUDE(ibase.h)
+ if test "x$ac_cv_header_ibase_h" != xyes; then
+ 	FR_MODULE_FAIL([ibase.h])
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac
-index d26ac9c431..6e4500e948 100644
+index d96216aca8..88cbc469f7 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_iodbc/configure.ac
-@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then
- 		esac])
+@@ -58,14 +58,14 @@ AC_ARG_WITH(iodbc-dir,
+ 	esac])
  
- 	dnl Check for SQLConnect in -liodbc
--	smart_try_dir="$iodbc_lib_dir /usr/lib /usr/lib/iodbc /usr/local/lib/iodbc /usr/local/iodbc/lib/iodbc"
-+	smart_try_dir="$iodbc_lib_dir"
- 	FR_SMART_CHECK_LIB(iodbc, SQLConnect)
- 	if test "x$ac_cv_lib_iodbc_SQLConnect" != xyes; then
- 		fail="$fail libiodbc"
- 	fi
+ dnl Check for SQLConnect in -liodbc
+-smart_try_dir="$iodbc_lib_dir /usr/lib /usr/lib/iodbc /usr/local/lib/iodbc /usr/local/iodbc/lib/iodbc"
++smart_try_dir="$iodbc_lib_dir"
+ FR_SMART_CHECK_LIB(iodbc, SQLConnect)
+ if test "x$ac_cv_lib_iodbc_SQLConnect" != xyes; then
+ 	FR_MODULE_FAIL([libiodbc])
+ fi
  
- 	dnl Check for isql.h
--	smart_try_dir="$iodbc_include_dir /usr/include /usr/include/iodbc /usr/local/iodbc/include"
-+	smart_try_dir="$iodbc_include_dir"
- 	FR_SMART_CHECK_INCLUDE(isql.h)
- 	if test "x$ac_cv_header_isql_h" != xyes; then
- 		fail="$fail isql.h"
+ dnl Check for isql.h
+-smart_try_dir="$iodbc_include_dir /usr/include /usr/include/iodbc /usr/local/iodbc/include"
++smart_try_dir="$iodbc_include_dir"
+ FR_SMART_CHECK_INCLUDE(isql.h)
+ if test "x$ac_cv_header_isql_h" != xyes; then
+ 	FR_MODULE_FAIL([isql.h])
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac
-index df36da77bf..31359041c7 100644
+index d36aecbda6..201a623d4e 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_mysql/configure.ac
-@@ -140,7 +140,7 @@ if test x$with_[]modname != xno; then
+@@ -138,7 +138,7 @@ fi
  
- 	dnl # Check for libmysqlclient_r
- 	if test "x$have_a_libmysqlclient" != "xyes"; then
--	    smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql"
-+	    smart_try_dir="$mysql_lib_dir"
- 	    FR_SMART_CHECK_LIB(mysqlclient_r, mysql_init)
- 	    if test "x$ac_cv_lib_mysqlclient_r_mysql_init" = "xyes"; then
- 			have_a_libmysqlclient='yes'
-@@ -149,7 +149,7 @@ if test x$with_[]modname != xno; then
+ dnl # Check for libmysqlclient_r
+ if test "x$have_a_libmysqlclient" != "xyes"; then
+-    smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql"
++    smart_try_dir="$mysql_lib_dir"
+     FR_SMART_CHECK_LIB(mysqlclient_r, mysql_init)
+     if test "x$ac_cv_lib_mysqlclient_r_mysql_init" = "xyes"; then
+ 		have_a_libmysqlclient='yes'
+@@ -147,7 +147,7 @@ fi
  
- 	dnl # Check for libmysqlclient
- 	if test "x$have_a_libmysqlclient" != "xyes"; then
--	    smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql"
-+	    smart_try_dir="$mysql_lib_dir"
- 	    FR_SMART_CHECK_LIB(mysqlclient, mysql_init)
- 	    if test "x$ac_cv_lib_mysqlclient_mysql_init" = "xyes"; then
- 			have_a_libmysqlclient='yes'
-@@ -243,7 +243,7 @@ if test x$with_[]modname != xno; then
-     fi
+ dnl # Check for libmysqlclient
+ if test "x$have_a_libmysqlclient" != "xyes"; then
+-    smart_try_dir="$mysql_lib_dir /usr/lib /usr/lib/mysql /usr/local/lib/mysql /usr/local/mysql/lib/mysql"
++    smart_try_dir="$mysql_lib_dir"
+     FR_SMART_CHECK_LIB(mysqlclient, mysql_init)
+     if test "x$ac_cv_lib_mysqlclient_mysql_init" = "xyes"; then
+ 		have_a_libmysqlclient='yes'
+@@ -242,7 +242,7 @@ if test "x$have_mysql_h" != "xyes"; then
+ fi
  
-     if test "x$have_mysql_h" != "xyes"; then
--		smart_try_dir="$mysql_include_dir /usr/local/include /usr/local/mysql/include"
-+		smart_try_dir="$mysql_include_dir"
- 		FR_SMART_CHECK_INCLUDE(mysql/mysql.h)
- 		if test "x$ac_cv_header_mysql_mysql_h" = "xyes"; then
- 	    	AC_DEFINE(HAVE_MYSQL_MYSQL_H, [], [Define if you have <mysql/mysql.h>])
+ if test "x$have_mysql_h" != "xyes"; then
+-	smart_try_dir="$mysql_include_dir /usr/local/include /usr/local/mysql/include"
++	smart_try_dir="$mysql_include_dir"
+ 	FR_SMART_CHECK_INCLUDE(mysql/mysql.h)
+ 	if test "x$ac_cv_header_mysql_mysql_h" = "xyes"; then
+ 	AC_DEFINE(HAVE_MYSQL_MYSQL_H, [], [Define if you have <mysql/mysql.h>])
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac
-index 3b45da582a..03e6607d2b 100644
+index f31b7d2c5a..67bbf66df5 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_oracle/configure.ac
-@@ -68,7 +68,7 @@ if test x$with_[]modname != xno; then
-     dnl # Check for header files
-     dnl ############################################################
+@@ -66,7 +66,7 @@ dnl ############################################################
+ dnl # Check for header files
+ dnl ############################################################
  
--    smart_try_dir="$oracle_include_dir /usr/local/instaclient/include"
-+    smart_try_dir="$oracle_include_dir"
+-smart_try_dir="$oracle_include_dir /usr/local/instaclient/include"
++smart_try_dir="$oracle_include_dir"
  
-     if test "x$ORACLE_HOME" != "x"; then
+ if test "x$ORACLE_HOME" != "x"; then
  	smart_try_dir="${smart_try_dir} ${ORACLE_HOME}/include"
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac
-index 8ac1022e89..d46c0f66bf 100644
+index 46587e4099..b41c51bda7 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_postgresql/configure.ac
-@@ -45,7 +45,7 @@ if test x$with_[]modname != xno; then
- 	  esac ]
- 	)
+@@ -43,7 +43,7 @@ AC_ARG_WITH(rlm-sql-postgresql-include-dir,
+ 		;;
+ 	esac])
  
--	smart_try_dir="$rlm_sql_postgresql_include_dir /usr/include/postgresql /usr/local/pgsql/include /usr/include/pgsql"
-+	smart_try_dir="$rlm_sql_postgresql_include_dir"
- 	FR_SMART_CHECK_INCLUDE(libpq-fe.h)
- 	if test "x$ac_cv_header_libpqmfe_h" != "xyes"; then
- 		fail="$fail libpq-fe.h"
-@@ -94,7 +94,7 @@ if test x$with_[]modname != xno; then
- 		  ])
- 	fi
+-smart_try_dir="$rlm_sql_postgresql_include_dir /usr/include/postgresql /usr/local/pgsql/include /usr/include/pgsql"
++smart_try_dir="$rlm_sql_postgresql_include_dir"
+ FR_SMART_CHECK_INCLUDE(libpq-fe.h)
+ if test "x$ac_cv_header_libpqmfe_h" != "xyes"; then
+ 	FR_MODULE_FAIL([libpq-fe.h])
+@@ -95,7 +95,7 @@ else
+ 		])
+ fi
  
--	smart_try_dir="$rlm_sql_postgresql_lib_dir /usr/lib /usr/local/pgsql/lib"
-+	smart_try_dir="$rlm_sql_postgresql_lib_dir"
- 	FR_SMART_CHECK_LIB(pq, PQconnectdb)
- 	if test "x$ac_cv_lib_pq_PQconnectdb" != "xyes"; then
- 		fail="$fail libpq"
+-smart_try_dir="$rlm_sql_postgresql_lib_dir /usr/lib /usr/local/pgsql/lib"
++smart_try_dir="$rlm_sql_postgresql_lib_dir"
+ FR_SMART_CHECK_LIB(pq, PQconnectdb)
+ if test "x$ac_cv_lib_pq_PQconnectdb" != "xyes"; then
+ 	FR_MODULE_FAIL([libpq])
 diff --git a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac
-index f10279fe1f..0081a338c8 100644
+index 3bdfae6032..ce68c312c6 100644
 --- a/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac
 +++ b/src/modules/rlm_sql/drivers/rlm_sql_unixodbc/configure.ac
-@@ -61,14 +61,14 @@ if test x$with_[]modname != xno; then
- 		esac])
+@@ -58,14 +58,14 @@ AC_ARG_WITH(unixodbc-dir,
+ 	esac])
  
- 	dnl Check for SQLConnect in -lodbc
--	smart_try_dir="$unixodbc_lib_dir /usr/local/unixodbc/lib"
-+	smart_try_dir="$unixodbc_lib_dir"
- 	FR_SMART_CHECK_LIB(odbc, SQLConnect)
- 	if test "x$ac_cv_lib_odbc_SQLConnect" != xyes; then
- 		fail="$fail libodbc"
- 	fi
+ dnl Check for SQLConnect in -lodbc
+-smart_try_dir="$unixodbc_lib_dir /usr/local/unixodbc/lib"
++smart_try_dir="$unixodbc_lib_dir"
+ FR_SMART_CHECK_LIB(odbc, SQLConnect)
+ if test "x$ac_cv_lib_odbc_SQLConnect" != xyes; then
+ 	FR_MODULE_FAIL([libodbc])
+ fi
  
- 	dnl Check for sql.h
--	smart_try_dir="$unixodbc_include_dir /usr/local/unixodbc/include"
-+	smart_try_dir="$unixodbc_include_dir"
- 	FR_SMART_CHECK_INCLUDE(sql.h)
- 	if test "x$ac_cv_header_sql_h" != xyes; then
- 		fail="$fail sql.h"
--- 
-2.25.1
-
+ dnl Check for sql.h
+-smart_try_dir="$unixodbc_include_dir /usr/local/unixodbc/include"
++smart_try_dir="$unixodbc_include_dir"
+ FR_SMART_CHECK_INCLUDE(sql.h)
+ if test "x$ac_cv_header_sql_h" != xyes; then
+ 	FR_MODULE_FAIL([sql.h])
+diff --git a/m4/fr_smart_check_lib.m4 b/m4/fr_smart_check_lib.m4
+index 16ac5b3c5e..0f5e9fc6d6 100644
+--- a/m4/fr_smart_check_lib.m4
++++ b/m4/fr_smart_check_lib.m4
+@@ -64,28 +64,6 @@ if test "x$smart_lib" = "x"; then
+   LIBS="$old_LIBS"
+ fi
+ 
+-dnl #
+-dnl #  Try to guess possible locations.
+-dnl #
+-if test "x$smart_lib" = "x"; then
+-  for try in /usr/local/lib /opt/lib; do
+-    AC_MSG_CHECKING([for $2 in -l$1 in $try])
+-    LIBS="-l$1 $old_LIBS"
+-    CPPFLAGS="-L$try -Wl,-rpath,$try $old_CPPFLAGS"
+-    AC_TRY_LINK([extern char $2();],
+-		[$2()],
+-		[
+-		  smart_lib="-l$1"
+-		  smart_ldflags="-L$try -Wl,-rpath,$try"
+-		  AC_MSG_RESULT(yes)
+-		  break
+-		],
+-		[AC_MSG_RESULT(no)])
+-  done
+-  LIBS="$old_LIBS"
+-  CPPFLAGS="$old_CPPFLAGS"
+-fi
+-
+ dnl #
+ dnl #  Found it, set the appropriate variable.
+ dnl #
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch
index cb71fb1..78259d7 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0007-rlm_python-add-PY_INC_DIR-in-search-dir.patch
@@ -16,18 +16,15 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/src/modules/rlm_python/configure.ac b/src/modules/rlm_python/configure.ac
-index 08ecb62518..d5c0944ff1 100644
+index c79c327064..5f4d274990 100644
 --- a/src/modules/rlm_python/configure.ac
 +++ b/src/modules/rlm_python/configure.ac
-@@ -98,7 +98,7 @@ if test x$with_[]modname != xno; then
+@@ -103,7 +103,7 @@ FR_MODULE_TEST_PASS_DO([
  
- 		old_CFLAGS=$CFLAGS
- 		CFLAGS="$CFLAGS $PY_CFLAGS"
--		smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION"
-+		smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR"
- 		FR_SMART_CHECK_INCLUDE(Python.h)
- 		CFLAGS=$old_CFLAGS
+ 	old_CFLAGS=$CFLAGS
+ 	CFLAGS="$CFLAGS $PY_CFLAGS"
+-	smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION"
++	smart_try_dir="$PY_PREFIX/include/python$PY_SYS_VERSION $PY_INC_DIR"
+ 	FR_SMART_CHECK_INCLUDE(Python.h)
+ 	CFLAGS=$old_CFLAGS
  
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch
index 69125eb..efa5c53 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0011-rlm_mschap-Use-includedir-instead-of-hardcoding-usr-.patch
@@ -14,18 +14,15 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/src/modules/rlm_mschap/configure.ac b/src/modules/rlm_mschap/configure.ac
-index 0fd105d7e6..6ab15509e5 100644
+index 953336f475..77a18af55d 100644
 --- a/src/modules/rlm_mschap/configure.ac
 +++ b/src/modules/rlm_mschap/configure.ac
-@@ -75,7 +75,7 @@ if test x$with_[]modname != xno; then
-         mod_ldflags="-F /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks -framework DirectoryService"
-     fi
+@@ -77,7 +77,7 @@ else
+         FR_MODULE_FEATURE([opendirectory], [without opendirectory support])
+ fi
  
--    smart_try_dir="$winbind_include_dir /usr/include/samba-4.0"
-+    smart_try_dir="$winbind_include_dir =/usr/include/samba-4.0"
-     FR_SMART_CHECK_INCLUDE(wbclient.h, [#include <stdint.h>
- 					#include <stdbool.h>])
-     if test "x$ac_cv_header_wbclient_h" != "xyes"; then
--- 
-2.25.1
-
+-smart_try_dir="$winbind_include_dir /usr/include/samba-4.0"
++smart_try_dir="$winbind_include_dir =/usr/include/samba-4.0"
+ FR_SMART_CHECK_INCLUDE(wbclient.h, [#include <stdint.h>
+ 				#include <stdbool.h>])
+ if test "x$ac_cv_header_wbclient_h" != "xyes"; then
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-Add-acinclude.m4-to-include-required-macros.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-Add-acinclude.m4-to-include-required-macros.patch
new file mode 100644
index 0000000..f5c399e
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-Add-acinclude.m4-to-include-required-macros.patch
@@ -0,0 +1,61 @@
+From 40abff4062d0521cf2b2a8a4660a3d2933f86f9d Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+Date: Mon, 1 Apr 2024 09:09:07 +0000
+Subject: [PATCH] Add acinclude.m4 to include required macros
+
+* These micro files are in the m4 directories, but the aclocal didn't
+  add them to aclocal.m4 automatically, so add them to acinclude.m4
+  manually.
+
+* The runlog.m4 is added for python.m4.
+
+Upstream-Status: Inappropriate [OE Specific]
+
+Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
+---
+ acinclude.m4 |  8 ++++++++
+ m4/runlog.m4 | 17 +++++++++++++++++
+ 2 files changed, 25 insertions(+)
+ create mode 100644 acinclude.m4
+ create mode 100644 m4/runlog.m4
+
+diff --git a/acinclude.m4 b/acinclude.m4
+new file mode 100644
+index 0000000000..118b7f0e5f
+--- /dev/null
++++ b/acinclude.m4
+@@ -0,0 +1,8 @@
++m4_include([m4/fr_init_module.m4])
++m4_include([m4/ax_with_prog.m4])
++m4_include([m4/runlog.m4])
++m4_include([m4/python.m4])
++m4_include([m4/ax_compare_version.m4])
++m4_include([m4/libcurl_check_config.m4])
++m4_include([m4/ax_ruby_devel.m4])
++m4_include([m4/ax_prog_ruby_version.m4])
+diff --git a/m4/runlog.m4 b/m4/runlog.m4
+new file mode 100644
+index 0000000000..690efc3258
+--- /dev/null
++++ b/m4/runlog.m4
+@@ -0,0 +1,17 @@
++##                                                          -*- Autoconf -*-
++# Copyright (C) 2001-2018 Free Software Foundation, Inc.
++#
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
++
++# AM_RUN_LOG(COMMAND)
++# -------------------
++# Run COMMAND, save the exit status in ac_status, and log it.
++# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
++AC_DEFUN([AM_RUN_LOG],
++[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
++   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
++   ac_status=$?
++   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
++   (exit $ac_status); }])
+-- 
+2.35.5
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch
deleted file mode 100644
index 62a4869..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/files/0017-add-python.m4-for-detecting-python-3.10.patch
+++ /dev/null
@@ -1,427 +0,0 @@
-From f1418e1b46cb1cbd130935b76f5c78c577d1ad28 Mon Sep 17 00:00:00 2001
-From: Matthew Newton <matthew-git@newtoncomputing.co.uk>
-Date: Wed, 28 Sep 2022 23:49:32 +0100
-Subject: [PATCH] add python.m4 for detecting python > 3.10
-
-Upstream-Status: Backport
-[https://github.com/FreeRADIUS/freeradius-server/commit/86584d2753829756cc73aadce5d48f703af472b1]
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- src/modules/rlm_python3/configure.ac |   4 +
- src/modules/rlm_python3/m4/python.m4 | 363 +++++++++++++++++++++++++++
- src/modules/rlm_python3/m4/runlog.m4 |  17 ++
- 3 files changed, 384 insertions(+)
- create mode 100644 src/modules/rlm_python3/m4/python.m4
- create mode 100644 src/modules/rlm_python3/m4/runlog.m4
-
-diff --git a/src/modules/rlm_python3/configure.ac b/src/modules/rlm_python3/configure.ac
-index bc0e97f9ba..90f2116e73 100644
---- a/src/modules/rlm_python3/configure.ac
-+++ b/src/modules/rlm_python3/configure.ac
-@@ -3,6 +3,10 @@ AC_INIT(rlm_python3.c)
- AC_REVISION($Revision$)
- AC_DEFUN(modname,[rlm_python3])
- 
-+m4_include([ax_compare_version.m4])
-+m4_include([runlog.m4])
-+m4_include([python.m4])
-+
- AC_ARG_WITH([]modname,
- [  --with-[]modname              build []modname. (default=yes)])
- 
-diff --git a/src/modules/rlm_python3/m4/python.m4 b/src/modules/rlm_python3/m4/python.m4
-new file mode 100644
-index 0000000000..78ca7635ab
---- /dev/null
-+++ b/src/modules/rlm_python3/m4/python.m4
-@@ -0,0 +1,363 @@
-+## ------------------------                                 -*- Autoconf -*-
-+## Python file handling
-+## From Andrew Dalke
-+## Updated by James Henstridge and other contributors.
-+## ------------------------
-+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
-+#
-+# This file is free software; the Free Software Foundation
-+# gives unlimited permission to copy and/or distribute it,
-+# with or without modifications, as long as this notice is preserved.
-+
-+
-+# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-+# ---------------------------------------------------------------------------
-+# Adds support for distributing Python modules and packages.  To
-+# install modules, copy them to $(pythondir), using the python_PYTHON
-+# automake variable.  To install a package with the same name as the
-+# automake package, install to $(pkgpythondir), or use the
-+# pkgpython_PYTHON automake variable.
-+#
-+# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
-+# locations to install python extension modules (shared libraries).
-+# Another macro is required to find the appropriate flags to compile
-+# extension modules.
-+#
-+# If your package is configured with a different prefix to python,
-+# users will have to add the install directory to the PYTHONPATH
-+# environment variable, or create a .pth file (see the python
-+# documentation for details).
-+#
-+# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
-+# cause an error if the version of python installed on the system
-+# doesn't meet the requirement.  MINIMUM-VERSION should consist of
-+# numbers and dots only.
-+AC_DEFUN([AM_PATH_PYTHON],
-+ [
-+  dnl Find a Python interpreter.  Python versions prior to 2.0 are not
-+  dnl supported. (2.0 was released on October 16, 2000).
-+  m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
-+[python python2 python3 dnl
-+ python3.11 python3.10 dnl
-+ python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl
-+ python3.2 python3.1 python3.0 dnl
-+ python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl
-+ python2.0])
-+
-+  AC_ARG_VAR([PYTHON], [the Python interpreter])
-+
-+  m4_if([$1],[],[
-+    dnl No version check is needed.
-+    # Find any Python interpreter.
-+    if test -z "$PYTHON"; then
-+      AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
-+    fi
-+    am_display_PYTHON=python
-+  ], [
-+    dnl A version check is needed.
-+    if test -n "$PYTHON"; then
-+      # If the user set $PYTHON, use it and don't search something else.
-+      AC_MSG_CHECKING([whether $PYTHON version is >= $1])
-+      AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
-+			      [AC_MSG_RESULT([yes])],
-+			      [AC_MSG_RESULT([no])
-+			       AC_MSG_ERROR([Python interpreter is too old])])
-+      am_display_PYTHON=$PYTHON
-+    else
-+      # Otherwise, try each interpreter until we find one that satisfies
-+      # VERSION.
-+      AC_CACHE_CHECK([for a Python interpreter with version >= $1],
-+	[am_cv_pathless_PYTHON],[
-+	for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
-+	  test "$am_cv_pathless_PYTHON" = none && break
-+	  AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
-+	done])
-+      # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
-+      if test "$am_cv_pathless_PYTHON" = none; then
-+	PYTHON=:
-+      else
-+        AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
-+      fi
-+      am_display_PYTHON=$am_cv_pathless_PYTHON
-+    fi
-+  ])
-+
-+  if test "$PYTHON" = :; then
-+    dnl Run any user-specified action, or abort.
-+    m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
-+  else
-+
-+  dnl Query Python for its version number.  Although site.py simply uses
-+  dnl sys.version[:3], printing that failed with Python 3.10, since the
-+  dnl trailing zero was eliminated. So now we output just the major
-+  dnl and minor version numbers, as numbers. Apparently the tertiary
-+  dnl version is not of interest.
-+  dnl
-+  AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
-+    [am_cv_python_version=`$PYTHON -c "import sys; print ('%u.%u' % sys.version_info[[:2]])"`])
-+  AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
-+
-+  dnl At times, e.g., when building shared libraries, you may want
-+  dnl to know which OS platform Python thinks this is.
-+  dnl
-+  AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
-+    [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
-+  AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
-+
-+  dnl emacs-page
-+  dnl If --with-python-sys-prefix is given, use the values of sys.prefix
-+  dnl and sys.exec_prefix for the corresponding values of PYTHON_PREFIX
-+  dnl and PYTHON_EXEC_PREFIX. Otherwise, use the GNU ${prefix} and
-+  dnl ${exec_prefix} variables.
-+  dnl
-+  dnl The two are made distinct variables so they can be overridden if
-+  dnl need be, although general consensus is that you shouldn't need
-+  dnl this separation.
-+  dnl
-+  dnl Also allow directly setting the prefixes via configure options,
-+  dnl overriding any default.
-+  dnl
-+  if test "x$prefix" = xNONE; then
-+    am__usable_prefix=$ac_default_prefix
-+  else
-+    am__usable_prefix=$prefix
-+  fi
-+
-+  # Allow user to request using sys.* values from Python,
-+  # instead of the GNU $prefix values.
-+  AC_ARG_WITH([python-sys-prefix],
-+  [AS_HELP_STRING([--with-python-sys-prefix],
-+                  [use Python's sys.prefix and sys.exec_prefix values])],
-+  [am_use_python_sys=:],
-+  [am_use_python_sys=false])
-+
-+  # Allow user to override whatever the default Python prefix is.
-+  AC_ARG_WITH([python_prefix],
-+  [AS_HELP_STRING([--with-python_prefix],
-+                  [override the default PYTHON_PREFIX])],
-+  [am_python_prefix_subst=$withval
-+   am_cv_python_prefix=$withval
-+   AC_MSG_CHECKING([for explicit $am_display_PYTHON prefix])
-+   AC_MSG_RESULT([$am_cv_python_prefix])],
-+  [
-+   if $am_use_python_sys; then
-+     # using python sys.prefix value, not GNU
-+     AC_CACHE_CHECK([for python default $am_display_PYTHON prefix],
-+     [am_cv_python_prefix],
-+     [am_cv_python_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`])
-+
-+     dnl If sys.prefix is a subdir of $prefix, replace the literal value of
-+     dnl $prefix with a variable reference so it can be overridden.
-+     case $am_cv_python_prefix in
-+     $am__usable_prefix*)
-+       am__strip_prefix=`echo "$am__usable_prefix" | sed 's|.|.|g'`
-+       am_python_prefix_subst=`echo "$am_cv_python_prefix" | sed "s,^$am__strip_prefix,\\${prefix},"`
-+       ;;
-+     *)
-+       am_python_prefix_subst=$am_cv_python_prefix
-+       ;;
-+     esac
-+   else # using GNU prefix value, not python sys.prefix
-+     am_python_prefix_subst='${prefix}'
-+     am_python_prefix=$am_python_prefix_subst
-+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON prefix])
-+     AC_MSG_RESULT([$am_python_prefix])
-+   fi])
-+  # Substituting python_prefix_subst value.
-+  AC_SUBST([PYTHON_PREFIX], [$am_python_prefix_subst])
-+
-+  # emacs-page Now do it all over again for Python exec_prefix, but with yet
-+  # another conditional: fall back to regular prefix if that was specified.
-+  AC_ARG_WITH([python_exec_prefix],
-+  [AS_HELP_STRING([--with-python_exec_prefix],
-+                  [override the default PYTHON_EXEC_PREFIX])],
-+  [am_python_exec_prefix_subst=$withval
-+   am_cv_python_exec_prefix=$withval
-+   AC_MSG_CHECKING([for explicit $am_display_PYTHON exec_prefix])
-+   AC_MSG_RESULT([$am_cv_python_exec_prefix])],
-+  [
-+   # no explicit --with-python_exec_prefix, but if
-+   # --with-python_prefix was given, use its value for python_exec_prefix too.
-+   AS_IF([test -n "$with_python_prefix"],
-+   [am_python_exec_prefix_subst=$with_python_prefix
-+    am_cv_python_exec_prefix=$with_python_prefix
-+    AC_MSG_CHECKING([for python_prefix-given $am_display_PYTHON exec_prefix])
-+    AC_MSG_RESULT([$am_cv_python_exec_prefix])],
-+   [
-+    # Set am__usable_exec_prefix whether using GNU or Python values,
-+    # since we use that variable for pyexecdir.
-+    if test "x$exec_prefix" = xNONE; then
-+      am__usable_exec_prefix=$am__usable_prefix
-+    else
-+      am__usable_exec_prefix=$exec_prefix
-+    fi
-+    #
-+    if $am_use_python_sys; then # using python sys.exec_prefix, not GNU
-+      AC_CACHE_CHECK([for python default $am_display_PYTHON exec_prefix],
-+      [am_cv_python_exec_prefix],
-+      [am_cv_python_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`])
-+      dnl If sys.exec_prefix is a subdir of $exec_prefix, replace the
-+      dnl literal value of $exec_prefix with a variable reference so it can
-+      dnl be overridden.
-+      case $am_cv_python_exec_prefix in
-+      $am__usable_exec_prefix*)
-+        am__strip_prefix=`echo "$am__usable_exec_prefix" | sed 's|.|.|g'`
-+        am_python_exec_prefix_subst=`echo "$am_cv_python_exec_prefix" | sed "s,^$am__strip_prefix,\\${exec_prefix},"`
-+        ;;
-+      *)
-+        am_python_exec_prefix_subst=$am_cv_python_exec_prefix
-+        ;;
-+     esac
-+   else # using GNU $exec_prefix, not python sys.exec_prefix
-+     am_python_exec_prefix_subst='${exec_prefix}'
-+     am_python_exec_prefix=$am_python_exec_prefix_subst
-+     AC_MSG_CHECKING([for GNU default $am_display_PYTHON exec_prefix])
-+     AC_MSG_RESULT([$am_python_exec_prefix])
-+   fi])])
-+  # Substituting python_exec_prefix_subst.
-+  AC_SUBST([PYTHON_EXEC_PREFIX], [$am_python_exec_prefix_subst])
-+
-+  # Factor out some code duplication into this shell variable.
-+  am_python_setup_sysconfig="\
-+import sys
-+# Prefer sysconfig over distutils.sysconfig, for better compatibility
-+# with python 3.x.  See automake bug#10227.
-+try:
-+    import sysconfig
-+except ImportError:
-+    can_use_sysconfig = 0
-+else:
-+    can_use_sysconfig = 1
-+# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
-+# <https://github.com/pypa/virtualenv/issues/118>
-+try:
-+    from platform import python_implementation
-+    if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7':
-+        can_use_sysconfig = 0
-+except ImportError:
-+    pass"
-+
-+  dnl emacs-page Set up 4 directories:
-+
-+  dnl 1. pythondir: where to install python scripts.  This is the
-+  dnl    site-packages directory, not the python standard library
-+  dnl    directory like in previous automake betas.  This behavior
-+  dnl    is more consistent with lispdir.m4 for example.
-+  dnl Query distutils for this directory.
-+  dnl
-+  AC_CACHE_CHECK([for $am_display_PYTHON script directory (pythondir)],
-+  [am_cv_python_pythondir],
-+  [if test "x$am_cv_python_prefix" = x; then
-+     am_py_prefix=$am__usable_prefix
-+   else
-+     am_py_prefix=$am_cv_python_prefix
-+   fi
-+   am_cv_python_pythondir=`$PYTHON -c "
-+$am_python_setup_sysconfig
-+if can_use_sysconfig:
-+  if hasattr(sysconfig, 'get_default_scheme'):
-+    scheme = sysconfig.get_default_scheme()
-+  else:
-+    scheme = sysconfig._get_default_scheme()
-+  if scheme == 'posix_local':
-+    # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/
-+    scheme = 'posix_prefix'
-+  sitedir = sysconfig.get_path('purelib', scheme, vars={'base':'$am_py_prefix'})
-+else:
-+  from distutils import sysconfig
-+  sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
-+sys.stdout.write(sitedir)"`
-+   #
-+   case $am_cv_python_pythondir in
-+   $am_py_prefix*)
-+     am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
-+     am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,\\${PYTHON_PREFIX},"`
-+     ;;
-+   *)
-+     case $am_py_prefix in
-+       /usr|/System*) ;;
-+       *) am_cv_python_pythondir="\${PYTHON_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
-+          ;;
-+     esac
-+     ;;
-+   esac
-+  ])
-+  AC_SUBST([pythondir], [$am_cv_python_pythondir])
-+
-+  dnl 2. pkgpythondir: $PACKAGE directory under pythondir.  Was
-+  dnl    PYTHON_SITE_PACKAGE in previous betas, but this naming is
-+  dnl    more consistent with the rest of automake.
-+  dnl
-+  AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
-+
-+  dnl 3. pyexecdir: directory for installing python extension modules
-+  dnl    (shared libraries).
-+  dnl Query distutils for this directory.
-+  dnl
-+  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory (pyexecdir)],
-+  [am_cv_python_pyexecdir],
-+  [if test "x$am_cv_python_exec_prefix" = x; then
-+     am_py_exec_prefix=$am__usable_exec_prefix
-+   else
-+     am_py_exec_prefix=$am_cv_python_exec_prefix
-+   fi
-+   am_cv_python_pyexecdir=`$PYTHON -c "
-+$am_python_setup_sysconfig
-+if can_use_sysconfig:
-+  if hasattr(sysconfig, 'get_default_scheme'):
-+    scheme = sysconfig.get_default_scheme()
-+  else:
-+    scheme = sysconfig._get_default_scheme()
-+  if scheme == 'posix_local':
-+    # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/
-+    scheme = 'posix_prefix'
-+  sitedir = sysconfig.get_path('platlib', scheme, vars={'platbase':'$am_py_exec_prefix'})
-+else:
-+  from distutils import sysconfig
-+  sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_exec_prefix')
-+sys.stdout.write(sitedir)"`
-+   #
-+   case $am_cv_python_pyexecdir in
-+   $am_py_exec_prefix*)
-+     am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
-+     am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,\\${PYTHON_EXEC_PREFIX},"`
-+     ;;
-+   *)
-+     case $am_py_exec_prefix in
-+       /usr|/System*) ;;
-+       *) am_cv_python_pyexecdir="\${PYTHON_EXEC_PREFIX}/lib/python$PYTHON_VERSION/site-packages"
-+          ;;
-+     esac
-+     ;;
-+   esac
-+  ])
-+  AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
-+
-+  dnl 4. pkgpyexecdir: $(pyexecdir)/$(PACKAGE)
-+  dnl
-+  AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
-+
-+  dnl Run any user-specified action.
-+  $2
-+  fi
-+])
-+
-+
-+# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
-+# ---------------------------------------------------------------------------
-+# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
-+# Run ACTION-IF-FALSE otherwise.
-+# This test uses sys.hexversion instead of the string equivalent (first
-+# word of sys.version), in order to cope with versions such as 2.2c1.
-+# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
-+AC_DEFUN([AM_PYTHON_CHECK_VERSION],
-+ [prog="import sys
-+# split strings by '.' and convert to numeric.  Append some zeros
-+# because we need at least 4 digits for the hex conversion.
-+# map returns an iterator in Python 3.0 and a list in 2.x
-+minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
-+minverhex = 0
-+# xrange is not present in Python 3.0 and range returns an iterator
-+for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
-+sys.exit(sys.hexversion < minverhex)"
-+  AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
-diff --git a/src/modules/rlm_python3/m4/runlog.m4 b/src/modules/rlm_python3/m4/runlog.m4
-new file mode 100644
-index 0000000000..690efc3258
---- /dev/null
-+++ b/src/modules/rlm_python3/m4/runlog.m4
-@@ -0,0 +1,17 @@
-+##                                                          -*- Autoconf -*-
-+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
-+#
-+# This file is free software; the Free Software Foundation
-+# gives unlimited permission to copy and/or distribute it,
-+# with or without modifications, as long as this notice is preserved.
-+
-+# AM_RUN_LOG(COMMAND)
-+# -------------------
-+# Run COMMAND, save the exit status in ac_status, and log it.
-+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
-+AC_DEFUN([AM_RUN_LOG],
-+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
-+   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
-+   ac_status=$?
-+   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
-+   (exit $ac_status); }])
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.2.3.bb
similarity index 97%
rename from meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.2.3.bb
index e3730cf..7ea63a6 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.0.26.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/freeradius/freeradius_3.2.3.bb
@@ -13,7 +13,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a"
 DEPENDS = "openssl-native openssl libidn libtool libpcap libtalloc"
 
-SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.0.x;lfs=0;;protocol=https \
+SRC_URI = "git://github.com/FreeRADIUS/freeradius-server.git;branch=v3.2.x;lfs=0;;protocol=https \
     file://freeradius \
     file://volatiles.58_radiusd \
     file://radiusd.service \
@@ -34,12 +34,12 @@
     file://0014-Workaround-error-with-autoconf-2.7.patch \
     file://0015-bootstrap-check-commands-of-openssl-exist.patch \
     file://0016-version.c-don-t-print-build-flags.patch \
-    file://0017-add-python.m4-for-detecting-python-3.10.patch \
+    file://0017-Add-acinclude.m4-to-include-required-macros.patch \
 "
 
 raddbdir = "${sysconfdir}/${MLPREFIX}raddb"
 
-SRCREV = "d956f683d37ea40e7977cc5907361f3e6988a439"
+SRCREV = "db3d1924d9a2e8d37c43872932621f69cfdbb099"
 
 UPSTREAM_CHECK_GITTAGREGEX = "release_(?P<pver>\d+(\_\d+)+)"
 
@@ -69,6 +69,7 @@
         --without-rlm_opendirectory \
         --without-rlm_redis \
         --without-rlm_rediswho \
+        --without-rlm_cache_redis \
         --without-rlm_sql_db2 \
         --without-rlm_sql_firebird \
         --without-rlm_sql_freetds \
@@ -103,7 +104,7 @@
 PACKAGECONFIG[pcre] = "--with-pcre,--without-pcre,libpcre"
 PACKAGECONFIG[perl] = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl --with-rlm_perl,--without-rlm_perl,perl-native perl,perl"
 PACKAGECONFIG[python3] = "--with-rlm_python3 --with-rlm-python3-bin=${STAGING_BINDIR_NATIVE}/python3-native/python3 --with-rlm-python3-include-dir=${STAGING_INCDIR}/${PYTHON_DIR},--without-rlm_python3,python3-native python3"
-PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest,curl json-c"
+PACKAGECONFIG[rest] = "--with-rlm_rest,--without-rlm_rest --without-rlm_json,curl json-c"
 PACKAGECONFIG[ruby] = "--with-rlm_ruby,--without-rlm_ruby,ruby"
 PACKAGECONFIG[openssl] = "--with-openssl, --without-openssl"
 PACKAGECONFIG[rlm-eap-fast] = "--with-rlm_eap_fast, --without-rlm_eap_fast"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.17.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.18.0.bb
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.17.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.18.0.bb
index a42d014..75aaf52 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.17.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/libdnet/libdnet_1.18.0.bb
@@ -6,7 +6,7 @@
 
 SRC_URI = "git://github.com/ofalk/libdnet.git;nobranch=1;protocol=https"
 
-SRCREV = "912f7848bfff4ebc6d610f802a3144f84880cbe4"
+SRCREV = "3dfbe889b1f65077efe579da34fc1d6819fcb7f3"
 
 UPSTREAM_CHECK_GITTAGREGEX = "libdnet-(?P<pver>\d+(\.\d+)+)"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.44.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.46.0.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.44.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.46.0.bb
index 07a85b6..be30154 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.44.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.46.0.bb
@@ -42,7 +42,7 @@
 "
 SRC_URI:append:libc-musl = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' file://0001-linker-scripts-Do-not-export-_IO_stdin_used.patch', '', d)}"
 
-SRC_URI[sha256sum] = "edca09637d182f806b3b12d8c5623d7badbd73ccca1ae63be20d2f298779fb9f"
+SRC_URI[sha256sum] = "722649e25362693b334371473802a729b0ec9ee283375096905f868808e74068"
 
 S = "${WORKDIR}/NetworkManager-${PV}"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch
deleted file mode 100644
index 8b286df..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-From c0546e351f6d7ab50eb1de8cef1d0d167760fccc Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Mon, 27 Aug 2018 22:50:57 +0200
-Subject: [PATCH] bn_mul.h: fix x86 PIC inline ASM compilation with GCC < 5
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixes #1910
-
-With ebx added to the MULADDC_STOP clobber list to fix #1550, the inline
-assembly fails to build with GCC < 5 in PIC mode with the following error:
-
-include/mbedtls/bn_mul.h:46:13: error: PIC register clobbered by ‘ebx’ in ‘asm’
-
-This is because older GCC versions treated the x86 ebx register (which is
-used for the GOT) as a fixed reserved register when building as PIC.
-
-This is fixed by an improved register allocator in GCC 5+.  From the release
-notes:
-
-Register allocation improvements: Reuse of the PIC hard register, instead of
-using a fixed register, was implemented on x86/x86-64 targets.  This
-improves generated PIC code performance as more hard registers can be used.
-
-https://www.gnu.org/software/gcc/gcc-5/changes.html
-
-As a workaround, detect this situation and disable the inline assembly,
-similar to the MULADDC_CANNOT_USE_R7 logic.
-
-Upstream-Status: Backport [https://github.com/Mbed-TLS/mbedtls/commit/c0546e351f6d7ab50eb1de8cef1d0d167760fccc]
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- library/bn_mul.h | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
---- a/third_party/openthread/repo/third_party/mbedtls/repo/include/mbedtls/bn_mul.h
-+++ b/third_party/openthread/repo/third_party/mbedtls/repo/include/mbedtls/bn_mul.h
-@@ -95,12 +95,28 @@
-     ( !defined(__ARMCC_VERSION) || __ARMCC_VERSION >= 6000000 )
- 
- /*
-+ * GCC < 5.0 treated the x86 ebx (which is used for the GOT) as a
-+ * fixed reserved register when building as PIC, leading to errors
-+ * like: bn_mul.h:46:13: error: PIC register clobbered by 'ebx' in 'asm'
-+ *
-+ * This is fixed by an improved register allocator in GCC 5+. From the
-+ * release notes:
-+ * Register allocation improvements: Reuse of the PIC hard register,
-+ * instead of using a fixed register, was implemented on x86/x86-64
-+ * targets. This improves generated PIC code performance as more hard
-+ * registers can be used.
-+ */
-+#if defined(__GNUC__) && __GNUC__ < 5 && defined(__PIC__)
-+#define MULADDC_CANNOT_USE_EBX
-+#endif
-+
-+/*
-  * Disable use of the i386 assembly code below if option -O0, to disable all
-  * compiler optimisations, is passed, detected with __OPTIMIZE__
-  * This is done as the number of registers used in the assembly code doesn't
-  * work with the -O0 option.
-  */
--#if defined(__i386__) && defined(__OPTIMIZE__)
-+#if defined(__i386__) && defined(__OPTIMIZE__) && !defined(MULADDC_CANNOT_USE_EBX)
- 
- #define MULADDC_INIT                        \
-     asm(                                    \
---- a/third_party/openthread/repo/third_party/mbedtls/repo/CMakeLists.txt
-+++ b/third_party/openthread/repo/third_party/mbedtls/repo/CMakeLists.txt
-@@ -210,7 +210,7 @@ if(CMAKE_COMPILER_IS_GNU)
- endif(CMAKE_COMPILER_IS_GNU)
- 
- if(CMAKE_COMPILER_IS_CLANG)
--    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla -Wformat=2 -Wno-format-nonliteral")
-+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla -Wformat=2 -Wno-format-nonliteral -Wno-error=documentation")
-     set(CMAKE_C_FLAGS_RELEASE     "-O2")
-     set(CMAKE_C_FLAGS_DEBUG       "-O0 -g3")
-     set(CMAKE_C_FLAGS_COVERAGE    "-O0 -g3 --coverage")
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/mbedtls.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/mbedtls.patch
deleted file mode 100644
index 0824eb6..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/mbedtls.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-mbedtls: Disable documentation warning as error with clang
-
-There are shortcomings with doxygen info which clang-15+ flags, dont
-treat them as errors
-
-Remove unused variable
-
-Fixes
-library/bignum.c:1395:29: error: variable 't' set but not used [-Werror,-Wunused-but-set-variable]
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/third_party/openthread/repo/third_party/mbedtls/repo/library/bignum.c
-+++ b/third_party/openthread/repo/third_party/mbedtls/repo/library/bignum.c
-@@ -1392,7 +1392,7 @@ void mpi_mul_hlp( size_t i,
-                   mbedtls_mpi_uint *d,
-                   mbedtls_mpi_uint b )
- {
--    mbedtls_mpi_uint c = 0, t = 0;
-+    mbedtls_mpi_uint c = 0, t __attribute__ ((unused)) = 0;
- 
- #if defined(MULADDC_HUIT)
-     for( ; i >= 8; i -= 8 )
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/musl-fixes.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/musl-fixes.patch
new file mode 100644
index 0000000..279a607
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix/musl-fixes.patch
@@ -0,0 +1,26 @@
+Musl fixes, which should be applied upstream too
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/dbus/common/types.hpp
++++ b/src/dbus/common/types.hpp
+@@ -715,7 +715,7 @@ struct TrelInfo
+     };
+ 
+     bool               mEnabled;      ///< Whether TREL is enabled.
+-    u_int16_t          mNumTrelPeers; ///< The number of TREL peers.
++    uint16_t          mNumTrelPeers; ///< The number of TREL peers.
+     TrelPacketCounters mTrelCounters; ///< The TREL counters.
+ };
+ 
+--- a/third_party/openthread/repo/src/posix/platform/CMakeLists.txt
++++ b/third_party/openthread/repo/src/posix/platform/CMakeLists.txt
+@@ -172,7 +172,7 @@ target_link_libraries(openthread-posix
+ )
+ 
+ option(OT_TARGET_OPENWRT "enable openthread posix for OpenWRT" OFF)
+-if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND NOT OT_TARGET_OPENWRT)
++if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND NOT OT_TARGET_OPENWRT AND NOT OT_TARGET_MUSL)
+     target_compile_definitions(ot-posix-config
+         INTERFACE "OPENTHREAD_POSIX_CONFIG_NAT64_AIL_PREFIX_ENABLE=1"
+     )
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb
index 271340a..d7be1cd 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-br-posix_git.bb
@@ -11,15 +11,14 @@
                     file://third_party/openthread/repo/LICENSE;md5=543b6fe90ec5901a683320a36390c65f \
                     "
 DEPENDS = "autoconf-archive dbus readline avahi jsoncpp boost libnetfilter-queue protobuf protobuf-native"
-SRCREV = "4e937939ba6ce146fd98537cb63e0f4c41c8dbe1"
+SRCREV = "a35cc682305bb2201c314472adf06a4960536750"
 PV = "0.3.0+git"
 
 SRC_URI = "gitsm://github.com/openthread/ot-br-posix.git;protocol=https;branch=main \
            file://0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch \
            file://0001-cmake-Disable-nonnull-compare-warning-on-gcc.patch \
-           file://0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch \
-           file://mbedtls.patch \
            file://default-cxx-std.patch \
+           file://musl-fixes.patch \
            "
 
 S = "${WORKDIR}/git"
@@ -56,6 +55,7 @@
                  -DOT_DHCP6_CLIENT=ON \
                  -DOT_DHCP6_SERVER=ON \
                  "
+EXTRA_OECMAKE:append:libc-musl = " -DOT_TARGET_MUSL=ON"
 
 RDEPENDS:${PN} = "iproute2 ipset avahi-daemon"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch
deleted file mode 100644
index c9edb00..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From c0546e351f6d7ab50eb1de8cef1d0d167760fccc Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Mon, 27 Aug 2018 22:50:57 +0200
-Subject: [PATCH] bn_mul.h: fix x86 PIC inline ASM compilation with GCC < 5
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixes #1910
-
-With ebx added to the MULADDC_STOP clobber list to fix #1550, the inline
-assembly fails to build with GCC < 5 in PIC mode with the following error:
-
-include/mbedtls/bn_mul.h:46:13: error: PIC register clobbered by ‘ebx’ in ‘asm’
-
-This is because older GCC versions treated the x86 ebx register (which is
-used for the GOT) as a fixed reserved register when building as PIC.
-
-This is fixed by an improved register allocator in GCC 5+.  From the release
-notes:
-
-Register allocation improvements: Reuse of the PIC hard register, instead of
-using a fixed register, was implemented on x86/x86-64 targets.  This
-improves generated PIC code performance as more hard registers can be used.
-
-https://www.gnu.org/software/gcc/gcc-5/changes.html
-
-As a workaround, detect this situation and disable the inline assembly,
-similar to the MULADDC_CANNOT_USE_R7 logic.
-
-Upstream-Status: Backport [https://github.com/Mbed-TLS/mbedtls/commit/c0546e351f6d7ab50eb1de8cef1d0d167760fccc]
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- library/bn_mul.h | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
---- a/third_party/mbedtls/repo/include/mbedtls/bn_mul.h
-+++ b/third_party/mbedtls/repo/include/mbedtls/bn_mul.h
-@@ -55,12 +55,28 @@
-     ( !defined(__ARMCC_VERSION) || __ARMCC_VERSION >= 6000000 )
- 
- /*
-+ * GCC < 5.0 treated the x86 ebx (which is used for the GOT) as a
-+ * fixed reserved register when building as PIC, leading to errors
-+ * like: bn_mul.h:46:13: error: PIC register clobbered by 'ebx' in 'asm'
-+ *
-+ * This is fixed by an improved register allocator in GCC 5+. From the
-+ * release notes:
-+ * Register allocation improvements: Reuse of the PIC hard register,
-+ * instead of using a fixed register, was implemented on x86/x86-64
-+ * targets. This improves generated PIC code performance as more hard
-+ * registers can be used.
-+ */
-+#if defined(__GNUC__) && __GNUC__ < 5 && defined(__PIC__)
-+#define MULADDC_CANNOT_USE_EBX
-+#endif
-+
-+/*
-  * Disable use of the i386 assembly code below if option -O0, to disable all
-  * compiler optimisations, is passed, detected with __OPTIMIZE__
-  * This is done as the number of registers used in the assembly code doesn't
-  * work with the -O0 option.
-  */
--#if defined(__i386__) && defined(__OPTIMIZE__)
-+#if defined(__i386__) && defined(__OPTIMIZE__) && !defined(MULADDC_CANNOT_USE_EBX)
- 
- #define MULADDC_INIT                        \
-     asm(                                    \
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch
deleted file mode 100644
index ffaff48..0000000
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon/mbedtls.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-mbedtls: Disable documentation warning as error with clang
-
-There are shortcomings with doxygen info which clang-15+ flags, dont
-treat them as errors
-
-Remove unused variable
-
-Fixes
-library/bignum.c:1395:29: error: variable 't' set but not used [-Werror,-Wunused-but-set-variable]
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/third_party/mbedtls/repo/library/bignum.c
-+++ b/third_party/mbedtls/repo/library/bignum.c
-@@ -1544,7 +1544,7 @@ __attribute__ ((noinline))
- #endif
- void mpi_mul_hlp( size_t i, mbedtls_mpi_uint *s, mbedtls_mpi_uint *d, mbedtls_mpi_uint b )
- {
--    mbedtls_mpi_uint c = 0, t = 0;
-+    mbedtls_mpi_uint c = 0, t __attribute__ ((unused)) = 0;
- 
- #if defined(MULADDC_HUIT)
-     for( ; i >= 8; i -= 8 )
---- a/third_party/mbedtls/repo/CMakeLists.txt
-+++ b/third_party/mbedtls/repo/CMakeLists.txt
-@@ -192,7 +192,7 @@ if(CMAKE_COMPILER_IS_GNU)
- endif(CMAKE_COMPILER_IS_GNU)
- 
- if(CMAKE_COMPILER_IS_CLANG)
--    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla")
-+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wwrite-strings -Wpointer-arith -Wimplicit-fallthrough -Wshadow -Wvla -Wno-error=documentation")
-     set(CMAKE_C_FLAGS_RELEASE     "-O2")
-     set(CMAKE_C_FLAGS_DEBUG       "-O0 -g3")
-     set(CMAKE_C_FLAGS_COVERAGE    "-O0 -g3 --coverage")
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb
index 1583a3f..4456835 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openthread/ot-daemon_git.bb
@@ -5,15 +5,13 @@
 SECTION = "net"
 LICENSE = "BSD-3-Clause & Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=543b6fe90ec5901a683320a36390c65f \
-                    file://third_party/mbedtls/repo/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+                    file://third_party/mbedtls/repo/LICENSE;md5=379d5819937a6c2f1ef1630d341e026d \
                     "
 DEPENDS = "readline"
-SRCREV = "7dfde1f12923f03c9680be4d838b94b7a2320324"
+SRCREV = "90adc86d34e21a9e8f86d093c2190030042c4a59"
 PV = "0.1+git"
 
 SRC_URI = "git://github.com/openthread/openthread.git;protocol=https;branch=main \
-           file://0001-bn_mul.h-fix-x86-PIC-inline-ASM-compilation-with-GCC.patch \
-           file://mbedtls.patch \
            "
 
 S = "${WORKDIR}/git"
@@ -27,3 +25,5 @@
                  -DOT_PLATFORM=posix \
                  -DCMAKE_BUILD_TYPE=Release \
                  "
+
+EXTRA_OECMAKE:append:libc-musl = " -DOT_TARGET_OPENWRT=ON"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund/basename.patch b/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund/basename.patch
new file mode 100644
index 0000000..30bd9e5
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund/basename.patch
@@ -0,0 +1,19 @@
+include libgen.h for getting prototype for basename()
+Newer musl has remove prototype from string.h [1]
+which renders a compile error with newer compilers like
+clang 18+ about missing prototype.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/third_party/openthread/tools/spi-hdlc-adapter/spi-hdlc-adapter.c
++++ b/third_party/openthread/tools/spi-hdlc-adapter/spi-hdlc-adapter.c
+@@ -32,6 +32,7 @@
+ #endif
+ 
+ #include <assert.h>
++#include <libgen.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <stdint.h>
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund_git.bb b/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
index b75d686..6a84897 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/openthread/wpantund_git.bb
@@ -12,10 +12,11 @@
                     file://third_party/pt/LICENSE;md5=dcd598b69cad786beea33da7b1ae14b7 \
                     "
 DEPENDS = "autoconf-archive dbus readline boost"
-SRCREV = "0fb1f57e4224e2df3e630e146702bfcf63fbf07a"
+SRCREV = "8b5ce64c2f5bbf106cabfd015bcb3bdb2e0248d3"
 PV = "0.07.01+git"
 
 SRC_URI = "gitsm://github.com/openthread/wpantund.git;protocol=https;branch=master \
+           file://basename.patch \
            "
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.4.bb b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.5.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.4.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.5.bb
index 9e02afd..f5ef86d 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.4.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/samba/samba_4.19.5.bb
@@ -31,7 +31,7 @@
            file://samba-4.3.9-remove-getpwent_r.patch \
            "
 
-SRC_URI[sha256sum] = "4026d93b866db198c8ca1685b0f5d52793f65c6e63cb364163af661fdff0968c"
+SRC_URI[sha256sum] = "0e2405b4cec29d0459621f4340a1a74af771ec7cffedff43250cad7f1f87605e"
 
 UPSTREAM_CHECK_REGEX = "samba\-(?P<pver>4\.19(\.\d+)+).tar.gz"
 
@@ -122,6 +122,7 @@
                  --with-profiling-data \
                  --with-libiconv=${STAGING_DIR_HOST}${prefix} \
                  --with-pam --with-pammodulesdir=${base_libdir}/security \
+                 --pythondir=${PYTHON_SITEPACKAGES_DIR} \
                 "
 
 LDFLAGS += "-Wl,-z,relro,-z,now ${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.6.6.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.0.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.6.6.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.0.bb
index 4f7c6c3..47c14dd 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.6.6.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.7.0.bb
@@ -13,7 +13,7 @@
 RPROVIDES:${PN} = "cyassl"
 
 SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https;branch=master"
-SRCREV = "66596ad9e1d7efa8479656872cf09c9c1870a02e"
+SRCREV = "8970ff4c34034dbb3594943d11f8c9d4c5512bd5"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
index 941efed..2e3aa54 100644
--- a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
+++ b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
@@ -241,6 +241,7 @@
     vnstat \
     wpan-tools \
     ettercap \
+    libcpr \
 "
 RDEPENDS:packagegroup-meta-networking-support:remove:mipsarch = "memcached"
 RDEPENDS:packagegroup-meta-networking-support:remove:riscv64 = "memcached"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-include-libgen.h-for-basename.patch b/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000..4c8b4ef
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-include-libgen.h-for-basename.patch
@@ -0,0 +1,58 @@
+From 1651e7a35be8b3e2fa90ca57b073f6944664fa62 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 25 Mar 2024 12:04:03 -0700
+Subject: [PATCH] include libgen.h for basename
+
+basename prototype has been removed from string.h from latest musl [1]
+compilers e.g. clang-18 flags the absense of prototype as error. therefore
+include libgen.h for providing it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ daemon/automount.c    | 1 +
+ daemon/master.c       | 1 +
+ modules/lookup_file.c | 1 +
+ 3 files changed, 3 insertions(+)
+
+diff --git a/daemon/automount.c b/daemon/automount.c
+index 3d9461d..61b3478 100644
+--- a/daemon/automount.c
++++ b/daemon/automount.c
+@@ -21,6 +21,7 @@
+ 
+ #include <dirent.h>
+ #include <getopt.h>
++#include <libgen.h>
+ #include <signal.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+diff --git a/daemon/master.c b/daemon/master.c
+index f99359c..3f56499 100644
+--- a/daemon/master.c
++++ b/daemon/master.c
+@@ -21,6 +21,7 @@
+ #include <string.h>
+ #include <memory.h>
+ #include <limits.h>
++#include <libgen.h>
+ #include <signal.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+diff --git a/modules/lookup_file.c b/modules/lookup_file.c
+index 6afc558..82b1f28 100644
+--- a/modules/lookup_file.c
++++ b/modules/lookup_file.c
+@@ -15,6 +15,7 @@
+ 
+ #include <stdio.h>
+ #include <malloc.h>
++#include <libgen.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <time.h>
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.8.bb b/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.8.bb
index ca11f1a..e3f9777 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.8.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.8.bb
@@ -29,6 +29,7 @@
            file://mount_conflict.patch \
            file://0001-autofs-5.1.8-add-autofs_strerror_r-helper-for-musl.patch \
            file://0002-autofs-5.1.8-handle-innetgr-not-present-in-musl.patch \
+           file://0001-include-libgen.h-for-basename.patch \
            "
 SRC_URI[sha256sum] = "0bd401c56f0eb1ca6251344c3a3d70bface3eccf9c67117cd184422c4cace30c"
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.1.bb b/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.2.4.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.1.bb
rename to meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.2.4.bb
index 65bf91c..f0f7eb5 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.1.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/networkd-dispatcher/networkd-dispatcher_2.2.4.bb
@@ -11,7 +11,7 @@
 RDEPENDS:${PN} = "python3-pygobject python3-dbus"
 REQUIRED_DISTRO_FEATURES = "systemd gobject-introspection-data"
 
-SRCREV = "30e278e50749a60a930ceaa0971207c6436b8a0c"
+SRCREV = "dfd26d72793914eb3da910ef8c71de6d7c8942a2"
 SRC_URI = "git://gitlab.com/craftyguy/networkd-dispatcher;protocol=https;nobranch=1"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.5.bb b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.6.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.5.bb
rename to meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.6.bb
index 1c92c07..0e433bb 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.5.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.8.6.bb
@@ -28,7 +28,7 @@
            file://0005-makedefs-add-lnsl-and-lresolv-to-SYSLIBS-by-default.patch \
            "
 
-SRC_URI[sha256sum] = "f3e827a2b2e410359ad25d31341970434ab07e36139f9a2ef93981b0ec564c85"
+SRC_URI[sha256sum] = "4b6e17c826cc438cc3016a9c0a55ea7e77c6cbafba7dd57241d81b690b0e9774"
 
 UPSTREAM_CHECK_REGEX = "postfix\-(?P<pver>3\.8(\.\d+)+).tar.gz"
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch
deleted file mode 100644
index a478dcd..0000000
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch
+++ /dev/null
@@ -1,120 +0,0 @@
-From 38e7e90cc2075952c1b74f5fca826f9c6cadb2f0 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 22 Apr 2017 11:54:57 -0700
-Subject: [PATCH] configure: Check for -Wno-error=format-truncation compiler
- option
-
-If this option is supported by compiler then disable it ( gcc7+)
-Fixes
-client.c:834:23: error: '%s' directive output may be truncated writing up to 1023 bytes into a region of size 1010 [-Werror=format-truncation=]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
-Upstream-Status: Pending
-
- acinclude/ax_check_compile_flag.m4 | 74 ++++++++++++++++++++++++++++++
- configure.ac                       |  2 +
- 2 files changed, 76 insertions(+)
- create mode 100644 acinclude/ax_check_compile_flag.m4
-
-diff --git a/acinclude/ax_check_compile_flag.m4 b/acinclude/ax_check_compile_flag.m4
-new file mode 100644
-index 0000000..dcabb92
---- /dev/null
-+++ b/acinclude/ax_check_compile_flag.m4
-@@ -0,0 +1,74 @@
-+# ===========================================================================
-+#  https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
-+# ===========================================================================
-+#
-+# SYNOPSIS
-+#
-+#   AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
-+#
-+# DESCRIPTION
-+#
-+#   Check whether the given FLAG works with the current language's compiler
-+#   or gives an error.  (Warnings, however, are ignored)
-+#
-+#   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
-+#   success/failure.
-+#
-+#   If EXTRA-FLAGS is defined, it is added to the current language's default
-+#   flags (e.g. CFLAGS) when the check is done.  The check is thus made with
-+#   the flags: "CFLAGS EXTRA-FLAGS FLAG".  This can for example be used to
-+#   force the compiler to issue an error when a bad flag is given.
-+#
-+#   INPUT gives an alternative input source to AC_COMPILE_IFELSE.
-+#
-+#   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
-+#   macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
-+#
-+# LICENSE
-+#
-+#   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
-+#   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
-+#
-+#   This program is free software: you can redistribute it and/or modify it
-+#   under the terms of the GNU General Public License as published by the
-+#   Free Software Foundation, either version 3 of the License, or (at your
-+#   option) any later version.
-+#
-+#   This program is distributed in the hope that it will be useful, but
-+#   WITHOUT ANY WARRANTY; without even the implied warranty of
-+#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-+#   Public License for more details.
-+#
-+#   You should have received a copy of the GNU General Public License along
-+#   with this program. If not, see <https://www.gnu.org/licenses/>.
-+#
-+#   As a special exception, the respective Autoconf Macro's copyright owner
-+#   gives unlimited permission to copy, distribute and modify the configure
-+#   scripts that are the output of Autoconf when processing the Macro. You
-+#   need not follow the terms of the GNU General Public License when using
-+#   or distributing such scripts, even though portions of the text of the
-+#   Macro appear in them. The GNU General Public License (GPL) does govern
-+#   all other use of the material that constitutes the Autoconf Macro.
-+#
-+#   This special exception to the GPL applies to versions of the Autoconf
-+#   Macro released by the Autoconf Archive. When you make and distribute a
-+#   modified version of the Autoconf Macro, you may extend this special
-+#   exception to the GPL to apply to your modified version as well.
-+
-+#serial 5
-+
-+AC_DEFUN([AX_CHECK_COMPILE_FLAG],
-+[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
-+AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
-+AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
-+  ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
-+  _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
-+  AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
-+    [AS_VAR_SET(CACHEVAR,[yes])],
-+    [AS_VAR_SET(CACHEVAR,[no])])
-+  _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
-+AS_VAR_IF(CACHEVAR,yes,
-+  [m4_default([$2], :)],
-+  [m4_default([$3], :)])
-+AS_VAR_POPDEF([CACHEVAR])dnl
-+])dnl AX_CHECK_COMPILE_FLAGS
-diff --git a/configure.ac b/configure.ac
-index 2543676..4635474 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -28,6 +28,7 @@ m4_include([acinclude/pkg.m4])
- m4_include([acinclude/tdb.m4])
- m4_include([acinclude/lib-checks.m4])
- m4_include([acinclude/ax_cxx_compile_stdcxx.m4])
-+m4_include([acinclude/ax_check_compile_flag.m4])
- 
- HOSTCXX="$BUILD_CXX"
- PRESET_CFLAGS="$CFLAGS"
-@@ -59,6 +60,7 @@ AC_USE_SYSTEM_EXTENSIONS
- 
- AC_LANG([C++])
- 
-+AX_CHECK_COMPILE_FLAG([-Werror=format-truncation],[CFLAGS="$CFLAGS -Wno-error=format-truncation" CXXFLAGS="$CXXFLAGS -Wno-error=format-truncation"])
- # Clang 3.2 on some CPUs requires -march-native to detect correctly.
- # GCC 4.3+ can also produce faster executables when its used.
- # But building inside a virtual machine environment has been found to
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-squid-make-squid-conf-tests-run-on-target-device.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-squid-make-squid-conf-tests-run-on-target-device.patch
index 56c91de..ca1c16b 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-squid-make-squid-conf-tests-run-on-target-device.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/0002-squid-make-squid-conf-tests-run-on-target-device.patch
@@ -17,8 +17,6 @@
  test-suite/test-squid-conf.sh |  2 +-
  2 files changed, 9 insertions(+), 9 deletions(-)
 
-diff --git a/test-suite/Makefile.am b/test-suite/Makefile.am
-index 8becdbc..eccd49c 100644
 --- a/test-suite/Makefile.am
 +++ b/test-suite/Makefile.am
 @@ -21,7 +21,7 @@ LDADD = \
@@ -59,8 +57,6 @@
  
 -CLEANFILES += squid-conf-tests squid-stderr.log
 +CLEANFILES += squid-conf-tests /var/log/squid-stderr.log
-diff --git a/test-suite/test-squid-conf.sh b/test-suite/test-squid-conf.sh
-index 05fcaf3..a5a8a5a 100755
 --- a/test-suite/test-squid-conf.sh
 +++ b/test-suite/test-squid-conf.sh
 @@ -111,7 +111,7 @@ then
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Set-up-for-cross-compilation.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Set-up-for-cross-compilation.patch
index ae8706d..18bc78e 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Set-up-for-cross-compilation.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Set-up-for-cross-compilation.patch
@@ -16,8 +16,6 @@
  configure.ac | 1 +
  1 file changed, 1 insertion(+)
 
-diff --git a/configure.ac b/configure.ac
-index ca0bc79..c222851 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -29,6 +29,7 @@ m4_include([acinclude/tdb.m4])
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
index 5bb30bf..e0d002c 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/Skip-AC_RUN_IFELSE-tests.patch
@@ -16,8 +16,6 @@
  acinclude/lib-checks.m4 |  8 ++++++--
  2 files changed, 15 insertions(+), 3 deletions(-)
 
-diff --git a/acinclude/krb5.m4 b/acinclude/krb5.m4
-index 2c4e340..64648e3 100644
 --- a/acinclude/krb5.m4
 +++ b/acinclude/krb5.m4
 @@ -57,7 +57,15 @@ main(void)
@@ -37,11 +35,9 @@
      ])
      SQUID_STATE_ROLLBACK(squid_krb5_heimdal_test)
    ])
-diff --git a/acinclude/lib-checks.m4 b/acinclude/lib-checks.m4
-index 53847a8..850322a 100644
 --- a/acinclude/lib-checks.m4
 +++ b/acinclude/lib-checks.m4
-@@ -205,7 +205,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_CONST_SSL_METHOD],[
+@@ -205,7 +205,9 @@ AC_DEFUN([SQUID_CHECK_OPENSSL_CONST_SSL_
    [
     AC_MSG_RESULT([no])
    ],
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch b/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
index 732cf17..5df0060 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/files/squid-use-serial-tests-config-needed-by-ptest.patch
@@ -14,8 +14,6 @@
  configure.ac | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/configure.ac b/configure.ac
-index c7ae568..5e1454e 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -10,7 +10,7 @@ AC_PREREQ(2.61)
diff --git a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.7.bb b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.8.bb
similarity index 94%
rename from meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.7.bb
rename to meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.8.bb
index a4932cd..c8370ea 100644
--- a/meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.7.bb
+++ b/meta-openembedded/meta-networking/recipes-daemons/squid/squid_6.8.bb
@@ -12,20 +12,17 @@
 MAJ_VER = "${@oe.utils.trim_version("${PV}", 1)}"
 MIN_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
-SRC_URI = "http://www.squid-cache.org/Versions/v${MAJ_VER}/${BPN}-${PV}.tar.bz2 \
+SRC_URI = "http://www.squid-cache.org/Versions/v${MAJ_VER}/${BPN}-${PV}.tar.xz \
            file://Set-up-for-cross-compilation.patch \
            file://Skip-AC_RUN_IFELSE-tests.patch \
            file://squid-use-serial-tests-config-needed-by-ptest.patch \
            file://run-ptest \
            file://volatiles.03_squid \
-           file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \
            file://0002-squid-make-squid-conf-tests-run-on-target-device.patch \
            file://squid.nm \
            "
 
-SRC_URI:remove:toolchain-clang = "file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch"
-
-SRC_URI[sha256sum] = "7a09a0232026824c300b72c42cc5c0c431cbb65498f41d5dea48ef447ab8037e"
+SRC_URI[sha256sum] = "11cc5650b51809d99483ccfae24744a2e51cd16199f5ff0c917e84fce695870f"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://errors/COPYRIGHT;md5=d324bc1f9447d1d1588d75b22a678dc4 \
diff --git a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset/0001-ipset-Define-portable-basename-function.patch b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset/0001-ipset-Define-portable-basename-function.patch
new file mode 100644
index 0000000..a06bcac
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset/0001-ipset-Define-portable-basename-function.patch
@@ -0,0 +1,50 @@
+From 8c5c0a7a48af7652c50bc27a4efdd9cb4f7d95bd Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 24 Mar 2024 21:58:50 -0700
+Subject: [PATCH] ipset: Define portable basename function
+
+Newer version of musl have removed prototype for basename in string.h [1]
+which now makes it fail to compile with newer clang 18+ compiler therefore
+define own basename utility function and not depend on platform for it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/ipset.c | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/src/ipset.c b/src/ipset.c
+index 162f477..7b5d580 100644
+--- a/src/ipset.c
++++ b/src/ipset.c
+@@ -16,6 +16,16 @@
+ #include <libipset/ipset.h>		/* ipset library */
+ #include <libipset/xlate.h>		/* translate to nftables */
+ 
++/* basename is implemented differently across different C libraries. This
++ * implementation matches the one provided by the GNU libc, and does not
++ * modify its input parameter.
++ */
++static const char *ipset_basename(const char *path)
++{
++	const char *base = strrchr(path, '/');
++	return base ? base + 1 : path;
++}
++
+ int
+ main(int argc, char *argv[])
+ {
+@@ -32,7 +42,7 @@ main(int argc, char *argv[])
+ 		exit(1);
+ 	}
+ 
+-	if (!strcmp(basename(argv[0]), "ipset-translate")) {
++	if (!strcmp(ipset_basename(argv[0]), "ipset-translate")) {
+ 		ret = ipset_xlate_argv(ipset, argc, argv);
+ 	} else {
+ 		ret = ipset_parse_argv(ipset, argc, argv);
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.19.bb b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.21.bb
similarity index 70%
rename from meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.19.bb
rename to meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.21.bb
index bb4319f..c7ebdc1 100644
--- a/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.19.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/ipset/ipset_7.21.bb
@@ -9,8 +9,9 @@
 
 DEPENDS = "libtool libmnl"
 
-SRC_URI = "http://ftp.netfilter.org/pub/ipset/${BP}.tar.bz2"
-SRC_URI[sha256sum] = "9bc1fba48d65786e3e0b63dc6b669a866823d77840c6990c0c6b23078ec2c4d6"
+SRC_URI = "http://ftp.netfilter.org/pub/ipset/${BP}.tar.bz2 \
+           file://0001-ipset-Define-portable-basename-function.patch"
+SRC_URI[sha256sum] = "e2c6ce4fcf3acb3893ca5d35c86935f80ad76fc5ccae601185842df760e0bc69"
 
 inherit autotools pkgconfig module-base
 
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-Fix-sets-reset_command_0-for-current-ker.patch b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-Fix-sets-reset_command_0-for-current-ker.patch
new file mode 100644
index 0000000..164182b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-Fix-sets-reset_command_0-for-current-ker.patch
@@ -0,0 +1,53 @@
+From 7a6089a400a573b9a4fd92f29c00a6be7b8ef269 Mon Sep 17 00:00:00 2001
+From: Phil Sutter <phil@nwl.cc>
+Date: Thu, 2 Nov 2023 16:02:14 +0100
+Subject: [PATCH] tests: shell: Fix sets/reset_command_0 for current kernels
+
+Since kernel commit 4c90bba60c26 ("netfilter: nf_tables: do not refresh
+timeout when resetting element"), element reset won't touch expiry
+anymore. Invert the one check to make sure it remains unaltered, drop
+the other testing behaviour for per-element timeouts.
+
+Signed-off-by: Phil Sutter <phil@nwl.cc>
+
+Upstream-Status: Backport
+[https://git.netfilter.org/nftables/commit/?id=7a6089a400a573b9a4fd92f29c00a6be7b8ef269]
+
+Signed-off-by: William Lyu <William.Lyu@windriver.com>
+---
+ tests/shell/testcases/sets/reset_command_0 | 10 ++--------
+ 1 file changed, 2 insertions(+), 8 deletions(-)
+
+diff --git a/tests/shell/testcases/sets/reset_command_0 b/tests/shell/testcases/sets/reset_command_0
+index e663dac8..d38ddb3f 100755
+--- a/tests/shell/testcases/sets/reset_command_0
++++ b/tests/shell/testcases/sets/reset_command_0
+@@ -44,10 +44,10 @@ elem='element t s { 1.0.0.1 . udp . 53 }'
+ 	grep 'elements = ' | drop_seconds | uniq | wc -l) == 1 ]]
+ echo OK
+ 
+-echo -n "counters and expiry are reset: "
++echo -n "counters are reset, expiry left alone: "
+ NEW=$($NFT "get $elem")
+ grep -q 'counter packets 0 bytes 0' <<< "$NEW"
+-[[ $(expires_minutes <<< "$NEW") -gt 20 ]]
++[[ $(expires_minutes <<< "$NEW") -lt 20 ]]
+ echo OK
+ 
+ echo -n "get map elem matches reset map elem: "
+@@ -80,12 +80,6 @@ OUT=$($NFT reset map t m)
+ $DIFF -u <(echo "$EXP") <(echo "$OUT")
+ echo OK
+ 
+-echo -n "reset command respects per-element timeout: "
+-VAL=$($NFT get element t s '{ 2.0.0.2 . tcp . 22 }' | expires_minutes)
+-[[ $VAL -lt 15 ]]	# custom timeout applies
+-[[ $VAL -gt 10 ]]	# expires was reset
+-echo OK
+-
+ echo -n "remaining elements are reset: "
+ OUT=$($NFT list ruleset)
+ grep -q '2.0.0.2 . tcp . 22 counter packets 0 bytes 0' <<< "$OUT"
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-skip-secmark-tests-if-kernel-does-not-su.patch b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-skip-secmark-tests-if-kernel-does-not-su.patch
new file mode 100644
index 0000000..2a966ab
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/0001-tests-shell-skip-secmark-tests-if-kernel-does-not-su.patch
@@ -0,0 +1,46 @@
+From fff913c1eefbc84eb2d9c52038ef29fe881e9ee9 Mon Sep 17 00:00:00 2001
+From: Pablo Neira Ayuso <pablo@netfilter.org>
+Date: Tue, 21 Nov 2023 21:16:38 +0100
+Subject: [PATCH] tests: shell: skip secmark tests if kernel does not support
+ it
+
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+
+Upstream-Status: Backport
+[https://git.netfilter.org/nftables/commit/?id=fff913c1eefbc84eb2d9c52038ef29fe881e9ee9]
+
+Signed-off-by: William Lyu <William.Lyu@windriver.com>
+---
+ tests/shell/features/secmark.nft                | 7 +++++++
+ tests/shell/testcases/json/0005secmark_objref_0 | 1 +
+ 2 files changed, 8 insertions(+)
+ create mode 100644 tests/shell/features/secmark.nft
+
+diff --git a/tests/shell/features/secmark.nft b/tests/shell/features/secmark.nft
+new file mode 100644
+index 00000000..ccbb572f
+--- /dev/null
++++ b/tests/shell/features/secmark.nft
+@@ -0,0 +1,7 @@
++# fb961945457f ("netfilter: nf_tables: add SECMARK support")
++# v4.20-rc1~14^2~125^2~5
++table inet x {
++	secmark ssh_server {
++		"system_u:object_r:ssh_server_packet_t:s0"
++	}
++}
+diff --git a/tests/shell/testcases/json/0005secmark_objref_0 b/tests/shell/testcases/json/0005secmark_objref_0
+index 992d1b00..5c44f093 100755
+--- a/tests/shell/testcases/json/0005secmark_objref_0
++++ b/tests/shell/testcases/json/0005secmark_objref_0
+@@ -1,6 +1,7 @@
+ #!/bin/bash
+ 
+ # NFT_TEST_REQUIRES(NFT_TEST_HAVE_json)
++# NFT_TEST_REQUIRES(NFT_TEST_HAVE_secmark)
+ 
+ set -e
+ 
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/run-ptest b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/run-ptest
index 27d780a..363a1ee 100644
--- a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/run-ptest
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables/run-ptest
@@ -1,17 +1,17 @@
 #!/bin/sh
 
 NFTABLESLIB=@libdir@/nftables
-cd ${NFTABLESLIB}/ptest
+cd ${NFTABLESLIB}/ptest || exit 1
 
 LOG="${NFTABLESLIB}/ptest/nftables_ptest_$(date +%Y%m%d-%H%M%S).log"
-tests/shell/run-tests.sh -v | sed  -e '/OK/ s/^/PASS: / ; /FAILED/ s/^/FAIL: /' | sed "s,\x1B\[[0-9;]*[a-zA-Z],,g" | tee -a ${LOG}
+tests/shell/run-tests.sh -v | sed -E '/I: \[OK\]/ s/^/PASS: / ; /W: \[(CHK DUMP|VALGRIND|TAINTED|DUMP FAIL|FAILED)\]/ s/^/FAIL: /' | sed "s,\x1B\[[0-9;]*[a-zA-Z],,g" | tee -a "${LOG}"
 
-passed=`grep PASS: ${LOG}|wc -l`
-failed=`grep FAIL: ${LOG}|wc -l`
+passed=$(grep -c PASS: "${LOG}")
+failed=$(grep -c FAIL: "${LOG}")
 all=$((passed + failed))
 
 (   echo "=== Test Summary ==="
     echo "TOTAL: ${all}"
     echo "PASSED: ${passed}"
     echo "FAILED: ${failed}"
-) | tee -a ${LOG}
+) | tee -a "${LOG}"
diff --git a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_1.0.9.bb b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_1.0.9.bb
index 43d606f..ad99a80 100644
--- a/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_1.0.9.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/nftables/nftables_1.0.9.bb
@@ -1,4 +1,9 @@
 SUMMARY = "Netfilter Tables userspace utillites"
+DESCRIPTION = "nftables replaces the popular {ip,ip6,arp,eb}tables. \
+               This software provides an in-kernel packet classification framework \
+               that is based on a network-specific Virtual Machine (VM), \
+               nft, a userspace command line tool and libnftables, a high-level userspace library."
+HOMEPAGE = "https://netfilter.org/projects/nftables"
 SECTION = "net"
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=81ec33bb3e47b460fc993ac768c74b62"
@@ -7,6 +12,8 @@
            ${@bb.utils.contains('PACKAGECONFIG', 'mini-gmp', '', 'gmp', d)}"
 
 SRC_URI = "http://www.netfilter.org/projects/nftables/files/${BP}.tar.xz \
+           file://0001-tests-shell-Fix-sets-reset_command_0-for-current-ker.patch \
+           file://0001-tests-shell-skip-secmark-tests-if-kernel-does-not-su.patch \
            file://run-ptest \
           "
 SRC_URI[sha256sum] = "a3c304cd9ba061239ee0474f9afb938a9bb99d89b960246f66f0c3a0a85e14cd"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/frr/frr/0001-zebra-Mimic-GNU-basename-API-for-non-glibc-library-e.patch b/meta-openembedded/meta-networking/recipes-protocols/frr/frr/0001-zebra-Mimic-GNU-basename-API-for-non-glibc-library-e.patch
new file mode 100644
index 0000000..8c83d5c
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-protocols/frr/frr/0001-zebra-Mimic-GNU-basename-API-for-non-glibc-library-e.patch
@@ -0,0 +1,34 @@
+From 49aeccbec4bf620bb594999bbd4a9de669a3984c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 15 Mar 2024 14:34:06 -0700
+Subject: [PATCH] zebra: Mimic GNU basename() API for non-glibc library e.g.
+ musl musl only provides POSIX version of basename and it has also removed
+ providing it via string.h header [1] which now results in compile errors with
+ newer compilers e.g. clang-18
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Submitted [https://github.com/FRRouting/frr/pull/15561/]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ zebra/zebra_netns_notify.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/zebra/zebra_netns_notify.c b/zebra/zebra_netns_notify.c
+index 1bb1292e34..d55df2f62d 100644
+--- a/zebra/zebra_netns_notify.c
++++ b/zebra/zebra_netns_notify.c
+@@ -41,6 +41,10 @@
+ #define ZEBRA_NS_POLLING_INTERVAL_MSEC     1000
+ #define ZEBRA_NS_POLLING_MAX_RETRIES  200
+ 
++#if !defined(__GLIBC__)
++#define basename(src) (strrchr(src,'/') ? strrchr(src,'/')+1 : src)
++#endif
++
+ DEFINE_MTYPE_STATIC(ZEBRA, NETNS_MISC, "ZebraNetNSInfo");
+ static struct event *zebra_netns_notify_current;
+ 
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/frr/frr_9.1.bb b/meta-openembedded/meta-networking/recipes-protocols/frr/frr_9.1.bb
index 0926f84..eea6d62 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/frr/frr_9.1.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/frr/frr_9.1.bb
@@ -9,13 +9,13 @@
 LIC_FILES_CHKSUM = "file://doc/licenses/GPL-2.0;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
                     file://doc/licenses/LGPL-2.1;md5=4fbd65380cdd255951079008b364516c"
 
-PR = "r1"
 
 SRC_URI = "git://github.com/FRRouting/frr.git;protocol=https;branch=stable/9.1 \
            file://frr.pam \
+           file://0001-zebra-Mimic-GNU-basename-API-for-non-glibc-library-e.patch \
            "
 
-SRCREV = "312faf8008bb4f3b9e84b8e2758cd2cbdf5742b5"
+SRCREV = "ca2d6f0f1e000951224a18973cc1827f7f5215b5"
 
 UPSTREAM_CHECK_GITTAGREGEX = "frr-(?P<pver>\d+(\.\d+)+)$"
 
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/files/init b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/files/init
old mode 100755
new mode 100644
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Add-noreturn-attribute-to-netsnmp_pci_error.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Add-noreturn-attribute-to-netsnmp_pci_error.patch
deleted file mode 100644
index 6fbace7..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Add-noreturn-attribute-to-netsnmp_pci_error.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 5719f40db65a72624a0b0f08e546d12bf823bd1e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 18 Jan 2023 14:38:44 -0800
-Subject: [PATCH] Add noreturn attribute to netsnmp_pci_error()
-
-Fixes build with clang16
-| mibgroup/if-mib/data_access/interface_linux.c:152:23: error: incompatible function pointer types assigning to 'void (*)(char *, ...) __attribute__((noreturn))' from 'void (char *, ...)' [-Wincompatible-function-pointer-types]
-|     pci_access->error = netsnmp_pci_error;
-|                       ^ ~~~~~~~~~~~~~~~~~
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- agent/mibgroup/if-mib/data_access/interface_linux.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/agent/mibgroup/if-mib/data_access/interface_linux.c b/agent/mibgroup/if-mib/data_access/interface_linux.c
-index c6cc54e..12eb865 100644
---- a/agent/mibgroup/if-mib/data_access/interface_linux.c
-+++ b/agent/mibgroup/if-mib/data_access/interface_linux.c
-@@ -31,7 +31,7 @@ static struct pci_access *pci_access;
- /* Avoid letting libpci call exit(1) when no PCI bus is available. */
- static int do_longjmp =0;
- static jmp_buf err_buf;
--static void
-+__attribute__((noreturn))  static void
- netsnmp_pci_error(char *msg, ...)
- {
-     va_list args;
--- 
-2.39.1
-
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Android-Fix-the-build.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Android-Fix-the-build.patch
new file mode 100644
index 0000000..097d9f8
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-Android-Fix-the-build.patch
@@ -0,0 +1,83 @@
+From b4598662a39ff6974119c900ea56a4d020eac366 Mon Sep 17 00:00:00 2001
+From: Bart Van Assche <bvanassche@acm.org>
+Date: Wed, 20 Dec 2023 13:08:06 -0800
+Subject: [PATCH] Android: Fix the build
+
+Include <sys/select.h> for the fd_set type. In the configure script,
+check whether 'unsigned long' is the underlying type of fd_set. Use
+u_long instead of ulong.
+
+Upstream-Status: Backport [https://github.com/net-snmp/net-snmp/commit/b4598662a39ff6974119c900ea56a4d020eac366]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ agent/mibgroup/ip-mib/data_access/ipaddress_linux.c | 4 ++--
+ configure                                           | 2 +-
+ configure.d/config_project_types                    | 2 +-
+ include/net-snmp/types.h                            | 3 +++
+ 4 files changed, 7 insertions(+), 4 deletions(-)
+
+diff --git a/agent/mibgroup/ip-mib/data_access/ipaddress_linux.c b/agent/mibgroup/ip-mib/data_access/ipaddress_linux.c
+index b38beb57dd..232202d0f9 100644
+--- a/agent/mibgroup/ip-mib/data_access/ipaddress_linux.c
++++ b/agent/mibgroup/ip-mib/data_access/ipaddress_linux.c
+@@ -50,7 +50,7 @@ int _load_v6(netsnmp_container *container, int idx_offset);
+ int
+ netsnmp_access_ipaddress_extra_prefix_info(int index,
+                                            u_long *preferedlt,
+-                                           ulong *validlt,
++                                           u_long *validlt,
+                                            char *addr);
+ #endif
+ 
+@@ -523,7 +523,7 @@ out:
+ 
+ int
+ netsnmp_access_ipaddress_extra_prefix_info(int index, u_long *preferedlt,
+-                                           ulong *validlt, char *addr)
++                                           u_long *validlt, char *addr)
+ {
+ 
+     struct {
+diff --git a/configure b/configure
+index e7bf859bba..48abcbab11 100755
+--- a/configure
++++ b/configure
+@@ -31577,7 +31577,7 @@ CFLAGS="$CFLAGS -Werror"
+ 
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the type of fd_set::fds_bits" >&5
+ printf %s "checking for the type of fd_set::fds_bits... " >&6; }
+-for type in __fd_mask __int32_t long\ int unknown; do
++for type in __fd_mask __int32_t long 'unsigned long' unknown; do
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
+diff --git a/configure.d/config_project_types b/configure.d/config_project_types
+index a78e8ebb06..ac958d6712 100644
+--- a/configure.d/config_project_types
++++ b/configure.d/config_project_types
+@@ -66,7 +66,7 @@ netsnmp_save_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -Werror"
+ 
+ AC_MSG_CHECKING([for the type of fd_set::fds_bits])
+-for type in __fd_mask __int32_t long\ int unknown; do
++for type in __fd_mask __int32_t long 'unsigned long' unknown; do
+   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+ #include <sys/select.h>
+ #include <stddef.h>
+diff --git a/include/net-snmp/types.h b/include/net-snmp/types.h
+index b78f53ffd7..6228170e5f 100644
+--- a/include/net-snmp/types.h
++++ b/include/net-snmp/types.h
+@@ -23,6 +23,9 @@
+ #endif
+ 
+ #include <sys/types.h>
++#ifdef __ANDROID__
++#include <sys/select.h>
++#endif
+ 
+ #if defined(WIN32) && !defined(cygwin)
+ typedef HANDLE netsnmp_pid_t;
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-add-knob-whether-nlist.h-are-checked.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-net-snmp-add-knob-whether-nlist.h-are-checked.patch
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-add-knob-whether-nlist.h-are-checked.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-net-snmp-add-knob-whether-nlist.h-are-checked.patch
index 3152ce2..ea9dcca 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-add-knob-whether-nlist.h-are-checked.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-net-snmp-add-knob-whether-nlist.h-are-checked.patch
@@ -1,4 +1,4 @@
-From ad65b106d3cb3c6e595381be1c45a73c1ef6eb5e Mon Sep 17 00:00:00 2001
+From 787269b337e70f073e194c3b361eaf4d5f2291ce Mon Sep 17 00:00:00 2001
 From: Chong Lu <Chong.Lu@windriver.com>
 Date: Thu, 28 May 2020 09:46:34 -0500
 Subject: [PATCH] net-snmp: add knob whether nlist.h are checked
@@ -9,13 +9,12 @@
 Upstream-Status: Pending
 
 Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
-
 ---
  configure.d/config_os_headers | 2 ++
  1 file changed, 2 insertions(+)
 
 diff --git a/configure.d/config_os_headers b/configure.d/config_os_headers
-index b9c8c31..01c3376 100644
+index 584064e..c0688f8 100644
 --- a/configure.d/config_os_headers
 +++ b/configure.d/config_os_headers
 @@ -37,6 +37,7 @@ AC_CHECK_HEADERS([getopt.h   pthread.h  regex.h      ] dnl
@@ -34,3 +33,6 @@
  
  #  Library:
  AC_CHECK_HEADERS([crt_externs.h                        ] dnl
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/fix-libtool-finish.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0002-net-snmp-fix-libtool-finish.patch
similarity index 88%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/fix-libtool-finish.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0002-net-snmp-fix-libtool-finish.patch
index 409c1e0..e951537 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/fix-libtool-finish.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0002-net-snmp-fix-libtool-finish.patch
@@ -1,4 +1,4 @@
-From ab1d77c52e84746e75506a2870783806bc77f396 Mon Sep 17 00:00:00 2001
+From 5f002c3cc46ecf4d4a29571309f2cc0d3d34330f Mon Sep 17 00:00:00 2001
 From: "Roy.Li" <rongqing.li@windriver.com>
 Date: Fri, 16 Jan 2015 14:14:01 +0800
 Subject: [PATCH] net-snmp: fix "libtool --finish"
@@ -14,16 +14,15 @@
 Upstream-Status: Inappropriate [cross compile specific]
 
 Signed-off-by: Roy.Li <rongqing.li@windriver.com>
-
 ---
  Makefile.top | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile.top b/Makefile.top
-index a962c54..1ba5607 100644
+index d1b3923..53e0392 100644
 --- a/Makefile.top
 +++ b/Makefile.top
-@@ -89,7 +89,7 @@ LIBREVISION = 0
+@@ -89,7 +89,7 @@ LIBREVISION = 1
  LIB_LD_CMD      = $(LIBTOOL) --mode=link $(LINKCC) $(CFLAGS) -rpath $(libdir) -version-info $(LIBCURRENT):$(LIBREVISION):$(LIBAGE) @LD_NO_UNDEFINED@ -o
  LIB_EXTENSION   = la
  LIB_VERSION     =
@@ -32,3 +31,6 @@
  LINK		= $(LIBTOOL) --mode=link $(LINKCC)
  # RANLIB 	= @RANLIB@
  RANLIB		= :
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-testing-add-the-output-format-for-ptest.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0003-testing-add-the-output-format-for-ptest.patch
similarity index 92%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-testing-add-the-output-format-for-ptest.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0003-testing-add-the-output-format-for-ptest.patch
index 09ca532..ab54492 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-testing-add-the-output-format-for-ptest.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0003-testing-add-the-output-format-for-ptest.patch
@@ -1,4 +1,4 @@
-From 36a5656db7ea75dd15f35a6c1728937c6e2b901c Mon Sep 17 00:00:00 2001
+From 2a1a2b58af09c6c03026474f1fd0db7d36e977c7 Mon Sep 17 00:00:00 2001
 From: Jackie Huang <jackie.huang@windriver.com>
 Date: Wed, 14 Jan 2015 15:10:06 +0800
 Subject: [PATCH] testing: add the output format for ptest
@@ -6,7 +6,6 @@
 Upstream-Status: Inappropriate [OE specific]
 
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
-
 ---
  testing/RUNTESTS | 4 ++++
  1 file changed, 4 insertions(+)
@@ -33,3 +32,6 @@
  done
  
  if [ -f failed_tests ]; then
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-config_os_headers-Error-Fix.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-config_os_headers-Error-Fix.patch
similarity index 92%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-config_os_headers-Error-Fix.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-config_os_headers-Error-Fix.patch
index 5aea527..e2269bc 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-config_os_headers-Error-Fix.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-config_os_headers-Error-Fix.patch
@@ -1,4 +1,4 @@
-From e86d5fd52f19b85da0b7cce660c6e65ec4c0f9bb Mon Sep 17 00:00:00 2001
+From b1c941c20577578aa5ff3450d9d8d7a23c55d14a Mon Sep 17 00:00:00 2001
 From: Li xin <lixin.fnst@cn.fujitsu.com>
 Date: Fri, 21 Aug 2015 18:23:13 +0900
 Subject: [PATCH] config_os_headers: Error Fix
@@ -13,13 +13,12 @@
 Upstream-Status: Pending
 
 Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
-
 ---
  configure.d/config_os_headers | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure.d/config_os_headers b/configure.d/config_os_headers
-index 01c3376..6edd85f 100644
+index c0688f8..f68713c 100644
 --- a/configure.d/config_os_headers
 +++ b/configure.d/config_os_headers
 @@ -395,8 +395,8 @@ then
@@ -33,3 +32,6 @@
      AC_CHECK_HEADERS(pkg.h,
          NETSNMP_SEARCH_LIBS(pkg_init, pkg,
  	    AC_DEFINE(HAVE_LIBPKG, 1, [define if you have BSD pkg-ng])))
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0005-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0005-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch
index 6450c1c..7a6b354 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0005-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch
@@ -1,25 +1,23 @@
-From f4e1acd4f509dd26cf88da872bd5adcf884f4a5f Mon Sep 17 00:00:00 2001
+From c790411f9aa82064fea9bbf23b499fb6b7f22c4f Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Fri, 18 Sep 2015 00:28:45 -0400
 Subject: [PATCH] snmplib/keytools.c: Don't check for return from
-
  EVP_MD_CTX_init()
 
 EVP_MD_CTX_init() API returns void, it fixes errors with new compilers
 
 snmplib/keytools.c: In function 'generate_Ku': error: invalid use of void expression
 
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
-
----
 Upstream-Status: Pending
 
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
+---
  snmplib/keytools.c | 5 +----
  1 file changed, 1 insertion(+), 4 deletions(-)
 
 diff --git a/snmplib/keytools.c b/snmplib/keytools.c
-index 14a452a..fb1694b 100644
+index 388e655..5a66898 100644
 --- a/snmplib/keytools.c
 +++ b/snmplib/keytools.c
 @@ -183,10 +183,7 @@ generate_Ku(const oid * hashtype, u_int hashtype_len,
@@ -34,3 +32,6 @@
  #endif
      if (!EVP_DigestInit(ctx, hashfn)) {
          rval = SNMPERR_GENERR;
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-get_pid_from_inode-Include-limit.h.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0006-get_pid_from_inode-Include-limit.h.patch
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-get_pid_from_inode-Include-limit.h.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0006-get_pid_from_inode-Include-limit.h.patch
index a7881a8..6a0161a 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-get_pid_from_inode-Include-limit.h.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0006-get_pid_from_inode-Include-limit.h.patch
@@ -1,4 +1,4 @@
-From 8097734b27fd146f358a4edd0d1a0d28309bd9a4 Mon Sep 17 00:00:00 2001
+From 95868615a04b4a6f0dd5997c9726422828426116 Mon Sep 17 00:00:00 2001
 From: Khem Raj <raj.khem@gmail.com>
 Date: Fri, 22 Jul 2016 18:34:39 +0000
 Subject: [PATCH] get_pid_from_inode: Include limit.h
@@ -8,7 +8,6 @@
 Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
 ---
  agent/mibgroup/util_funcs/get_pid_from_inode.c | 1 +
  1 file changed, 1 insertion(+)
@@ -25,3 +24,6 @@
  #include <stdio.h>
  #ifdef HAVE_STDLIB_H
  #include <stdlib.h>
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-configure-fix-incorrect-variable.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0007-configure-fix-incorrect-variable.patch
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-configure-fix-incorrect-variable.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0007-configure-fix-incorrect-variable.patch
index 6e22418..5d394ee 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0004-configure-fix-incorrect-variable.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0007-configure-fix-incorrect-variable.patch
@@ -1,4 +1,4 @@
-From 6d655ba677563ac9d62d4d8eee59fdb39d486c02 Mon Sep 17 00:00:00 2001
+From 385fa343cf178ccfe2c9a9fd7795d0db3c959fdd Mon Sep 17 00:00:00 2001
 From: Wenlin Kang <wenlin.kang@windriver.com>
 Date: Wed, 24 May 2017 17:10:20 +0800
 Subject: [PATCH] configure: fix incorrect variable
@@ -8,13 +8,12 @@
 Upstream-Status: Inappropriate [cross compile specific]
 
 Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
-
 ---
  Makefile.in | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile.in b/Makefile.in
-index f1cbbf5..1545be3 100644
+index 1c1182e..f947b8c 100644
 --- a/Makefile.in
 +++ b/Makefile.in
 @@ -173,7 +173,7 @@ OTHERCLEANTODOS=perlclean @PYTHONCLEANTARGS@ cleanfeatures perlcleanfeatures pyt
@@ -26,3 +25,6 @@
          if test $$? != 0 ; then \
             exit 1 ; \
          fi
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-5.7.2-fix-engineBoots-value-on-SIGHUP.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0008-net-snmp-fix-engineBoots-value-on-SIGHUP.patch
similarity index 87%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-5.7.2-fix-engineBoots-value-on-SIGHUP.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0008-net-snmp-fix-engineBoots-value-on-SIGHUP.patch
index 35e93d6..a57c4c8 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-5.7.2-fix-engineBoots-value-on-SIGHUP.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0008-net-snmp-fix-engineBoots-value-on-SIGHUP.patch
@@ -1,4 +1,4 @@
-From 5ad4eab43c1ea63ff343bba64d576440e8783e75 Mon Sep 17 00:00:00 2001
+From b5cbe0953a7e7a3c77c7ec69dfe81254475f08c0 Mon Sep 17 00:00:00 2001
 From: Zheng Ruoqin <zhengrq.fnst@fujitsu.com>
 Date: Wed, 9 Jun 2021 15:47:30 +0900
 Subject: [PATCH] net snmp: fix engineBoots value on SIGHUP
@@ -8,14 +8,13 @@
 Signed-off-by: Marian Florea <marian.florea@windriver.com>
 Signed-off-by: Li Zhou <li.zhou@windriver.com>
 Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
-
 ---
  agent/snmpd.c    | 1 +
  snmplib/snmpv3.c | 4 ++--
  2 files changed, 3 insertions(+), 2 deletions(-)
 
 diff --git a/agent/snmpd.c b/agent/snmpd.c
-index 90de12d..1ccc4db 100644
+index fe31c87..d9f68dd 100644
 --- a/agent/snmpd.c
 +++ b/agent/snmpd.c
 @@ -1169,6 +1169,7 @@ snmpd_reconfig(void)
@@ -27,10 +26,10 @@
  #ifdef HAVE_SIGPROCMASK
      ret = sigprocmask(SIG_UNBLOCK, &set, NULL);
 diff --git a/snmplib/snmpv3.c b/snmplib/snmpv3.c
-index 7b1746b..4a17e0d 100644
+index be9256f..d17d2e3 100644
 --- a/snmplib/snmpv3.c
 +++ b/snmplib/snmpv3.c
-@@ -1059,9 +1059,9 @@ init_snmpv3_post_config(int majorid, int minorid, void *serverarg,
+@@ -1071,9 +1071,9 @@ init_snmpv3_post_config(int majorid, int minorid, void *serverarg,
      /*
       * if our engineID has changed at all, the boots record must be set to 1 
       */
@@ -42,3 +41,6 @@
          engineBoots = 1;
      }
  
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-fix-for-disable-des.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0009-net-snmp-fix-for-disable-des.patch
similarity index 80%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-fix-for-disable-des.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0009-net-snmp-fix-for-disable-des.patch
index c382c02..36a676f 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/net-snmp-fix-for-disable-des.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0009-net-snmp-fix-for-disable-des.patch
@@ -1,4 +1,4 @@
-From b1b9980853b1083f0c8b9f628f8b4c3a484d4f91 Mon Sep 17 00:00:00 2001
+From aa1f157c675da248ed186e020d17cb2528d0be12 Mon Sep 17 00:00:00 2001
 From: Jackie Huang <jackie.huang@windriver.com>
 Date: Thu, 22 Jun 2017 10:25:08 +0800
 Subject: [PATCH] net-snmp: fix for --disable-des
@@ -9,16 +9,15 @@
 Upstream-Status: Submitted [net-snmp-coders@lists.sourceforge.net]
 
 Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
-
 ---
  snmplib/scapi.c | 2 ++
  1 file changed, 2 insertions(+)
 
 diff --git a/snmplib/scapi.c b/snmplib/scapi.c
-index 54fdd5c..0f7e931 100644
+index ac77004..7545bfa 100644
 --- a/snmplib/scapi.c
 +++ b/snmplib/scapi.c
-@@ -85,7 +85,9 @@ netsnmp_feature_child_of(usm_scapi, usm_support);
+@@ -86,7 +86,9 @@ netsnmp_feature_child_of(usm_scapi, usm_support);
  #include <openssl/hmac.h>
  #include <openssl/evp.h>
  #include <openssl/rand.h>
@@ -28,3 +27,6 @@
  #ifdef HAVE_AES
  #include <openssl/aes.h>
  #endif
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/reproducibility-have-printcap.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0010-net-snmp-Reproducibility-Don-t-check-build-host-for.patch
similarity index 90%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/reproducibility-have-printcap.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0010-net-snmp-Reproducibility-Don-t-check-build-host-for.patch
index 5fbb411..246ce2b 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/reproducibility-have-printcap.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0010-net-snmp-Reproducibility-Don-t-check-build-host-for.patch
@@ -1,4 +1,4 @@
-From b923cd38e2503b86aedf66b767fd7f51c9f25645 Mon Sep 17 00:00:00 2001
+From a96140995d10660046146d9fa75faa5f7faabab0 Mon Sep 17 00:00:00 2001
 From: "douglas.royds" <douglas.royds@taitradio.com>
 Date: Wed, 21 Nov 2018 13:52:18 +1300
 Subject: [PATCH] net-snmp: Reproducibility: Don't check build host for
@@ -8,14 +8,13 @@
 ac_cv_file__etc_printcap instead. When cross-compiling, this variable should be
 set in the environment to "yes" or "no" as appropriate for the target platform.
 
----
 Upstream-Status: Pending
-
+---
  configure.d/config_os_misc4 | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure.d/config_os_misc4 b/configure.d/config_os_misc4
-index b6864d9..07ca922 100644
+index 4c445d6..099257f 100644
 --- a/configure.d/config_os_misc4
 +++ b/configure.d/config_os_misc4
 @@ -99,9 +99,9 @@ if test x$LPSTAT_PATH != x; then
@@ -30,3 +29,6 @@
  
  
  #       Check ps args
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-ac_add_search_path.m4-keep-consistent-between-32bit.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0011-ac_add_search_path.m4-keep-consistent-between-32bit-.patch
similarity index 94%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-ac_add_search_path.m4-keep-consistent-between-32bit.patch
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0011-ac_add_search_path.m4-keep-consistent-between-32bit-.patch
index 0eeddf7..1e845c4 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0001-ac_add_search_path.m4-keep-consistent-between-32bit.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0011-ac_add_search_path.m4-keep-consistent-between-32bit-.patch
@@ -1,4 +1,4 @@
-From 98c62e24fdd05d7e8bd8149840bad8eb0feb3fb1 Mon Sep 17 00:00:00 2001
+From 85a6c5017a2cd18a5a66afcb3f6a02276c101ad0 Mon Sep 17 00:00:00 2001
 From: Mingli Yu <mingli.yu@windriver.com>
 Date: Fri, 29 Jan 2021 08:49:15 +0000
 Subject: [PATCH] ac_add_search_path.m4: keep consistent between 32bit and
@@ -16,7 +16,6 @@
 Upstream-Status: Inappropriate [configuration specific]
 
 Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
-
 ---
  m4/ac_add_search_path.m4 | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)
@@ -36,3 +35,6 @@
       fi
       if test -d $1/include; then
  	CPPFLAGS="-I$1/include $CPPFLAGS"
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0012-Fix-configuration-of-NETSNMP_FD_MASK_TYPE.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0012-Fix-configuration-of-NETSNMP_FD_MASK_TYPE.patch
new file mode 100644
index 0000000..9d4b769
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/0012-Fix-configuration-of-NETSNMP_FD_MASK_TYPE.patch
@@ -0,0 +1,43 @@
+From 21ea0b9ce5cc9445f7ffd7a9020b816681e16284 Mon Sep 17 00:00:00 2001
+From: Adam Gajda <adgajda@users.noreply.github.com>
+Date: Mon, 2 Oct 2023 16:40:31 +0200
+Subject: [PATCH] Fix configuration of NETSNMP_FD_MASK_TYPE
+
+Upstream-Status: Backport
+[https://github.com/net-snmp/net-snmp/commit/af1b7f77975bbb2fcbdb3f005f8cb010d1d33cd3]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ configure                        | 2 +-
+ configure.d/config_project_types | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index 907d441..f4468c6 100755
+--- a/configure
++++ b/configure
+@@ -31638,7 +31638,7 @@ CFLAGS="$CFLAGS -Werror"
+ 
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for the type of fd_set::fds_bits" >&5
+ printf %s "checking for the type of fd_set::fds_bits... " >&6; }
+-for type in __fd_mask __int32_t unknown; do
++for type in __fd_mask __int32_t long\ int unknown; do
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
+diff --git a/configure.d/config_project_types b/configure.d/config_project_types
+index 1b4c66b..a78e8eb 100644
+--- a/configure.d/config_project_types
++++ b/configure.d/config_project_types
+@@ -66,7 +66,7 @@ netsnmp_save_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -Werror"
+ 
+ AC_MSG_CHECKING([for the type of fd_set::fds_bits])
+-for type in __fd_mask __int32_t unknown; do
++for type in __fd_mask __int32_t long\ int unknown; do
+   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+ #include <sys/select.h>
+ #include <stddef.h>
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/CVE-2022-44792-CVE-2022-44793.patch b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/CVE-2022-44792-CVE-2022-44793.patch
deleted file mode 100644
index b18d4dc..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/CVE-2022-44792-CVE-2022-44793.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-From d13302656d9ff0807c5defe18623adc947f43a2b Mon Sep 17 00:00:00 2001
-From: Narpat Mali <narpat.mali@windriver.com>
-Date: Wed, 8 Feb 2023 13:15:39 +0000
-Subject: [PATCH] agent: Disallow SET requests with any NULL varbind Merge pull
- request #490 from fenner/set-null
-
-fixes: #474 and #475
-
-CVE: CVE-2022-44792, CVE-2022-44793
-
-Upstream-Status: Backport [https://github.com/net-snmp/net-snmp/commit/be804106fd0771a7d05236cff36e199af077af57]
-
-Signed-off-by: Narpat Mali <narpat.mali@windriver.com>
----
- agent/snmp_agent.c                            | 32 +++++++++++++++++++
- apps/snmpset.c                                |  1 +
- .../default/T0142snmpv2csetnull_simple        | 31 ++++++++++++++++++
- 3 files changed, 64 insertions(+)
- create mode 100644 testing/fulltests/default/T0142snmpv2csetnull_simple
-
-diff --git a/agent/snmp_agent.c b/agent/snmp_agent.c
-index 867d0c1..3f678fe 100644
---- a/agent/snmp_agent.c
-+++ b/agent/snmp_agent.c
-@@ -3719,12 +3719,44 @@ netsnmp_handle_request(netsnmp_agent_session *asp, int status)
-     return 1;
- }
- 
-+static int
-+check_set_pdu_for_null_varbind(netsnmp_agent_session *asp)
-+{
-+    int i;
-+    netsnmp_variable_list *v = NULL;
-+
-+    for (i = 1, v = asp->pdu->variables; v != NULL; i++, v = v->next_variable) {
-+	if (v->type == ASN_NULL) {
-+	    /*
-+	     * Protect SET implementations that do not protect themselves
-+	     * against wrong type.
-+	     */
-+	    DEBUGMSGTL(("snmp_agent", "disallowing SET with NULL var for varbind %d\n", i));
-+	    asp->index = i;
-+	    return SNMP_ERR_WRONGTYPE;
-+	}
-+    }
-+    return SNMP_ERR_NOERROR;
-+}
-+
- int
- handle_pdu(netsnmp_agent_session *asp)
- {
-     int             status, inclusives = 0;
-     netsnmp_variable_list *v = NULL;
- 
-+#ifndef NETSNMP_NO_WRITE_SUPPORT
-+    /*
-+     * Check for ASN_NULL in SET request
-+     */
-+    if (asp->pdu->command == SNMP_MSG_SET) {
-+	status = check_set_pdu_for_null_varbind(asp);
-+	if (status != SNMP_ERR_NOERROR) {
-+	    return status;
-+	}
-+    }
-+#endif /* NETSNMP_NO_WRITE_SUPPORT */
-+
-     /*
-      * for illegal requests, mark all nodes as ASN_NULL 
-      */
-diff --git a/apps/snmpset.c b/apps/snmpset.c
-index 48e14bd..d542713 100644
---- a/apps/snmpset.c
-+++ b/apps/snmpset.c
-@@ -182,6 +182,7 @@ main(int argc, char *argv[])
-             case 'x':
-             case 'd':
-             case 'b':
-+            case 'n': /* undocumented */
- #ifdef NETSNMP_WITH_OPAQUE_SPECIAL_TYPES
-             case 'I':
-             case 'U':
-diff --git a/testing/fulltests/default/T0142snmpv2csetnull_simple b/testing/fulltests/default/T0142snmpv2csetnull_simple
-new file mode 100644
-index 0000000..0f1b8f3
---- /dev/null
-+++ b/testing/fulltests/default/T0142snmpv2csetnull_simple
-@@ -0,0 +1,31 @@
-+#!/bin/sh
-+
-+. ../support/simple_eval_tools.sh
-+
-+HEADER SNMPv2c set of system.sysContact.0 with NULL varbind
-+
-+SKIPIF NETSNMP_DISABLE_SET_SUPPORT
-+SKIPIF NETSNMP_NO_WRITE_SUPPORT
-+SKIPIF NETSNMP_DISABLE_SNMPV2C
-+SKIPIFNOT USING_MIBII_SYSTEM_MIB_MODULE
-+
-+#
-+# Begin test
-+#
-+
-+# standard V2C configuration: testcomunnity
-+snmp_write_access='all'
-+. ./Sv2cconfig
-+STARTAGENT
-+
-+CAPTURE "snmpget -On $SNMP_FLAGS -c testcommunity -v 2c $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPD_PORT .1.3.6.1.2.1.1.4.0"
-+
-+CHECK ".1.3.6.1.2.1.1.4.0 = STRING:"
-+
-+CAPTURE "snmpset -On $SNMP_FLAGS -c testcommunity -v 2c $SNMP_TRANSPORT_SPEC:$SNMP_TEST_DEST$SNMP_SNMPD_PORT .1.3.6.1.2.1.1.4.0 n x"
-+
-+CHECK "Reason: wrongType"
-+
-+STOPAGENT
-+
-+FINISHED
--- 
-2.34.1
-
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/run-ptest b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp/run-ptest
old mode 100755
new mode 100644
diff --git a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.3.bb b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.4.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.3.bb
rename to meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.4.bb
index 6f1c114..395b02d 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.3.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/net-snmp/net-snmp_5.9.4.bb
@@ -14,22 +14,22 @@
            file://snmptrapd.conf \
            file://snmpd.service \
            file://snmptrapd.service \
-           file://net-snmp-add-knob-whether-nlist.h-are-checked.patch \
-           file://fix-libtool-finish.patch \
-           file://net-snmp-testing-add-the-output-format-for-ptest.patch \
            file://run-ptest \
-           file://0001-config_os_headers-Error-Fix.patch \
-           file://0001-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch \
-           file://0001-get_pid_from_inode-Include-limit.h.patch \
-           file://0004-configure-fix-incorrect-variable.patch \
-           file://net-snmp-5.7.2-fix-engineBoots-value-on-SIGHUP.patch \
-           file://net-snmp-fix-for-disable-des.patch \
-           file://reproducibility-have-printcap.patch \
-           file://0001-ac_add_search_path.m4-keep-consistent-between-32bit.patch \
-           file://0001-Add-noreturn-attribute-to-netsnmp_pci_error.patch \
-           file://CVE-2022-44792-CVE-2022-44793.patch \
-           "
-SRC_URI[sha256sum] = "2097f29b7e1bf3f1300b4bae52fa2308d0bb8d5d3998dbe02f9462a413a2ef0a"
+           file://0001-net-snmp-add-knob-whether-nlist.h-are-checked.patch \
+           file://0002-net-snmp-fix-libtool-finish.patch \
+           file://0003-testing-add-the-output-format-for-ptest.patch \
+           file://0004-config_os_headers-Error-Fix.patch \
+           file://0005-snmplib-keytools.c-Don-t-check-for-return-from-EVP_M.patch \
+           file://0006-get_pid_from_inode-Include-limit.h.patch \
+           file://0007-configure-fix-incorrect-variable.patch \
+           file://0008-net-snmp-fix-engineBoots-value-on-SIGHUP.patch \
+           file://0009-net-snmp-fix-for-disable-des.patch \
+           file://0010-net-snmp-Reproducibility-Don-t-check-build-host-for.patch \
+           file://0011-ac_add_search_path.m4-keep-consistent-between-32bit-.patch \
+           file://0012-Fix-configuration-of-NETSNMP_FD_MASK_TYPE.patch \
+           file://0001-Android-Fix-the-build.patch \
+          "
+SRC_URI[sha256sum] = "8b4de01391e74e3c7014beb43961a2d6d6fa03acc34280b9585f4930745b0544"
 
 UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/net-snmp/files/net-snmp/"
 UPSTREAM_CHECK_REGEX = "/net-snmp/(?P<pver>\d+(\.\d+)+)/"
@@ -152,6 +152,8 @@
         -e "s@^NSC_LDFLAGS=\"-L.* @NSC_LDFLAGS=\"-L\$\{libdir\} @g" \
         -i ${D}${bindir}/net-snmp-config
 
+    sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${bindir}/net-snmp-create-v3-user
+
     oe_multilib_header net-snmp/net-snmp-config.h
 
     if [ "${HAS_PERL}" = "1" ]; then
diff --git a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow.inc b/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow.inc
deleted file mode 100644
index 7b404f5..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow.inc
+++ /dev/null
@@ -1,60 +0,0 @@
-SUMMARY = "OpenFlow communications protocol"
-DESCRIPTION = "\
-Open standard that enables researchers to run experimental protocols in \
-contained networks.  OpenFlow is a communications interface between \
-control and forwarding planes of a software-defined networking architecture.\
-"
-HOMEPAGE = "http://www.openflow.org"
-
-SECTION = "net"
-LICENSE = "GPL-2.0-only"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=e870c934e2c3d6ccf085fd7cf0a1e2e2"
-
-SRC_URI = "git://github.com/mininet/openflow;protocol=https;branch=master"
-
-CVE_STATUS[CVE-2015-1611] = "not-applicable-config: Not referred to our implementation of openflow"
-CVE_STATUS[CVE-2015-1612] = "not-applicable-config: Not referred to our implementation of openflow"
-CVE_STATUS[CVE-2018-1078] = "cpe-incorrect: This CVE is not for this product but cve-check assumes it is \
-because two CPE collides when checking the NVD database"
-
-DEPENDS = "virtual/libc"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[openssl] = "--enable-ssl,--disable-ssl, openssl openssl-native, libssl"
-
-EXTRA_OECONF += " \
-                 KARCH=${TARGET_ARCH} \
-                 ${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'SSL_LIBS="-lssl -lcrypto"', '', d)} \
-                "
-
-S = "${WORKDIR}/git"
-
-inherit autotools-brokensep pkgconfig
-
-do_configure:prepend() {
-    ./boot.sh
-}
-
-do_install:append() {
-    # Remove /var/run as it is created on startup
-    rm -rf ${D}${localstatedir}/run
-
-    # /var/log/openflow needs to be created in runtime. Use rmdir to catch if
-    # upstream stops creating /var/log/openflow, or adds something else in
-    # /var/log.
-    rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/log
-    rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
-
-    # Create /var/log/openflow in runtime.
-    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
-        install -d ${D}${nonarch_libdir}/tmpfiles.d
-        echo "d ${localstatedir}/log/${BPN} - - - -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
-    fi
-    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
-        install -d ${D}${sysconfdir}/default/volatiles
-        echo "d root root 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
-    fi
-}
-
-FILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_1.0.bb b/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_1.0.bb
deleted file mode 100644
index a7e254d..0000000
--- a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_1.0.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-include ${BPN}.inc
-
-SRCREV = "5ccca75a69f99791659bcfbcf35353ab1921320a"
-PV = "1.0"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_git.bb b/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_git.bb
index c86c811..41bedcd 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_git.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/openflow/openflow_git.bb
@@ -1,11 +1,70 @@
-include ${BPN}.inc
+SUMMARY = "OpenFlow communications protocol"
+DESCRIPTION = "\
+Open standard that enables researchers to run experimental protocols in \
+contained networks.  OpenFlow is a communications interface between \
+control and forwarding planes of a software-defined networking architecture.\
+"
+HOMEPAGE = "http://www.openflow.org"
+
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=e870c934e2c3d6ccf085fd7cf0a1e2e2"
 
 SRCREV = "82ad07d997b0b2ee70e1b2c7e82fcc6d0ccf23ea"
+
 PV = "1.0+git"
 
-SRC_URI += "file://0001-Check-and-use-strlcpy-from-libc-before-defining-own.patch \
+SRC_URI = "git://github.com/mininet/openflow;protocol=https;branch=master \
+           file://0001-Check-and-use-strlcpy-from-libc-before-defining-own.patch \
            file://0002-lib-netdev-Adjust-header-include-sequence.patch \
            file://0001-generate-not-static-get_dh-functions.patch \
            file://0001-socket-util-Include-sys-stat.h-for-fchmod.patch \
            file://0001-Makefile.am-Specify-export-dynamic-directly-to-linke.patch \
-           "
+"
+CVE_STATUS[CVE-2015-1611] = "not-applicable-config: Not referred to our implementation of openflow"
+CVE_STATUS[CVE-2015-1612] = "not-applicable-config: Not referred to our implementation of openflow"
+CVE_STATUS[CVE-2018-1078] = "cpe-incorrect: This CVE is not for this product but cve-check assumes it is \
+because two CPE collides when checking the NVD database"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[openssl] = "--enable-ssl,--disable-ssl, openssl openssl-native, libssl"
+
+EXTRA_OECONF += " \
+                 KARCH=${TARGET_ARCH} \
+                 ${@bb.utils.contains('PACKAGECONFIG', 'openssl', 'SSL_LIBS="-lssl -lcrypto"', '', d)} \
+                "
+
+DEPENDS:append:libc-musl = " libexecinfo"
+LDFLAGS:append:libc-musl = " -lexecinfo"
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep pkgconfig
+
+do_configure:prepend() {
+    ./boot.sh
+}
+
+do_install:append() {
+    # Remove /var/run as it is created on startup
+    rm -rf ${D}${localstatedir}/run
+
+    # /var/log/openflow needs to be created in runtime. Use rmdir to catch if
+    # upstream stops creating /var/log/openflow, or adds something else in
+    # /var/log.
+    rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/log
+    rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
+
+    # Create /var/log/openflow in runtime.
+    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
+        install -d ${D}${nonarch_libdir}/tmpfiles.d
+        echo "d ${localstatedir}/log/${BPN} - - - -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
+    fi
+    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
+        install -d ${D}${sysconfdir}/default/volatiles
+        echo "d root root 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
+    fi
+}
+
+FILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/openlldp/files/0001-autotools-Add-option-to-disable-installation-of-syst.patch b/meta-openembedded/meta-networking/recipes-protocols/openlldp/files/0001-autotools-Add-option-to-disable-installation-of-syst.patch
index 98ecd38..b1d746f 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/openlldp/files/0001-autotools-Add-option-to-disable-installation-of-syst.patch
+++ b/meta-openembedded/meta-networking/recipes-protocols/openlldp/files/0001-autotools-Add-option-to-disable-installation-of-syst.patch
@@ -1,4 +1,4 @@
-From dc3f2250908587710f109c80ddf8a94f0bc40b82 Mon Sep 17 00:00:00 2001
+From 7147add9fedfb28909639ae419f995041d086266 Mon Sep 17 00:00:00 2001
 From: Jonathan Richardson <jonathan.richardson@broadcom.com>
 Date: Fri, 6 Apr 2018 10:49:04 -0700
 Subject: [PATCH] autotools: Add option to disable installation of systemd conf
@@ -23,10 +23,10 @@
  2 files changed, 11 insertions(+), 1 deletion(-)
 
 diff --git a/Makefile.am b/Makefile.am
-index 292c0fd..0fb9bb0 100644
+index 86174e9..e90e966 100644
 --- a/Makefile.am
 +++ b/Makefile.am
-@@ -138,8 +138,9 @@ install-data-hook:	installdirs-local
+@@ -141,8 +141,9 @@ install-data-hook:	installdirs-local
  pkgconfigdir = ${libdir}/pkgconfig
  pkgconfig_DATA = lldpad.pc liblldp_clif.pc
  
@@ -38,10 +38,10 @@
  bashcompletiondir = $(sysconfdir)/bash_completion.d
  dist_bashcompletion_DATA = contrib/bash_completion/lldpad contrib/bash_completion/lldptool
 diff --git a/configure.ac b/configure.ac
-index 0667446..f75f433 100644
+index fa2f3a0..1a038cd 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -95,6 +95,15 @@ AC_TYPE_UINT16_T
+@@ -132,6 +132,15 @@ AC_TYPE_UINT16_T
  AC_TYPE_UINT32_T
  AC_TYPE_UINT8_T
  
diff --git a/meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.0.bb b/meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.1.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.0.bb
rename to meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.1.bb
index 71d738d..010cd5a 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.0.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/openlldp/openlldp_1.1.1.bb
@@ -12,7 +12,7 @@
 
 DEPENDS = "libnl libconfig readline"
 
-SRCREV = "85e55837a81d710e5baa7da47f7ed0d205c8ede5"
+SRCREV = "f1dd9eb961fab06723d2bedb2f7e2b81e45ee9ab"
 PV .= "+git"
 SRC_URI = "git://github.com/intel/openlldp.git;protocol=https;branch=branch-1.1 \
            file://0001-Fix-musl-libc-build-issue.patch \
diff --git a/meta-openembedded/meta-networking/recipes-protocols/rp-pppoe/rp-pppoe_3.15.bb b/meta-openembedded/meta-networking/recipes-protocols/rp-pppoe/rp-pppoe_3.15.bb
index c19f7d8..4dfdb8f 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/rp-pppoe/rp-pppoe_3.15.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/rp-pppoe/rp-pppoe_3.15.bb
@@ -4,7 +4,6 @@
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://doc/LICENSE;md5=a194eaefae2be54ee3221339b10d0581"
 
-PR = "r11"
 
 SRC_URI = "https://dianne.skoll.ca/projects/rp-pppoe/download/OLD/rp-pppoe-${PV}.tar.gz \
            file://top-autoconf.patch \
diff --git a/meta-openembedded/meta-networking/recipes-protocols/usrsctp/usrsctp_git.bb b/meta-openembedded/meta-networking/recipes-protocols/usrsctp/usrsctp_git.bb
index 38fb46f..4c18c6a 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/usrsctp/usrsctp_git.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/usrsctp/usrsctp_git.bb
@@ -2,7 +2,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.md;md5=ffcf846341f3856d79a483eafa18e2a5"
 
-SRCREV = "a0cbf4681474fab1e89d9e9e2d5c3694fce50359"
+SRCREV = "848eca82f92273af9a79687a90343a2ebcf3481d"
 SRC_URI = "git://github.com/sctplab/usrsctp;protocol=https;branch=master \
           "
 
@@ -24,4 +24,4 @@
 
 EXTRA_OECONF += "--disable-debug"
 
-CVE_VERSION = "0.9.3.0"
+CVE_VERSION = "0.9.5.0"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/zeroconf/zeroconf_0.9.bb b/meta-openembedded/meta-networking/recipes-protocols/zeroconf/zeroconf_0.9.bb
index c53d1b8..61f6b79 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/zeroconf/zeroconf_0.9.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/zeroconf/zeroconf_0.9.bb
@@ -13,7 +13,6 @@
                     file://zeroconf.c;beginline=1;endline=13;md5=a5bada96e1e34b08eb7446b28e2630b2"
 SECTION = "net"
 
-PR = "r1"
 
 SRC_URI = "http://www.progsoc.org/~wildfire/zeroconf/download/${BPN}-${PV}.tar.gz \
            file://compilefix.patch \
diff --git a/meta-openembedded/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch b/meta-openembedded/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch
index 33b72e0..d0baceb 100755
--- a/meta-openembedded/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch
+++ b/meta-openembedded/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch
@@ -5,6 +5,8 @@
  file:net_dropmon.h
 
 Signed-off-by: chenheyun <chen_heyun@163.com>
+
+Upstream-Status: Pending
 ---
  src/main.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.37.bb b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb
similarity index 91%
rename from meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.37.bb
rename to meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb
index 4560ef8..587a479 100644
--- a/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.37.bb
+++ b/meta-openembedded/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb
@@ -12,7 +12,7 @@
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \
            "
-SRC_URI[sha256sum] = "4a182e5d893e9abe6ac37ae71e542651fce6d606234fc735c2aaae18657e69ea"
+SRC_URI[sha256sum] = "a6cb4ea863ac61d242ffb2db564a39123761578d3e40d71ce7b6f2905be609d9"
 
 inherit autotools gettext pkgconfig python3-dir python3native
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb b/meta-openembedded/meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb
new file mode 100644
index 0000000..93fdb78
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb
@@ -0,0 +1,24 @@
+SUMMARY = "Curl for People - C++ Requests"
+DESCRIPTION = "Curl for People C++ Requests is a simple wrapper around \
+    libcurl inspired by the excellent Python Requests project."
+HOMEPAGE = "https://docs.libcpr.org/"
+
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=08beaae5deae1c43c065592da8f38095"
+
+DEPENDS = "curl openssl"
+
+SRC_URI = "git://github.com/libcpr/cpr.git;protocol=https;branch=1.10.x"
+SRCREV = "3b15fa82ea74739b574d705fea44959b58142eb8"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+# building tests is currently using FetchContent for mongoose
+EXTRA_OECMAKE += "\
+    -DCPR_USE_SYSTEM_CURL=ON \
+    -DCPR_BUILD_TESTS=OFF \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch
index 45d847c..6c92beb 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch
@@ -24,13 +24,16 @@
 Rebase to 2.4.1
 Remove libaio option
 Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
+Rebase to 2.4.2
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
 ---
- lib/replace/wscript | 78 +++++++++++++++++++++++++++++++++------------
- wscript             |  7 +++-
- 2 files changed, 64 insertions(+), 21 deletions(-)
+ lib/replace/wscript | 100 ++++++++++++++++++++++++++++++--------------
+ wscript             |   7 +++-
+ 2 files changed, 75 insertions(+), 32 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 199e636..3593eaf 100644
+index 77e655b..2fd7dfb 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
 @@ -25,6 +25,34 @@ def options(opt):
@@ -112,7 +115,7 @@
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -443,20 +481,20 @@ def configure(conf):
+@@ -443,31 +481,31 @@ def configure(conf):
  
      strlcpy_in_bsd = False
  
@@ -121,6 +124,17 @@
 -        if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
 -                               checklibc=True):
 -            strlcpy_in_bsd = True
+-    elif conf.env.enable_fuzzing:
+-        # Just to complicate it more, some versions of Honggfuzz have
+-        # got strlcpy and strlcat in libc, but not in <string.h>
+-        # (unless it is there coincidentally, on a BSD). Therefore we
+-        # can't use CHECK_FUNCS alone to decide whether to add the
+-        # headers to replace.h.
+-        #
+-        # As this is only known to happen on a fuzzing compiler, we'll
+-        # skip the check when not in fuzzing mode.
+-        conf.CHECK_HEADERS('bsd/string.h')
+-
 -    if not conf.CHECK_FUNCS('getpeereid'):
 -        conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 -    if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
@@ -136,6 +150,17 @@
 +            if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
 +                checklibc=True):
 +                strlcpy_in_bsd = True
++        elif conf.env.enable_fuzzing:
++            # Just to complicate it more, some versions of Honggfuzz have
++            # got strlcpy and strlcat in libc, but not in <string.h>
++            # (unless it is there coincidentally, on a BSD). Therefore we
++            # can't use CHECK_FUNCS alone to decide whether to add the
++            # headers to replace.h.
++            #
++            # As this is only known to happen on a fuzzing compiler, we'll
++            # skip the check when not in fuzzing mode.
++            conf.CHECK_HEADERS('bsd/string.h')
++
 +        if not conf.CHECK_FUNCS('getpeereid'):
 +            conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 +        if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
@@ -148,7 +173,7 @@
      conf.CHECK_CODE('''
                  struct ucred cred;
 diff --git a/wscript b/wscript
-index 075f1ec..6b4f273 100644
+index 8b5e02d..b6e2614 100644
 --- a/wscript
 +++ b/wscript
 @@ -31,7 +31,12 @@ def options(opt):
@@ -166,5 +191,5 @@
  def configure(conf):
      conf.RECURSE('lib/replace')
 -- 
-2.25.1
+2.34.1
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.1.bb b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.1.bb
rename to meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb
index 92da03e..394c176 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb
@@ -14,7 +14,7 @@
            file://0002-Fix-pyext_PATTERN-for-cross-compilation.patch \
            file://run-ptest \
 "
-SRC_URI[sha256sum] = "410a547f08557007be0e88194f218868358edc0ab98c98ba8c167930db3d33f9"
+SRC_URI[sha256sum] = "85ecf9e465e20f98f9950a52e9a411e14320bc555fa257d87697b7e7a9b1d8a6"
 
 inherit waf-samba pkgconfig ptest
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch
index 477b1ce..5c811c4 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch
+++ b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch
@@ -21,13 +21,16 @@
 Rebase to 1.4.9
 Remove libaio option
 Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
+Rebase to 1.4.10
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
 ---
- lib/replace/wscript | 79 +++++++++++++++++++++++++++++++++------------
- wscript             |  6 ++++
- 2 files changed, 65 insertions(+), 20 deletions(-)
+ lib/replace/wscript | 101 ++++++++++++++++++++++++++++++--------------
+ wscript             |   6 +++
+ 2 files changed, 76 insertions(+), 31 deletions(-)
 
 diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 199e636..cb13b62 100644
+index 77e655b..e6d50b3 100644
 --- a/lib/replace/wscript
 +++ b/lib/replace/wscript
 @@ -25,6 +25,34 @@ def options(opt):
@@ -103,7 +106,7 @@
      conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
      conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
      conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
-@@ -443,20 +481,21 @@ def configure(conf):
+@@ -443,31 +481,32 @@ def configure(conf):
  
      strlcpy_in_bsd = False
  
@@ -112,6 +115,17 @@
 -        if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
 -                               checklibc=True):
 -            strlcpy_in_bsd = True
+-    elif conf.env.enable_fuzzing:
+-        # Just to complicate it more, some versions of Honggfuzz have
+-        # got strlcpy and strlcat in libc, but not in <string.h>
+-        # (unless it is there coincidentally, on a BSD). Therefore we
+-        # can't use CHECK_FUNCS alone to decide whether to add the
+-        # headers to replace.h.
+-        #
+-        # As this is only known to happen on a fuzzing compiler, we'll
+-        # skip the check when not in fuzzing mode.
+-        conf.CHECK_HEADERS('bsd/string.h')
+-
 -    if not conf.CHECK_FUNCS('getpeereid'):
 -        conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 -    if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
@@ -127,6 +141,17 @@
 +            if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
 +                                   checklibc=True):
 +                strlcpy_in_bsd = True
++        elif conf.env.enable_fuzzing:
++            # Just to complicate it more, some versions of Honggfuzz have
++            # got strlcpy and strlcat in libc, but not in <string.h>
++            # (unless it is there coincidentally, on a BSD). Therefore we
++            # can't use CHECK_FUNCS alone to decide whether to add the
++            # headers to replace.h.
++            #
++            # As this is only known to happen on a fuzzing compiler, we'll
++            # skip the check when not in fuzzing mode.
++            conf.CHECK_HEADERS('bsd/string.h')
++
 +        if not conf.CHECK_FUNCS('getpeereid'):
 +            conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h')
 +        if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'):
@@ -140,7 +165,7 @@
      conf.CHECK_CODE('''
                  struct ucred cred;
 diff --git a/wscript b/wscript
-index 5e6a928..5443b43 100644
+index 2c587fb..b2164b2 100644
 --- a/wscript
 +++ b/wscript
 @@ -69,6 +69,12 @@ def options(opt):
@@ -157,5 +182,5 @@
  def configure(conf):
      conf.env.disable_tdb_mutex_locking = getattr(Options.options,
 -- 
-2.25.1
+2.34.1
 
diff --git a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.9.bb b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.9.bb
rename to meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb
index 9367600..f23b157 100644
--- a/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.9.bb
+++ b/meta-openembedded/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb
@@ -15,7 +15,7 @@
            file://run-ptest \
 "
 
-SRC_URI[sha256sum] = "0ac226073e3a2db8648da7af744cb95f50766a52feeb001d558b2b321b74a765"
+SRC_URI[sha256sum] = "02338e33c16c21c9e29571cef523e76b2b708636254f6f30c6cf195d48c62daf"
 
 PACKAGECONFIG ??= "\
     ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
diff --git a/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb b/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
index 54a4ea0..fd36aad 100644
--- a/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
@@ -2,7 +2,6 @@
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 
-PR = "r3"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/netcat/netcat-${PV}.tar.bz2 \
            file://obsolete_autoconf_macros.patch \
diff --git a/meta-openembedded/meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch b/meta-openembedded/meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch
new file mode 100644
index 0000000..b188248
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch
@@ -0,0 +1,83 @@
+From af256680926e166ac21bc0f11172ea6c077a9b55 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 9 Mar 2024 10:40:48 -0800
+Subject: [PATCH] Adopt to new gnulib read_file/fread_file signature
+
+It now expects a flag parameter in latest gnulib
+see [1]
+
+[1] https://public-inbox.org/bug-gnulib/87tv01c1z2.fsf-ueno@gnu.org/
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/dutil_linux.c  | 4 ++--
+ src/dutil_posix.c  | 2 +-
+ src/ncftool.c      | 2 +-
+ src/ncftransform.c | 2 +-
+ 4 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/dutil_linux.c b/src/dutil_linux.c
+index 742153a..eb72eb2 100644
+--- a/src/dutil_linux.c
++++ b/src/dutil_linux.c
+@@ -1113,7 +1113,7 @@ static void add_link_info(struct netcf *ncf,
+ 
+     xasprintf(&path, "/sys/class/net/%s/operstate", ifname);
+     ERR_NOMEM(!path, ncf);
+-    state = read_file(path, &length);
++    state = read_file(path, 0, &length);
+     if (!state) {
+         /* missing operstate is *not* an error. It could be due to an
+          * alias interface, which has no entry in /sys/class/net at
+@@ -1132,7 +1132,7 @@ static void add_link_info(struct netcf *ncf,
+         FREE(path);
+         xasprintf(&path, "/sys/class/net/%s/speed", ifname);
+         ERR_NOMEM(path == NULL, ncf);
+-        speed = read_file(path, &length);
++        speed = read_file(path, 0, &length);
+         if (!speed && errno == EINVAL) {
+             /* attempts to read $ifname/speed result in EINVAL if the
+              * interface is ifconfiged down (which isn't exactly the
+diff --git a/src/dutil_posix.c b/src/dutil_posix.c
+index 1313514..b9884f0 100644
+--- a/src/dutil_posix.c
++++ b/src/dutil_posix.c
+@@ -211,7 +211,7 @@ int run_program(struct netcf *ncf, const char *const *argv, char **output)
+                        "Failed to create file stream for output while executing '%s': %s",
+                        argv_str, errbuf);
+ 
+-    *output = fread_file(outfile, &outlen);
++    *output = fread_file(outfile, 0, &outlen);
+     ERR_THROW_STRERROR(*output == NULL, ncf, EEXEC,
+                        "Error while reading output from execution of '%s': %s",
+                        argv_str, errbuf);
+diff --git a/src/ncftool.c b/src/ncftool.c
+index f1b5642..c878cb0 100644
+--- a/src/ncftool.c
++++ b/src/ncftool.c
+@@ -351,7 +351,7 @@ static int cmd_define(const struct command *cmd) {
+     struct netcf_if *nif = NULL;
+     int result = CMD_RES_ERR;
+ 
+-    xml = read_file(fname, &length);
++    xml = read_file(fname, 0, &length);
+     if (xml == NULL) {
+         fprintf(stderr, "Failed to read %s\n", fname);
+         goto done;
+diff --git a/src/ncftransform.c b/src/ncftransform.c
+index fbabfc3..4c9a56d 100644
+--- a/src/ncftransform.c
++++ b/src/ncftransform.c
+@@ -54,7 +54,7 @@ int main(int argc, char **argv) {
+     if (argc != 3 || (STRNEQ(argv[1], "get") && STRNEQ(argv[1], "put")))
+         die("Usage: ncftransform (put|get) FILE\n");
+ 
+-    in_xml = read_file(argv[2], &length);
++    in_xml = read_file(argv[2], 0, &length);
+     if (in_xml == NULL)
+         die("Failed to read %s\n", argv[2]);
+ 
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb b/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
index 59ce3e9..c68974f 100644
--- a/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
+++ b/meta-openembedded/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
@@ -10,7 +10,7 @@
 PV .= "+git"
 
 SRC_URI = "git://pagure.io/netcf.git;protocol=https;branch=master \
-"
+           file://0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch"
 
 UPSTREAM_CHECK_GITTAGREGEX = "release-(?P<pver>(\d+(\.\d+)+))"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.9.bb b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb
similarity index 94%
rename from meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.9.bb
rename to meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb
index 3af6b30..f8de78f 100644
--- a/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.9.bb
+++ b/meta-openembedded/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb
@@ -2,7 +2,7 @@
 HOMEPAGE = "https://openvpn.net/"
 SECTION = "net"
 LICENSE = "GPL-2.0-only"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4b34e946059f80dcfd811e8dd471b5ed"
+LIC_FILES_CHKSUM = "file://COPYING;md5=89196bacc47ed37a5b242a535661a049"
 DEPENDS = "lzo lz4 openssl iproute2 libcap-ng ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
 inherit autotools systemd update-rc.d pkgconfig
@@ -14,7 +14,7 @@
 
 UPSTREAM_CHECK_URI = "https://openvpn.net/community-downloads"
 
-SRC_URI[sha256sum] = "e08d147e15b4508dfcd1d6618a1f21f1495f9817a8dadc1eddf0532fa116d7e3"
+SRC_URI[sha256sum] = "1993bbb7b9edb430626eaa24573f881fd3df642f427fcb824b1aed1fca1bcc9b"
 
 CVE_STATUS[CVE-2020-27569] = "not-applicable-config: Applies only Aviatrix OpenVPN client, not openvpn"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch b/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000..a093e47
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch
@@ -0,0 +1,58 @@
+From ae6adc4c748e67919fdf8ae1d44c619ee104c271 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 25 Mar 2024 11:37:41 -0700
+Subject: [PATCH] include libgen.h for basename
+
+basename prototype has been removed from string.h from latest musl [1]
+compilers e.g. clang-18 flags the absense of prototype as error. therefore
+include libgen.h for providing it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Submitted [https://github.com/linux-rdma/rdma-core/pull/1443]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ kernel-boot/rdma_rename.c  | 1 +
+ librdmacm/examples/rping.c | 1 +
+ providers/mlx5/mlx5_vfio.c | 1 +
+ 3 files changed, 3 insertions(+)
+
+diff --git a/kernel-boot/rdma_rename.c b/kernel-boot/rdma_rename.c
+index 4af9e4a39..5193ac411 100644
+--- a/kernel-boot/rdma_rename.c
++++ b/kernel-boot/rdma_rename.c
+@@ -2,6 +2,7 @@
+ /* Copyright (c) 2019, Mellanox Technologies. All rights reserved. See COPYING file */
+ 
+ #define _GNU_SOURCE
++#include <libgen.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+diff --git a/librdmacm/examples/rping.c b/librdmacm/examples/rping.c
+index cc16ad910..0f1321458 100644
+--- a/librdmacm/examples/rping.c
++++ b/librdmacm/examples/rping.c
+@@ -33,6 +33,7 @@
+ #define _GNU_SOURCE
+ #include <endian.h>
+ #include <getopt.h>
++#include <libgen.h>
+ #include <stdlib.h>
+ #include <string.h>
+ #include <stdio.h>
+diff --git a/providers/mlx5/mlx5_vfio.c b/providers/mlx5/mlx5_vfio.c
+index cd0c41462..4d064b1fc 100644
+--- a/providers/mlx5/mlx5_vfio.c
++++ b/providers/mlx5/mlx5_vfio.c
+@@ -6,6 +6,7 @@
+ #define _GNU_SOURCE
+ #include <config.h>
+ 
++#include <libgen.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_50.0.bb b/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_50.0.bb
index d0f4fd4..ab4de22 100644
--- a/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_50.0.bb
+++ b/meta-openembedded/meta-networking/recipes-support/rdma-core/rdma-core_50.0.bb
@@ -6,7 +6,9 @@
 RDEPENDS:${PN} = "bash perl"
 
 SRC_URI = "git://github.com/linux-rdma/rdma-core.git;branch=master;protocol=https \
-           file://0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch"
+           file://0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch \
+           file://0001-include-libgen.h-for-basename.patch \
+"
 SRCREV = "bc6b4bc134532e952fe7f8efc251e1f89b912098"
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/sngrep/sngrep_1.8.0.bb b/meta-openembedded/meta-networking/recipes-support/sngrep/sngrep_1.8.0.bb
new file mode 100644
index 0000000..2824dde
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/sngrep/sngrep_1.8.0.bb
@@ -0,0 +1,37 @@
+SUMMARY = "Ncurses SIP Messages flow viewer"
+DESCRIPTION = "Tool for displaying SIP calls message flows from terminal"
+HOMEPAGE = "https://github.com/irontec/sngrep"
+BUGTRACKER = "https://github.com/irontec/sngrep/issues"
+SECTION = "console/network"
+LICENSE = "GPL-3.0-or-later & OpenSSL"
+LIC_FILES_CHKSUM = "\
+    file://LICENSE;md5=d32239bcb673463ab874e80d47fae504 \
+    file://LICENSE.OpenSSL;md5=e39170c41c6f83de36426dbf49a03632 \
+    file://README;beginline=100;endline=124;md5=758a88cf2b27572df05996a3810066b3 \
+"
+
+DEPENDS = "\
+    libpcap \
+    ncurses \
+"
+
+SRC_URI = "git://github.com/irontec/sngrep.git;protocol=https;branch=master"
+SRCREV = "f7b36df3b79617892958b67cb4ad9313c6ce72d2"
+
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+PACKAGECONFIG ?= "\
+    openssl \
+    ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
+    unicode \
+"
+
+PACKAGECONFIG[openssl] = "-DWITH_OPENSSL=ON,-DWITH_OPENSSL=OFF,openssl"
+PACKAGECONFIG[gnutls] = "-DWITH_GNUTLS=ON,-DWITH_GNUTLS=OFF,gnutls libgcrypt"
+PACKAGECONFIG[pcre] = "-DWITH_PCRE=OFF,-DWITH_PCRE=OFF,libpcre"
+PACKAGECONFIG[zlib] = "-DWITH_ZLIB=ON,-DWITH_ZLIB=OFF,zlib"
+PACKAGECONFIG[unicode] = "-DWITH_UNICODE=ON,-DWITH_UNICODE=OFF"
+PACKAGECONFIG[ipv6] = "-DUSE_IPV6=ON,-DUSE_IPV6=OFF"
+PACKAGECONFIG[eep] = "-DUSE_EEP=ON,-DUSE_EEP=OFF"
diff --git a/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch b/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000..094ba5a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch
@@ -0,0 +1,32 @@
+From b48840952ec9a68363bed960e98dd6c7aaa3acec Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 25 Mar 2024 11:55:59 -0700
+Subject: [PATCH] include libgen.h for basename
+
+basename prototype has been removed from string.h from latest musl [1]
+compilers e.g. clang-18 flags the absense of prototype as error. therefore
+include libgen.h for providing it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ssmtp.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ssmtp.c b/ssmtp.c
+index 0a719ac..4dedaf8 100644
+--- a/ssmtp.c
++++ b/ssmtp.c
+@@ -23,6 +23,7 @@
+ #include <signal.h>
+ #include <setjmp.h>
+ #include <string.h>
++#include <libgen.h>
+ #include <ctype.h>
+ #include <netdb.h>
+ #ifdef HAVE_SSL
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb b/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
index 05d2bb1..499a79d 100644
--- a/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
+++ b/meta-openembedded/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
@@ -8,6 +8,7 @@
            file://build-ouside_srcdir.patch \
            file://use-DESTDIR.patch \
            file://0001-ssmtp-Correct-the-null-pointer-assignment-to-char-po.patch \
+           file://0001-include-libgen.h-for-basename.patch \
            "
 
 SRC_URI[md5sum] = "65b4e0df4934a6cd08c506cabcbe584f"
diff --git a/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.13.bb b/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb
similarity index 98%
rename from meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.13.bb
rename to meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb
index 4523187..2e2da82 100644
--- a/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.13.bb
+++ b/meta-openembedded/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb
@@ -11,7 +11,7 @@
 SRC_URI = "https://download.strongswan.org/strongswan-${PV}.tar.bz2 \
           "
 
-SRC_URI[sha256sum] = "56e30effb578fd9426d8457e3b76c8c3728cd8a5589594b55649b2719308ba55"
+SRC_URI[sha256sum] = "728027ddda4cb34c67c4cec97d3ddb8c274edfbabdaeecf7e74693b54fc33678"
 
 UPSTREAM_CHECK_REGEX = "strongswan-(?P<pver>\d+(\.\d+)+)\.tar"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
index 0840cbb..82d3551 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
@@ -11,17 +11,16 @@
 library conditionaly.
 
 Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
 ---
  src/common.h   | 2 ++
  src/protocol.c | 6 +++---
  2 files changed, 5 insertions(+), 3 deletions(-)
 
 diff --git a/src/common.h b/src/common.h
-index bc37eb5..03ee3e5 100644
+index 2b4869f..180d31a 100644
 --- a/src/common.h
 +++ b/src/common.h
-@@ -486,7 +486,9 @@ extern char *sys_errlist[];
+@@ -492,7 +492,9 @@ extern char *sys_errlist[];
  #ifndef OPENSSL_NO_MD4
  #include <openssl/md4.h>
  #endif /* !defined(OPENSSL_NO_MD4) */
@@ -32,29 +31,29 @@
  #include <openssl/dh.h>
  #if OPENSSL_VERSION_NUMBER<0x10100000L
 diff --git a/src/protocol.c b/src/protocol.c
-index 804f115..d9b2b50 100644
+index cfe6d3b..3936aea 100644
 --- a/src/protocol.c
 +++ b/src/protocol.c
-@@ -66,7 +66,7 @@ NOEXPORT char *nntp_client(CLI *, SERVICE_OPTIONS *, const PHASE);
- NOEXPORT char *ldap_client(CLI *, SERVICE_OPTIONS *, const PHASE);
- NOEXPORT char *connect_server(CLI *, SERVICE_OPTIONS *, const PHASE);
- NOEXPORT char *connect_client(CLI *, SERVICE_OPTIONS *, const PHASE);
+@@ -81,7 +81,7 @@ NOEXPORT void ldap_client_middle(CLI *);
+ 
+ NOEXPORT void connect_server_early(CLI *);
+ NOEXPORT void connect_client_middle(CLI *);
 -#ifndef OPENSSL_NO_MD4
 +#if !defined(OPENSSL_NO_MD4) && !defined(OPENSSL_NO_DES)
- NOEXPORT void ntlm(CLI *, SERVICE_OPTIONS *);
+ NOEXPORT void ntlm(CLI *);
  NOEXPORT char *ntlm1(void);
  NOEXPORT char *ntlm3(char *, char *, char *, char *);
-@@ -1351,7 +1351,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
-     fd_printf(c, c->remote_fd.fd, "Host: %s", opt->protocol_host);
-     if(opt->protocol_username && opt->protocol_password) {
-         if(!strcasecmp(opt->protocol_authentication, "ntlm")) {
+@@ -1331,7 +1331,7 @@ NOEXPORT void connect_client_middle(CLI *c) {
+     fd_printf(c, c->remote_fd.fd, "Host: %s", c->opt->protocol_host);
+     if(c->opt->protocol_username && c->opt->protocol_password) {
+         if(!strcasecmp(c->opt->protocol_authentication, "ntlm")) {
 -#ifndef OPENSSL_NO_MD4
 +#if !defined(OPENSSL_NO_MD4) && !defined(OPENSSL_NO_DES)
-             ntlm(c, opt);
+             ntlm(c);
  #else
              s_log(LOG_ERR, "NTLM authentication is not available");
-@@ -1395,7 +1395,7 @@ NOEXPORT char *connect_client(CLI *c, SERVICE_OPTIONS *opt, const PHASE phase) {
-     return NULL;
+@@ -1374,7 +1374,7 @@ NOEXPORT void connect_client_middle(CLI *c) {
+     str_free(line);
  }
  
 -#ifndef OPENSSL_NO_MD4
@@ -62,3 +61,6 @@
  
  /*
   * NTLM code is based on the following documentation:
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.69.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.72.bb
similarity index 87%
rename from meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.69.bb
rename to meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.72.bb
index 8161529..6d21027 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.69.bb
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.72.bb
@@ -3,7 +3,7 @@
 HOMEPAGE = "https://www.stunnel.org/"
 SECTION = "net"
 LICENSE = "GPL-2.0-or-later"
-LIC_FILES_CHKSUM = "file://COPYING.md;md5=b4988f33f70b383b3011c4ede0a679ce"
+LIC_FILES_CHKSUM = "file://COPYING.md;md5=906ac034adaee9d093318e51b53453ca"
 
 DEPENDS = "autoconf-archive libnsl2 openssl"
 
@@ -11,7 +11,7 @@
            file://fix-openssl-no-des.patch \
 "
 
-SRC_URI[sha256sum] = "1ff7d9f30884c75b98c8a0a4e1534fa79adcada2322635e6787337b4e38fdb81"
+SRC_URI[sha256sum] = "3d532941281ae353319735144e4adb9ae489a10b7e309c58a48157f08f42e949"
 
 inherit autotools bash-completion pkgconfig
 
diff --git a/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch b/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch
new file mode 100644
index 0000000..08cb3b8
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch
@@ -0,0 +1,51 @@
+From 42f7bbc1ce4913fe2c0bc76293c5445d31690f5d Mon Sep 17 00:00:00 2001
+From: Chen Qi <Qi.Chen@windriver.com>
+Date: Thu, 7 Mar 2024 21:02:07 -0800
+Subject: [PATCH] configure.ac: do not run conftest in case of cross
+ compilation
+
+It'll give us nothing but error like below:
+
+  ./conftest: cannot execute binary file: Exec format error
+  ...
+  ./configure: line 23950: test: -eq: unary operator expected
+
+The version check only has effect on Apple systems. We'd better
+avoid error like above when cross compilation.
+
+Also, in case of cross compilation, instead of having the above
+Exec format error and resulting in unaligned_cv_fail to yes, set
+it directly to yes.
+
+Upstream-Status: Submitted [https://github.com/appneta/tcpreplay/pull/849]
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 387219de..15201601 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -928,7 +928,7 @@ cat >conftest.c <<EOF
+ EOF
+ ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LPCAPLIB \
+     conftest.c $LIBS >/dev/null 2>&1
+-if test -x conftest ; then
++if test -x conftest -a "$cross_compiling" != "yes"; then
+     full_libpcap_version=$(LD_LIBRARY_PATH="$LPCAP_LD_LIBRARY_PATH" ./conftest)
+     libpcap_version=$(echo "$full_libpcap_version" | ${CUT} -d' ' -f3)
+     pcap_version_ok=yes
+@@ -1709,7 +1709,7 @@ case "$host_os" in
+ EOF
+         ${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \
+             conftest.c $LIBS >/dev/null 2>&1
+-        if test ! -x conftest ; then
++        if test ! -x conftest -o "$cross_compiling" = "yes" ; then
+             dnl failed to compile for some reason
+             unaligned_cv_fail=yes
+         else
+-- 
+2.42.0
+
diff --git a/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb b/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb
index 53f17c9..26de40a 100644
--- a/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb
+++ b/meta-openembedded/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb
@@ -10,6 +10,7 @@
 SRC_URI = "https://github.com/appneta/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
     file://0001-libopts.m4-set-POSIX_SHELL-to-bin-sh.patch \
     file://0001-configure.ac-unify-search-dirs-for-pcap-and-add-lib3.patch \
+    file://0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch \
 "
 
 SRC_URI[sha256sum] = "44f18fb6d3470ecaf77a51b901a119dae16da5be4d4140ffbb2785e37ad6d4bf"
diff --git a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.3.bb b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
similarity index 97%
rename from meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.3.bb
rename to meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
index 28a3794..95db2ef 100644
--- a/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.3.bb
+++ b/meta-openembedded/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
@@ -17,7 +17,7 @@
 
 UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
 
-SRC_URI[sha256sum] = "958bd5996f543d91779b1a4e7e952dcd7b0245fe82194202c3333a8f78795811"
+SRC_URI[sha256sum] = "46bd0f4474337144b30816fb2d8f14e72a26d0391f24fe0b7b619acdcdad8c0c"
 
 PE = "1"