aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-support
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-support')
-rw-r--r--meta-networking/recipes-support/aoetools/aoetools/reproducible-build.patch14
-rw-r--r--meta-networking/recipes-support/aoetools/aoetools_36.bb5
-rw-r--r--meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch44
-rw-r--r--meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch77
-rw-r--r--meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch37
-rw-r--r--meta-networking/recipes-support/arptables/arptables_git.bb16
-rw-r--r--meta-networking/recipes-support/bmon/bmon_4.0.bb12
-rw-r--r--meta-networking/recipes-support/bridge-utils/bridge-utils/0001-include-missing-kernel-header.patch (renamed from meta-networking/recipes-support/bridge-utils/bridge-utils/kernel-headers.patch)6
-rw-r--r--meta-networking/recipes-support/bridge-utils/bridge-utils/0002-build-don-t-ignore-CFLAGS-from-environment.patch (renamed from meta-networking/recipes-support/bridge-utils/bridge-utils/0005-build-don-t-ignore-CFLAGS-from-environment.patch)4
-rw-r--r--meta-networking/recipes-support/bridge-utils/bridge-utils/0003-libbridge-Modifying-the-AR-to-cross-toolchain.patch (renamed from meta-networking/recipes-support/bridge-utils/bridge-utils/0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch)10
-rw-r--r--meta-networking/recipes-support/bridge-utils/bridge-utils/0004-cleanup-includes.patch149
-rw-r--r--meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.1.bb (renamed from meta-networking/recipes-support/bridge-utils/bridge-utils_1.6.bb)19
-rw-r--r--meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch112
-rw-r--r--meta-networking/recipes-support/c-ares/c-ares_1.15.0.bb26
-rw-r--r--meta-networking/recipes-support/celt051/celt051_git.bb8
-rw-r--r--meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch31
-rw-r--r--meta-networking/recipes-support/chrony/chrony/arm_eabi.patch104
-rw-r--r--meta-networking/recipes-support/chrony/chrony/chrony.conf7
-rw-r--r--meta-networking/recipes-support/chrony/chrony/chronyd2
-rw-r--r--meta-networking/recipes-support/chrony/chrony_4.5.bb (renamed from meta-networking/recipes-support/chrony/chrony_3.3.bb)54
-rw-r--r--meta-networking/recipes-support/cifs/cifs-utils_7.0.bb44
-rw-r--r--meta-networking/recipes-support/cifs/cifs-utils_git.bb37
-rw-r--r--meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch32
-rw-r--r--meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb11
-rw-r--r--meta-networking/recipes-support/cim-schema/cim-schema-exper_2.50.0.bb6
-rw-r--r--meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb13
-rw-r--r--meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE34
-rw-r--r--meta-networking/recipes-support/curlpp/curlpp/0001-curlpp-config.in-Remove-references-to-absolute-build.patch40
-rw-r--r--meta-networking/recipes-support/curlpp/curlpp_0.8.1.bb12
-rw-r--r--meta-networking/recipes-support/dnsmasq/dnsmasq.inc83
-rw-r--r--meta-networking/recipes-support/dnsmasq/dnsmasq/lua.patch30
-rw-r--r--meta-networking/recipes-support/dnsmasq/dnsmasq_2.80.bb8
-rw-r--r--meta-networking/recipes-support/dnsmasq/dnsmasq_2.90.bb129
-rw-r--r--meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolvconf.service2
-rw-r--r--meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf3
-rwxr-xr-xmeta-networking/recipes-support/dnsmasq/files/dnsmasq.conf2
-rw-r--r--meta-networking/recipes-support/dnsmasq/files/init2
-rw-r--r--meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb35
-rw-r--r--meta-networking/recipes-support/dovecot/dovecot/0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch101
-rw-r--r--meta-networking/recipes-support/dovecot/dovecot/0001-doveadm-Fix-parallel-build.patch38
-rw-r--r--meta-networking/recipes-support/dovecot/dovecot/0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch30
-rw-r--r--meta-networking/recipes-support/dovecot/dovecot/0001-not-check-pandoc.patch28
-rw-r--r--meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb (renamed from meta-networking/recipes-support/dovecot/dovecot_2.2.33.bb)51
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils/0001-configure.ac-Add-an-option-to-disable-host-udev-vers.patch55
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch43
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch201
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch33
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils_9.27.0.bb76
-rw-r--r--meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb63
-rw-r--r--meta-networking/recipes-support/drbd/drbd_9.2.1.bb (renamed from meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb)14
-rwxr-xr-xmeta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch30
-rw-r--r--meta-networking/recipes-support/dropwatch/dropwatch_1.5.4.bb20
-rw-r--r--meta-networking/recipes-support/esmtp/esmtp/0001-Fix-libESMTP-dependency-check.patch46
-rw-r--r--meta-networking/recipes-support/esmtp/esmtp_1.2.bb25
-rw-r--r--meta-networking/recipes-support/ettercap/ettercap/0001-sslstrip-Enhance-the-libcurl-version-check-to-consid.patch38
-rw-r--r--meta-networking/recipes-support/ettercap/ettercap_0.8.3.1.bb47
-rw-r--r--meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch1576
-rw-r--r--meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb21
-rw-r--r--meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb26
-rw-r--r--meta-networking/recipes-support/fping/fping_5.2.bb (renamed from meta-networking/recipes-support/fping/fping_3.5.bb)10
-rw-r--r--meta-networking/recipes-support/fwknop/fwknop/0001-Fix-compilation-with-GCC-s-fno-common-flag-fixes-305.patch27
-rw-r--r--meta-networking/recipes-support/fwknop/fwknop/0001-Use-pkg-config-to-find-gpgme.patch27
-rw-r--r--meta-networking/recipes-support/fwknop/fwknop/0001-configure.ac-Fix-missing-comma-in-AS_IF.patch29
-rw-r--r--meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb (renamed from meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb)27
-rw-r--r--meta-networking/recipes-support/geoip/geoip-perl_1.51.bb7
-rw-r--r--meta-networking/recipes-support/geoip/geoip_1.6.12.bb18
-rw-r--r--meta-networking/recipes-support/geoip/geoipupdate_2.5.0.bb6
-rw-r--r--meta-networking/recipes-support/htpdate/htpdate/0001-Make-environment-variables-assignments-to-be-weak.patch31
-rw-r--r--meta-networking/recipes-support/htpdate/htpdate/0001-Replace-ntp_adjtime-with-adjtimex.patch40
-rw-r--r--meta-networking/recipes-support/htpdate/htpdate_1.3.7.bb (renamed from meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb)22
-rw-r--r--meta-networking/recipes-support/http-parser/http-parser_2.9.4.bb31
-rw-r--r--meta-networking/recipes-support/ifenslave/ifenslave_2.14.bb (renamed from meta-networking/recipes-support/ifenslave/ifenslave_2.9.bb)13
-rw-r--r--meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch17
-rw-r--r--meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch18
-rw-r--r--meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch26
-rw-r--r--meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch18
-rw-r--r--meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb17
-rw-r--r--meta-networking/recipes-support/iftop/iftop/iftop-1.0-gcc10.patch68
-rw-r--r--meta-networking/recipes-support/iftop/iftop_1.0pre4.bb6
-rw-r--r--meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch31
-rw-r--r--meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb21
-rw-r--r--meta-networking/recipes-support/ipcalc/ipcalc_1.0.3.bb14
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch86
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch115
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch249
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch1086
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch33
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch87
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch30
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch13
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch36
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch207
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch23
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch220
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch26
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch61
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf8
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample40
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service11
-rw-r--r--meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb98
-rw-r--r--meta-networking/recipes-support/ipvsadm/ipvsadm/0001-Add-CCFLAGS-to-cflags.patch36
-rw-r--r--meta-networking/recipes-support/ipvsadm/ipvsadm/0001-libipvs-Include-missing-sys-types.h.patch28
-rw-r--r--meta-networking/recipes-support/ipvsadm/ipvsadm_1.31.bb (renamed from meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb)20
-rw-r--r--meta-networking/recipes-support/libconfuse/libconfuse_3.3.bb14
-rw-r--r--meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb24
-rw-r--r--meta-networking/recipes-support/libesmtp/libesmtp/0001-Add-build-option-for-NTLM-support.patch85
-rw-r--r--meta-networking/recipes-support/libesmtp/libesmtp/include-topdir.patch48
-rw-r--r--meta-networking/recipes-support/libesmtp/libesmtp/snprintf.patch19
-rw-r--r--meta-networking/recipes-support/libesmtp/libesmtp_1.0.6.bb38
-rw-r--r--meta-networking/recipes-support/libesmtp/libesmtp_1.1.0.bb40
-rw-r--r--meta-networking/recipes-support/libexosip2/libexosip2_5.3.0.bb22
-rw-r--r--meta-networking/recipes-support/libldb/libldb/0001-do-not-import-target-module-while-cross-compile.patch (renamed from meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch)60
-rw-r--r--meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch87
-rw-r--r--meta-networking/recipes-support/libldb/libldb/0002-ldb-Add-configure-options-for-packages.patch (renamed from meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch)81
-rw-r--r--meta-networking/recipes-support/libldb/libldb/0003-Fix-pyext_PATTERN-for-cross-compilation.patch59
-rw-r--r--meta-networking/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch14
-rw-r--r--meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-conflict-type-error.patch45
-rw-r--r--meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-unkown-type-error.patch31
-rw-r--r--meta-networking/recipes-support/libldb/libldb/run-ptest17
-rw-r--r--meta-networking/recipes-support/libldb/libldb_2.8.0.bb (renamed from meta-networking/recipes-support/libldb/libldb_1.4.1.bb)65
-rw-r--r--meta-networking/recipes-support/libmaxminddb/libmaxminddb_1.4.3.bb18
-rw-r--r--meta-networking/recipes-support/libmemcached/files/0001-Fix-comparison-types.patch2
-rw-r--r--meta-networking/recipes-support/libmemcached/files/0001-configure.ac-Do-not-configure-build-aux.patch2
-rw-r--r--meta-networking/recipes-support/libmemcached/files/0002-POSIX_SPAWN_USEVFORK-is-not-linux-specific-but-glibc.patch2
-rw-r--r--meta-networking/recipes-support/libmemcached/files/crosscompile.patch2
-rw-r--r--meta-networking/recipes-support/libmemcached/libmemcached.inc4
-rw-r--r--meta-networking/recipes-support/libosip2/libosip2_5.3.1.bb15
-rw-r--r--meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch (renamed from meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch)105
-rw-r--r--meta-networking/recipes-support/libtalloc/libtalloc/0002-Fix-pyext_PATTERN-for-cross-compilation.patch57
-rw-r--r--meta-networking/recipes-support/libtalloc/libtalloc/avoid-attr-unless-wanted.patch31
-rw-r--r--meta-networking/recipes-support/libtalloc/libtalloc/run-ptest17
-rw-r--r--meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb (renamed from meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb)38
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch (renamed from meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch)112
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb/0002-Fix-pyext_PATTERN-for-cross-compilation.patch42
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch15
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb/run-ptest17
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb45
-rw-r--r--meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb63
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent/0001-Add-configure-options-for-packages.patch (renamed from meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch)120
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent/0001-libtevent-fix-musl-libc-compile-error.patch32
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent/0002-Fix-pyext_PATTERN-for-cross-compilation.patch42
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent/avoid-attr-unless-wanted.patch27
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent/run-ptest17
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent_0.16.1.bb62
-rw-r--r--meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb46
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch48
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-configure-Check-for-symbol-from-libresolv-instead-of.patch28
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-fix-compile-error-with-linux-kernel-v4.8.patch2
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-include-string-h-from-memcpy-and-strcpy-function-pro.patch87
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-make-Add-PREFIX-knob.patch31
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch59
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch30
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/install-from-buildir.patch2
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/link-with-ldflags.patch2
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch37
-rw-r--r--meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb26
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-0b0dce7a36fb-actually-belongs-to-v4.19.patch31
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-netinet-sctp.h-not-to-be-installed.patch35
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-probing-for-HAVE_SCTP_SENDV.patch35
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-remove-v4.12-secondary-defines-in-favor-of-HAV.patch52
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-configure.ac-add-CURRENT-REVISION-and-AGE-for-libsct.patch71
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-test_1_to_1_events.c-initialize-event-properly.patch44
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-withsctp-use-PACKAGE_VERSION-in-withsctp.h.patch43
-rw-r--r--meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.19.bb (renamed from meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb)30
-rw-r--r--meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-Remove-newline-from-format-line.patch2
-rw-r--r--meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch2
-rw-r--r--meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-coordinator-Fix-strncpy-range-warning.patch2
-rw-r--r--meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-src-iz.c-Undef-dprintf-before-redefining.patch2
-rw-r--r--meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb16
-rw-r--r--meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch33
-rw-r--r--meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb24
-rw-r--r--meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb25
-rw-r--r--meta-networking/recipes-support/mctp/mctp_1.1.bb42
-rw-r--r--meta-networking/recipes-support/mdio-tools/mdio-netlink_1.3.1.bb13
-rw-r--r--meta-networking/recipes-support/mdio-tools/mdio-tools.inc8
-rw-r--r--meta-networking/recipes-support/mdio-tools/mdio-tools_1.3.1.bb9
-rw-r--r--meta-networking/recipes-support/memcached/memcached/0001-Fix-function-protypes.patch110
-rw-r--r--meta-networking/recipes-support/memcached/memcached/memcached-add-hugetlbfs-check.patch15
-rw-r--r--meta-networking/recipes-support/memcached/memcached_1.6.17.bb (renamed from meta-networking/recipes-support/memcached/memcached_1.5.10.bb)15
-rw-r--r--meta-networking/recipes-support/mtr/mtr_0.95.bb (renamed from meta-networking/recipes-support/mtr/mtr_0.87.bb)12
-rw-r--r--meta-networking/recipes-support/nbd/nbd_3.17.bb19
-rw-r--r--meta-networking/recipes-support/nbd/nbd_3.24.bb20
-rw-r--r--meta-networking/recipes-support/nbdkit/nbdkit/0001-plugins-Avoid-absolute-buildpaths-in-binaries.patch38
-rw-r--r--meta-networking/recipes-support/nbdkit/nbdkit_1.33.11.bb33
-rw-r--r--meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch44
-rw-r--r--meta-networking/recipes-support/ncp/libowfat/0001-replace-__pure__-with-compiler-attribute-pure.patch562
-rw-r--r--meta-networking/recipes-support/ncp/libowfat_0.32.bb (renamed from meta-networking/recipes-support/ncp/libowfat_0.31.bb)15
-rw-r--r--meta-networking/recipes-support/ncp/ncp_1.2.4.bb4
-rw-r--r--meta-networking/recipes-support/ndisc6/ndisc6/0001-replace-VLAIS-with-malloc-free-pair.patch124
-rw-r--r--meta-networking/recipes-support/ndisc6/ndisc6/0002-Do-not-undef-_GNU_SOURCE.patch30
-rw-r--r--meta-networking/recipes-support/ndisc6/ndisc6_1.0.8.bb (renamed from meta-networking/recipes-support/ndisc6/ndisc6_git.bb)49
-rw-r--r--meta-networking/recipes-support/netcat/netcat.inc2
-rw-r--r--meta-networking/recipes-support/netcat/netcat/gettext.patch16
-rw-r--r--meta-networking/recipes-support/netcat/netcat_0.7.1.bb8
-rw-r--r--meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch83
-rw-r--r--meta-networking/recipes-support/netcf/netcf_0.2.8.bb24
-rw-r--r--meta-networking/recipes-support/netperf/files/0001-nettest_omni-Remove-duplicate-variable-definitions.patch37
-rw-r--r--meta-networking/recipes-support/netperf/files/netserver.service9
-rw-r--r--meta-networking/recipes-support/netperf/files/netserver_permissions.patch29
-rw-r--r--meta-networking/recipes-support/netperf/netperf_git.bb34
-rw-r--r--meta-networking/recipes-support/netsniff-ng/files/0001-Cmds-automatically-create-folder.patch28
-rw-r--r--meta-networking/recipes-support/netsniff-ng/netsniff-ng_0.6.8.bb36
-rw-r--r--meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb13
-rw-r--r--meta-networking/recipes-support/nis/nis.inc11
-rw-r--r--meta-networking/recipes-support/nis/yp-tools_2.14.bb10
-rw-r--r--meta-networking/recipes-support/nis/yp-tools_4.2.3.bb22
-rw-r--r--meta-networking/recipes-support/nis/ypbind-mt_2.7.2.bb (renamed from meta-networking/recipes-support/nis/ypbind-mt_2.4.bb)27
-rw-r--r--meta-networking/recipes-support/ntimed/ntimed_git.bb12
-rw-r--r--meta-networking/recipes-support/ntop/ntop/0001-nDPI-Include-sys-types.h.patch26
-rw-r--r--meta-networking/recipes-support/ntop/ntop/0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch74
-rw-r--r--meta-networking/recipes-support/ntop/ntop/ntop.service15
-rw-r--r--meta-networking/recipes-support/ntop/ntop/ntop_configure_in.patch164
-rw-r--r--meta-networking/recipes-support/ntop/ntop/ntop_configure_in_net_snmp_config_exist.patch21
-rw-r--r--meta-networking/recipes-support/ntop/ntop/ntop_init.patch228
-rw-r--r--meta-networking/recipes-support/ntop/ntop/ntop_webInterface.patch19
-rw-r--r--meta-networking/recipes-support/ntop/ntop/use-static-inline.patch32
-rw-r--r--meta-networking/recipes-support/ntop/ntop_5.0.1.bb140
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-Makefile.in-don-t-use-the-internal-lua.patch39
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-autogen.sh-generate-configure.ac-only.patch36
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-autogen.sh-not-generate-configure.patch35
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-Allow-dynamic-linking-against-ndpi-3.patch39
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-configure-error.patch42
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-host-contamination.patch82
-rw-r--r--meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-not-check-clang-on-host.patch44
-rw-r--r--meta-networking/recipes-support/ntopng/files/ntopng.service13
-rw-r--r--meta-networking/recipes-support/ntopng/ndpi_4.2.bb28
-rw-r--r--meta-networking/recipes-support/ntopng/ntopng_5.2.1.bb50
-rw-r--r--meta-networking/recipes-support/ntp/ntp/0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch33
-rw-r--r--meta-networking/recipes-support/ntp/ntp/0001-sntp-Fix-types-in-check-for-pthread_detach.patch33
-rw-r--r--meta-networking/recipes-support/ntp/ntp/0001-test-Fix-build-with-new-compiler-defaults-to-fno-com.patch56
-rw-r--r--meta-networking/recipes-support/ntp/ntp/ntp-4.2.4_p6-nano.patch2
-rw-r--r--meta-networking/recipes-support/ntp/ntp/ntp.conf6
-rw-r--r--meta-networking/recipes-support/ntp/ntp/ntpd.service5
-rwxr-xr-xmeta-networking/recipes-support/ntp/ntp/ntpdate54
-rw-r--r--meta-networking/recipes-support/ntp/ntp/ntpdate.default7
-rw-r--r--meta-networking/recipes-support/ntp/ntp/ntpdate.service11
-rw-r--r--meta-networking/recipes-support/ntp/ntp/reproducibility-fixed-path-to-posix-shell.patch19
-rw-r--r--meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch16
-rw-r--r--meta-networking/recipes-support/ntp/ntp_4.2.8p17.bb (renamed from meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb)151
-rw-r--r--meta-networking/recipes-support/ntpsec/ntpsec/0001-wscript-Add-BISONFLAGS-support.patch31
-rw-r--r--meta-networking/recipes-support/ntpsec/ntpsec/volatiles.ntpsec3
-rw-r--r--meta-networking/recipes-support/ntpsec/ntpsec_1.2.2a.bb129
-rw-r--r--meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket9
-rw-r--r--meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service8
-rw-r--r--meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb (renamed from meta-networking/recipes-support/nuttcp/nuttcp_7.2.1.bb)25
-rw-r--r--meta-networking/recipes-support/open-isns/files/0001-isnsd.socket-use-run-instead-of-var-run.patch26
-rw-r--r--meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch38
-rw-r--r--meta-networking/recipes-support/open-isns/open-isns_0.102.bb (renamed from meta-networking/recipes-support/open-isns/open-isns_0.98.bb)12
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch72
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch41
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-Use-configure-test-for-struct-timespec.patch50
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch63
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Use-configure-to-test-for-feature-instead-of-platfor.patch144
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-test-for-sys-stat.h-include.patch30
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Fix-subdir-objects-configure-error.patch38
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-include-poll.h-instead-of-sys-poll.h.patch31
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-Rename-poll.h-to-vm_poll.h.patch114
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-use-posix-strerror_r-unless-on-gnu-libc-system.patch44
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-Use-uintmax_t-for-handling-rlim_t.patch38
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-off64_t-instead-of-__off64_t.patch35
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-hgfsServerLinux-Consider-64bit-time_t-possibility.patch44
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-open-vm-tools-Correct-include-path-for-poll.h.patch37
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0014-timeSync-Portable-way-to-print-64bit-time_t.patch55
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf2
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init66
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service11
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools_12.3.5.bb124
-rw-r--r--meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch25
-rw-r--r--meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch34
-rw-r--r--meta-networking/recipes-support/openipmi/files/include_sys_types.patch22
-rw-r--r--meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch9
-rw-r--r--[-rwxr-xr-x]meta-networking/recipes-support/openipmi/files/openipmi-helper0
-rw-r--r--meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch28
-rw-r--r--meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch50
-rw-r--r--meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch26
-rw-r--r--meta-networking/recipes-support/openipmi/openipmi_2.0.35.bb (renamed from meta-networking/recipes-support/openipmi/openipmi_2.0.25.bb)39
-rw-r--r--meta-networking/recipes-support/openvpn/openvpn/0001-configure.ac-eliminate-build-path-from-openvpn-versi.patch48
-rw-r--r--[-rwxr-xr-x]meta-networking/recipes-support/openvpn/openvpn/openvpn12
-rw-r--r--meta-networking/recipes-support/openvpn/openvpn/openvpn-volatile.conf1
-rw-r--r--meta-networking/recipes-support/openvpn/openvpn/openvpn@.service12
-rw-r--r--meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb71
-rw-r--r--meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb76
-rw-r--r--meta-networking/recipes-support/pgpool2/pgpool2/0001-Fix-build-error-when-build-this-file.patch32
-rw-r--r--meta-networking/recipes-support/pgpool2/pgpool2/define_SIGNAL_ARGS.patch25
-rw-r--r--meta-networking/recipes-support/pgpool2/pgpool2/pgpool.service17
-rw-r--r--meta-networking/recipes-support/pgpool2/pgpool2/pgpool.sysconfig7
-rw-r--r--meta-networking/recipes-support/pgpool2/pgpool2_4.5.1.bb50
-rw-r--r--meta-networking/recipes-support/phytool/phytool.bb8
-rw-r--r--meta-networking/recipes-support/pimd/pimd/0001-configure-Dont-use-uname-to-determine-target-OS.patch2
-rw-r--r--meta-networking/recipes-support/pimd/pimd_2.3.2.bb11
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch103
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch29
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch31
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch25
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch58
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch27
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch26
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb30
-rw-r--r--meta-networking/recipes-support/rdma-core/rdma-core_51.0.bb46
-rw-r--r--meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch29
-rw-r--r--meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch95
-rw-r--r--meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch35
-rw-r--r--meta-networking/recipes-support/ruli/files/Makefile.patch122
-rw-r--r--meta-networking/recipes-support/ruli/files/float-conversion.patch19
-rw-r--r--meta-networking/recipes-support/ruli/ruli_0.36.bb25
-rw-r--r--meta-networking/recipes-support/smcroute/smcroute_2.5.7.bb (renamed from meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb)10
-rw-r--r--meta-networking/recipes-support/sngrep/sngrep_1.8.1.bb37
-rw-r--r--meta-networking/recipes-support/spice/libcacard_2.8.1.bb17
-rw-r--r--meta-networking/recipes-support/spice/phodav_3.0.bb24
-rw-r--r--meta-networking/recipes-support/spice/spice-gtk_0.42.bb69
-rw-r--r--meta-networking/recipes-support/spice/spice-guest-vdagent_0.22.1.bb25
-rw-r--r--meta-networking/recipes-support/spice/spice-protocol_0.14.4.bb21
-rw-r--r--meta-networking/recipes-support/spice/spice-protocol_git.bb28
-rw-r--r--meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch66
-rw-r--r--meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch36
-rw-r--r--meta-networking/recipes-support/spice/spice_git.bb53
-rw-r--r--meta-networking/recipes-support/spice/usbredir_0.13.0.bb (renamed from meta-networking/recipes-support/spice/usbredir_git.bb)13
-rw-r--r--meta-networking/recipes-support/ssmping/files/0001-Makefile-tweak-install-dir.patch2
-rw-r--r--meta-networking/recipes-support/ssmping/ssmping_0.9.1.bb4
-rw-r--r--meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch32
-rw-r--r--meta-networking/recipes-support/ssmtp/ssmtp/0001-ssmtp-Correct-the-null-pointer-assignment-to-char-po.patch51
-rw-r--r--meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb17
-rw-r--r--meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch24
-rw-r--r--meta-networking/recipes-support/strongswan/files/fix-funtion-parameter.patch99
-rw-r--r--meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb134
-rw-r--r--meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb194
-rw-r--r--meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch44
-rw-r--r--meta-networking/recipes-support/stunnel/stunnel_5.72.bb (renamed from meta-networking/recipes-support/stunnel/stunnel_5.49.bb)18
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch29
-rwxr-xr-xmeta-networking/recipes-support/tcpdump/tcpdump/run-ptest4
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch34
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb51
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpdump_4.99.4.bb52
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-1.2a3-time.patch75
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-CVS.20010207-bpf.patch15
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpslice_1.2a3.bb36
-rw-r--r--meta-networking/recipes-support/tcpdump/tcpslice_1.7.bb24
-rw-r--r--meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch51
-rw-r--r--meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-unify-search-dirs-for-pcap-and-add-lib3.patch82
-rw-r--r--meta-networking/recipes-support/tcpreplay/tcpreplay/0001-libopts.m4-set-POSIX_SHELL-to-bin-sh.patch45
-rw-r--r--meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb19
-rw-r--r--meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb28
-rw-r--r--meta-networking/recipes-support/tinyproxy/tinyproxy/CVE-2022-40468.patch33
-rw-r--r--meta-networking/recipes-support/tinyproxy/tinyproxy/disable-documentation.patch51
-rw-r--r--meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf330
-rw-r--r--meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service6
-rw-r--r--meta-networking/recipes-support/tinyproxy/tinyproxy_1.11.1.bb (renamed from meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb)25
-rw-r--r--meta-networking/recipes-support/tnftp/tnftp/0001-libedit-Include-missing-header-stdc-predef.h.patch31
-rw-r--r--meta-networking/recipes-support/tnftp/tnftp/tnftp-autotools.patch42
-rw-r--r--meta-networking/recipes-support/tnftp/tnftp_20230507.bb (renamed from meta-networking/recipes-support/tnftp/tnftp_20151004.bb)19
-rw-r--r--meta-networking/recipes-support/traceroute/traceroute/filter-out-the-patches-from-subdirs.patch47
-rw-r--r--meta-networking/recipes-support/traceroute/traceroute_2.1.5.bb (renamed from meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb)15
-rw-r--r--meta-networking/recipes-support/tunctl/tunctl.inc2
-rw-r--r--meta-networking/recipes-support/uftp/uftp_5.0.3.bb (renamed from meta-networking/recipes-support/uftp/uftp_4.9.8.bb)8
-rw-r--r--meta-networking/recipes-support/unbound/unbound_1.20.0.bb46
-rw-r--r--meta-networking/recipes-support/vnstat/vnstat_2.6.bb22
-rw-r--r--meta-networking/recipes-support/wavemon/wavemon_0.9.5.bb28
-rw-r--r--meta-networking/recipes-support/wireshark/README4
-rw-r--r--meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch32
-rw-r--r--meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch28
-rw-r--r--meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch44
-rw-r--r--meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch35
-rw-r--r--meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch29
-rw-r--r--meta-networking/recipes-support/wireshark/wireshark_2.6.5.bb94
-rw-r--r--meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb99
-rw-r--r--meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb (renamed from meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb)6
366 files changed, 8634 insertions, 9053 deletions
diff --git a/meta-networking/recipes-support/aoetools/aoetools/reproducible-build.patch b/meta-networking/recipes-support/aoetools/aoetools/reproducible-build.patch
new file mode 100644
index 0000000000..34d59b1aa6
--- /dev/null
+++ b/meta-networking/recipes-support/aoetools/aoetools/reproducible-build.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Pending
+
+--- a/Makefile
++++ b/Makefile
+@@ -40,7 +40,8 @@ NPERSHELF=16
+ CONF_SCRIPTS = aoe-discover aoe-interfaces aoe-mkshelf aoe-revalidate aoe-flush aoe-stat
+ PROGS = aoeping aoecfg aoe-sancheck
+ COMMANDS := ${CONF_SCRIPTS} aoe-mkdevs aoe-version coraid-update ${PROGS}
+-CFLAGS = -Wall -O -g
++# We could still override this on the command line.
++CFLAGS += -Wall -O -g
+ SANCHECKLIBS = -lpthread
+
+ AOE_PING_OBJ = aoeping.o linux.o
diff --git a/meta-networking/recipes-support/aoetools/aoetools_36.bb b/meta-networking/recipes-support/aoetools/aoetools_36.bb
index 9b73b442ab..9c9e5ca7ad 100644
--- a/meta-networking/recipes-support/aoetools/aoetools_36.bb
+++ b/meta-networking/recipes-support/aoetools/aoetools_36.bb
@@ -6,13 +6,14 @@ The vblade program (storage target) exports a blockdevice using AoE. \
"
HOMEPAGE = "http://sourceforge.net/projects/${BPN}"
SECTION = "admin"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-RRECOMMENDS_${PN} = "kernel-module-aoe"
+RRECOMMENDS:${PN} = "kernel-module-aoe"
SRC_URI = "http://sourceforge.net/projects/${BPN}/files/${BPN}/${BPN}-${PV}.tar.gz \
file://aoe-stat-no-bashism.patch \
file://makefile-add-ldflags.patch \
+ file://reproducible-build.patch \
"
SRC_URI[md5sum] = "bff30daa988a65f69d4448ce4726a6db"
SRC_URI[sha256sum] = "fb5e2cd0de7644cc1ec04ee3aeb43211cf7445a0c19e13d6b3ed5a8fbdf215ff"
diff --git a/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch b/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch
index e8be45e6b6..c58ef1a9ef 100644
--- a/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch
+++ b/meta-networking/recipes-support/arptables/arptables/0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch
@@ -8,24 +8,19 @@ which OE uses to pass tweaks
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- Makefile | 15 +++++++--------
- extensions/Makefile | 5 ++++-
- 2 files changed, 11 insertions(+), 9 deletions(-)
+Upstream-Status: Pending
+
+ Makefile | 10 ++++------
+ extensions/Makefile | 4 ++++
+ 2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/Makefile b/Makefile
-index 7bead0d..336db6b 100644
+index 62ebdf2..cd06813 100644
--- a/Makefile
+++ b/Makefile
-@@ -7,15 +7,13 @@ LIBDIR:=$(PREFIX)/lib
- BINDIR:=$(PREFIX)/sbin
- MANDIR:=$(PREFIX)/man
- man8dir=$(MANDIR)/man8
--INITDIR:=/etc/rc.d/init.d
-+INITDIR:=/etc/init.d
- SYSCONFIGDIR:=/etc/sysconfig
- DESTDIR:=
+@@ -12,9 +12,7 @@ DESTDIR:=
- MANS = arptables.8 arptables-save.8 arptables-restore.8
+ MANS = arptables-legacy.8 arptables-save.8 arptables-restore.8
-COPT_FLAGS:=-O2
-CFLAGS:=$(COPT_FLAGS) -Wall -Wunused -I$(KERNEL_DIR)/include/ -Iinclude/ -DARPTABLES_VERSION=\"$(ARPTABLES_VERSION)\" #-g -DDEBUG #-pg # -DARPTC_DEBUG
@@ -34,8 +29,8 @@ index 7bead0d..336db6b 100644
ifndef ARPT_LIBDIR
ARPT_LIBDIR:=$(LIBDIR)/arptables
endif
-@@ -25,13 +23,13 @@ include extensions/Makefile
- all: arptables libarptc/libarptc.a
+@@ -24,13 +22,13 @@ include extensions/Makefile
+ all: arptables-legacy libarptc/libarptc.a
arptables.o: arptables.c
- $(CC) $(CFLAGS) -c -o $@ $<
@@ -51,29 +46,18 @@ index 7bead0d..336db6b 100644
libarptc/libarptc.a: libarptc/libarptc.o
$(AR) rcs $@ $<
-@@ -53,7 +51,8 @@ scripts: arptables-save arptables-restore arptables.sysv
- install -m 0755 arptables-restore_ $(DESTDIR)$(BINDIR)/arptables-restore
- cat arptables.sysv | sed 's/__EXEC_PATH__/$(tmp1)/g' | sed 's/__SYSCONFIG__/$(tmp2)/g' > arptables.sysv_
- if [ "$(DESTDIR)" != "" ]; then mkdir -p $(DESTDIR)$(INITDIR); fi
-- if test -d $(DESTDIR)$(INITDIR); then install -m 0755 arptables.sysv_ $(DESTDIR)$(INITDIR)/arptables; fi
-+ install -d $(DESTDIR)$(INITDIR)
-+ install -m 0755 arptables.sysv_ $(DESTDIR)$(INITDIR)/arptables
- rm -f arptables-save_ arptables-restore_ arptables.sysv_
-
- .PHONY: install-man
diff --git a/extensions/Makefile b/extensions/Makefile
-index 0189cc9..b046425 100644
+index 0189cc9..e8af782 100644
--- a/extensions/Makefile
+++ b/extensions/Makefile
-@@ -4,4 +4,7 @@ EXT_FUNC+=standard mangle CLASSIFY MARK
- EXT_OBJS+=$(foreach T,$(EXT_FUNC), extensions/arpt_$(T).o)
+@@ -5,3 +5,7 @@ EXT_OBJS+=$(foreach T,$(EXT_FUNC), extensions/arpt_$(T).o)
extensions/ebt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h
-- $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(PROGSPECS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $<
+
+extensions/arpt_%.o: extensions/arpt_%.c include/arptables.h include/arptables_common.h
+ $(CC) $(CFLAGS) $(ARPCFLAGS) $(PROGSPECS) -c -o $@ $<
--
-2.12.1
+2.17.1
diff --git a/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch b/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch
deleted file mode 100644
index 24956c4ca9..0000000000
--- a/meta-networking/recipes-support/arptables/arptables/arptables-init-busybox.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-Index: arptables-v0.0.3-4/arptables.sysv
-===================================================================
---- arptables-v0.0.3-4.orig/arptables.sysv 2010-03-22 16:28:03.000000000 +0300
-+++ arptables-v0.0.3-4/arptables.sysv 2010-03-22 16:27:51.000000000 +0300
-@@ -12,10 +12,10 @@
- # config: __SYSCONFIG__/arptables
-
- source /etc/init.d/functions
--source /etc/sysconfig/network
-+# source /etc/sysconfig/network
-
- # Check that networking is up.
--[ ${NETWORKING} = "no" ] && exit 0
-+# [ ${NETWORKING} = "no" ] && exit 0
-
- [ -x __EXEC_PATH__/arptables ] || exit 1
- [ -x __EXEC_PATH__/arptables-save ] || exit 1
-@@ -28,32 +28,30 @@
- desc="Arp filtering"
-
- start() {
-- echo -n $"Starting $desc ($prog): "
-+ echo -n "Starting $desc ($prog): "
- __EXEC_PATH__/arptables-restore < __SYSCONFIG__/arptables || RETVAL=1
-
- if [ $RETVAL -eq 0 ]; then
-- success "$prog startup"
-- rm -f /var/lock/subsys/$prog
-+ echo "$prog ok"
-+ touch /var/lock/subsys/$prog
- else
-- failure "$prog startup"
-+ echo "$prog failed"
- fi
-
-- echo
- return $RETVAL
- }
-
- stop() {
-- echo -n $"Stopping $desc ($prog): "
-+ echo -n "Stopping $desc ($prog): "
- __EXEC_PATH__/arptables-restore < /dev/null || RETVAL=1
-
- if [ $RETVAL -eq 0 ]; then
-- success "$prog shutdown"
-- rm -f %{_localstatedir}/lock/subsys/$prog
-+ echo "$prog stopped"
-+ rm -f /var/lock/subsys/$prog
- else
-- failure "$prog shutdown"
-+ echo "$prog failed to stop"
- fi
-
-- echo
- return $RETVAL
- }
-
-@@ -63,15 +61,14 @@
- }
-
- save() {
-- echo -n $"Saving $desc ($prog): "
-+ echo -n "Saving $desc ($prog): "
- __EXEC_PATH__/arptables-save > __SYSCONFIG__/arptables || RETVAL=1
-
- if [ $RETVAL -eq 0 ]; then
-- success "$prog saved"
-+ echo "$prog saved"
- else
-- failure "$prog saved"
-+ echo "$prog is not saved"
- fi
-- echo
- }
-
- case "$1" in
diff --git a/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch b/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch
deleted file mode 100644
index f332658bcd..0000000000
--- a/meta-networking/recipes-support/arptables/arptables/arptables-remove-bashism.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From cd312bc0e3686404428878d23b8888cba09a20e1 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Thu, 18 Sep 2014 19:46:58 -0700
-Subject: [PATCH] arptables.sysv: remove bashism
-
-Use "." to replace of "source", and change /bin/bash to /bin/sh, the
-echo $"foo" works well in busybox.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- arptables.sysv | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/arptables.sysv b/arptables.sysv
-index 7a90bd2..7710376 100644
---- a/arptables.sysv
-+++ b/arptables.sysv
-@@ -1,4 +1,4 @@
--#!/bin/bash
-+#!/bin/sh
- #
- # init script for arptables
- #
-@@ -11,7 +11,7 @@
- #
- # config: __SYSCONFIG__/arptables
-
--source /etc/init.d/functions
-+. /etc/init.d/functions
- # source /etc/sysconfig/network
-
- # Check that networking is up.
---
-1.7.9.5
-
diff --git a/meta-networking/recipes-support/arptables/arptables_git.bb b/meta-networking/recipes-support/arptables/arptables_git.bb
index cec1d1f77e..949794bf30 100644
--- a/meta-networking/recipes-support/arptables/arptables_git.bb
+++ b/meta-networking/recipes-support/arptables/arptables_git.bb
@@ -1,23 +1,21 @@
SUMMARY = "Administration tool for arp packet filtering"
SECTION = "net"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
-SRCREV = "f4ab8f63f11a72f14687a6646d04ae1bae3fa45f"
-PV = "0.0.4+git${SRCPV}"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
+SRCREV = "efae8949e31f8b2eb6290f377a28384cecaf105a"
+PV = "0.0.5+git"
SRC_URI = " \
- git://git.netfilter.org/arptables \
+ git://git.netfilter.org/arptables;branch=master \
file://0001-Use-ARPCFLAGS-for-package-specific-compiler-flags.patch \
- file://arptables-init-busybox.patch \
file://arptables-arpt-get-target-fix.patch \
- file://arptables-remove-bashism.patch \
file://arptables.service \
"
SRC_URI[arptables.md5sum] = "1d4ab05761f063b0751645d8f2b8f8e5"
SRC_URI[arptables.sha256sum] = "e529fd465c67d69ad335299a043516e6b38cdcd337a5ed21718413e96073f928"
S = "${WORKDIR}/git"
-SYSTEMD_SERVICE_${PN} = "arptables.service"
+SYSTEMD_SERVICE:${PN} = "arptables.service"
inherit systemd
@@ -31,7 +29,7 @@ do_install() {
fi
}
-RDEPENDS_${PN} += "perl"
+RDEPENDS:${PN} += "perl"
# the install target is not multi-job safe, but it doesn't do much
# so we just install serially
diff --git a/meta-networking/recipes-support/bmon/bmon_4.0.bb b/meta-networking/recipes-support/bmon/bmon_4.0.bb
new file mode 100644
index 0000000000..c974d54fe8
--- /dev/null
+++ b/meta-networking/recipes-support/bmon/bmon_4.0.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "Portable Bandwidth Monitor and rate estimator"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+# only works with libnl-0.5.0
+DEPENDS = "libnl libconfuse ncurses"
+
+SRCREV = "1b3f11bde315e221474f7d066ce4efb4ff4d39e3"
+SRC_URI = "git://github.com/tgraf/bmon.git;branch=master;protocol=https"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/git"
diff --git a/meta-networking/recipes-support/bridge-utils/bridge-utils/kernel-headers.patch b/meta-networking/recipes-support/bridge-utils/bridge-utils/0001-include-missing-kernel-header.patch
index 8a23a3070c..dbd6b18c42 100644
--- a/meta-networking/recipes-support/bridge-utils/bridge-utils/kernel-headers.patch
+++ b/meta-networking/recipes-support/bridge-utils/bridge-utils/0001-include-missing-kernel-header.patch
@@ -1,4 +1,4 @@
-From 824f838cc9c7b8a44174358446993d61be7bbb3f Mon Sep 17 00:00:00 2001
+From 203801ae47399569868aa468988e711ba3ddfa92 Mon Sep 17 00:00:00 2001
From: Joe MacDonald <joe_macdonald@mentor.com>
Date: Mon, 30 Oct 2017 13:18:20 -0400
Subject: [PATCH] include missing kernel header
@@ -17,7 +17,7 @@ Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
1 file changed, 1 insertion(+)
diff --git a/libbridge/libbridge.h b/libbridge/libbridge.h
-index c038b92..fd09306 100644
+index 962f316..422ec33 100644
--- a/libbridge/libbridge.h
+++ b/libbridge/libbridge.h
@@ -24,6 +24,7 @@
@@ -29,5 +29,5 @@ index c038b92..fd09306 100644
#include <linux/if_bridge.h>
--
-2.7.4
+2.17.1
diff --git a/meta-networking/recipes-support/bridge-utils/bridge-utils/0005-build-don-t-ignore-CFLAGS-from-environment.patch b/meta-networking/recipes-support/bridge-utils/bridge-utils/0002-build-don-t-ignore-CFLAGS-from-environment.patch
index 0a72c6b2c4..5ec563b6b1 100644
--- a/meta-networking/recipes-support/bridge-utils/bridge-utils/0005-build-don-t-ignore-CFLAGS-from-environment.patch
+++ b/meta-networking/recipes-support/bridge-utils/bridge-utils/0002-build-don-t-ignore-CFLAGS-from-environment.patch
@@ -1,4 +1,4 @@
-From 9d63838d12c772dfe33371e2bb8b8191625539f2 Mon Sep 17 00:00:00 2001
+From 0c1a66fc62cc321d307c94f962031283142eea69 Mon Sep 17 00:00:00 2001
From: Joe MacDonald <joe_macdonald@mentor.com>
Date: Mon, 30 Oct 2017 13:37:48 -0400
Subject: [PATCH] build: don't ignore CFLAGS from environment
@@ -36,5 +36,5 @@ index e1956d6..eff260c 100644
%.o: %.c brctl.h
$(CC) $(CFLAGS) $(INCLUDE) -c $<
--
-2.7.4
+2.17.1
diff --git a/meta-networking/recipes-support/bridge-utils/bridge-utils/0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch b/meta-networking/recipes-support/bridge-utils/bridge-utils/0003-libbridge-Modifying-the-AR-to-cross-toolchain.patch
index 3f65761f54..586ebfec68 100644
--- a/meta-networking/recipes-support/bridge-utils/bridge-utils/0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch
+++ b/meta-networking/recipes-support/bridge-utils/bridge-utils/0003-libbridge-Modifying-the-AR-to-cross-toolchain.patch
@@ -1,4 +1,4 @@
-From c924f66743c054d7ebafef90ca1bbebc96732357 Mon Sep 17 00:00:00 2001
+From 99264c688ff98d8f0f237cba6c7098eb4d5a12a7 Mon Sep 17 00:00:00 2001
From: Joe MacDonald <joe_macdonald@mentor.com>
Date: Mon, 30 Oct 2017 13:48:33 -0400
Subject: [PATCH] libbridge: Modifying the AR to cross toolchain
@@ -14,12 +14,12 @@ Upstream-Status: Pending
Signed-off-by: Li Zhou <li.zhou@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
---
- configure.ac | 1 +
+ configure.ac | 4 ++++
libbridge/Makefile.in | 2 +-
- 2 files changed, 2 insertions(+), 1 deletion(-)
+ 2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index 8b2e2ea..8426b7c 100644
+index 66817bb..bcc6946 100644
--- a/configure.ac
+++ b/configure.ac
@@ -12,6 +12,10 @@ dnl Checks for programs.
@@ -47,5 +47,5 @@ index 7932bfe..bd55e9b 100644
CC=@CC@
--
-2.7.4
+2.17.1
diff --git a/meta-networking/recipes-support/bridge-utils/bridge-utils/0004-cleanup-includes.patch b/meta-networking/recipes-support/bridge-utils/bridge-utils/0004-cleanup-includes.patch
new file mode 100644
index 0000000000..eb5c53d9ed
--- /dev/null
+++ b/meta-networking/recipes-support/bridge-utils/bridge-utils/0004-cleanup-includes.patch
@@ -0,0 +1,149 @@
+From 1763c5b7f8f72d651d62337029c3bdfb269491e4 Mon Sep 17 00:00:00 2001
+From: Stephen Hemminger <sthemmin@microsoft.com>
+Date: Fri, 7 Jan 2022 08:44:19 -0800
+Subject: [PATCH] cleanup includes
+
+Use IWYU to only include necessary headers.
+Should resolve build issues for distros that need limits.h
+to find PATH_MAX.
+
+Upstream-Status: Backport
+[https://git.kernel.org/pub/scm/network/bridge/bridge-utils.git/commit/?h=main&id=1763c5b7f8f72d651d62337029c3bdfb269491e4]
+
+Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ brctl/brctl.c | 1 -
+ brctl/brctl_cmd.c | 3 ++-
+ brctl/brctl_disp.c | 1 -
+ libbridge/libbridge_devif.c | 5 ++++-
+ libbridge/libbridge_if.c | 5 +----
+ libbridge/libbridge_init.c | 4 +++-
+ libbridge/libbridge_misc.c | 5 +----
+ 7 files changed, 11 insertions(+), 13 deletions(-)
+
+diff --git a/brctl/brctl.c b/brctl/brctl.c
+index 8855234..d2fa005 100644
+--- a/brctl/brctl.c
++++ b/brctl/brctl.c
+@@ -17,7 +17,6 @@
+ */
+
+ #include <stdio.h>
+-#include <stdlib.h>
+ #include <string.h>
+ #include <errno.h>
+ #include <getopt.h>
+diff --git a/brctl/brctl_cmd.c b/brctl/brctl_cmd.c
+index 81f7dfa..4167503 100644
+--- a/brctl/brctl_cmd.c
++++ b/brctl/brctl_cmd.c
+@@ -18,10 +18,11 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <stdint.h>
+ #include <string.h>
+ #include <sys/time.h>
+ #include <errno.h>
+-#include <asm/param.h>
++
+ #include "libbridge.h"
+ #include "brctl.h"
+
+diff --git a/brctl/brctl_disp.c b/brctl/brctl_disp.c
+index 3e81241..f6bf2af 100644
+--- a/brctl/brctl_disp.c
++++ b/brctl/brctl_disp.c
+@@ -17,7 +17,6 @@
+ */
+
+ #include <stdio.h>
+-#include <stdlib.h>
+ #include <string.h>
+ #include <sys/time.h>
+
+diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c
+index 8b7d954..3aac0f9 100644
+--- a/libbridge/libbridge_devif.c
++++ b/libbridge/libbridge_devif.c
+@@ -18,12 +18,15 @@
+
+
+ #include <stdio.h>
+-#include <stdlib.h>
+ #include <unistd.h>
+ #include <errno.h>
+ #include <string.h>
+ #include <dirent.h>
+ #include <fcntl.h>
++#include <limits.h>
++
++#include <sys/ioctl.h>
++#include <linux/sockios.h>
+
+ #include "libbridge.h"
+ #include "libbridge_private.h"
+diff --git a/libbridge/libbridge_if.c b/libbridge/libbridge_if.c
+index 5f3aed1..96dda30 100644
+--- a/libbridge/libbridge_if.c
++++ b/libbridge/libbridge_if.c
+@@ -16,12 +16,9 @@
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+-#include <stdio.h>
+-#include <stdlib.h>
+ #include <errno.h>
+-#include <string.h>
+-#include <fcntl.h>
+ #include <sys/ioctl.h>
++#include <linux/sockios.h>
+
+ #include "libbridge.h"
+ #include "libbridge_private.h"
+diff --git a/libbridge/libbridge_init.c b/libbridge/libbridge_init.c
+index c914971..d572895 100644
+--- a/libbridge/libbridge_init.c
++++ b/libbridge/libbridge_init.c
+@@ -16,14 +16,16 @@
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
++#include <limits.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <errno.h>
+ #include <string.h>
+ #include <dirent.h>
+-#include <sys/types.h>
+ #include <sys/stat.h>
++#include <sys/ioctl.h>
++#include <linux/sockios.h>
+
+ #include "libbridge.h"
+ #include "libbridge_private.h"
+diff --git a/libbridge/libbridge_misc.c b/libbridge/libbridge_misc.c
+index 9379e93..5b146fd 100644
+--- a/libbridge/libbridge_misc.c
++++ b/libbridge/libbridge_misc.c
+@@ -16,14 +16,11 @@
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+-#include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include <sys/time.h>
+ #include <asm/param.h>
+-#include "libbridge.h"
+-#include "libbridge_private.h"
+
++#include "libbridge.h"
+
+ static const char *state_names[5] = {
+ [BR_STATE_DISABLED] = "disabled",
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/bridge-utils/bridge-utils_1.6.bb b/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.1.bb
index 1c87c48bfa..cf0fc1c33d 100644
--- a/meta-networking/recipes-support/bridge-utils/bridge-utils_1.6.bb
+++ b/meta-networking/recipes-support/bridge-utils/bridge-utils_1.7.1.bb
@@ -1,17 +1,18 @@
SUMMARY = "Tools for ethernet bridging"
HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/bridge"
SECTION = "net"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=f9d20a453221a1b7e32ae84694da2c37"
-SRCREV = "42c1aefc303fdf891fbb099ea51f00dca83ab606"
+SRCREV = "75d949b9fae9718201422f0bd3d1103e67dd597c"
SRC_URI = "\
- git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/bridge-utils.git \
- file://kernel-headers.patch \
- file://0005-build-don-t-ignore-CFLAGS-from-environment.patch \
- file://0006-libbridge-Modifying-the-AR-to-cross-toolchain.patch \
+ git://git.kernel.org/pub/scm/network/bridge/bridge-utils.git;branch=main \
+ file://0001-include-missing-kernel-header.patch \
+ file://0002-build-don-t-ignore-CFLAGS-from-environment.patch \
+ file://0003-libbridge-Modifying-the-AR-to-cross-toolchain.patch \
+ file://0004-cleanup-includes.patch \
"
S = "${WORKDIR}/git"
@@ -20,16 +21,16 @@ DEPENDS = "sysfsutils"
inherit autotools-brokensep update-alternatives
-ALTERNATIVE_${PN} = "brctl"
+ALTERNATIVE:${PN} = "brctl"
ALTERNATIVE_PRIORITY[brctl] = "100"
ALTERNATIVE_LINK_NAME[brctl] = "${sbindir}/brctl"
EXTRA_OECONF = "--with-linux-headers=${STAGING_INCDIR}"
-do_install_append () {
+do_install:append () {
install -d ${D}/${datadir}/bridge-utils
install -d ${D}/${sysconfdir}/network/if-pre-up.d
install -d ${D}/${sysconfdir}/network/if-post-down.d
}
-RRECOMMENDS_${PN} = "kernel-module-bridge"
+RRECOMMENDS:${PN} = "kernel-module-bridge"
diff --git a/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch b/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch
deleted file mode 100644
index 8cadb2bbab..0000000000
--- a/meta-networking/recipes-support/c-ares/c-ares/cmake-install-libcares.pc.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From 12414304245cce6ef0e8b9547949be5109845353 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 13:33:33 +0800
-Subject: [PATCH] cmake: Install libcares.pc
-
-Prepare and install libcares.pc file during cmake build, so libraries
-using pkg-config to find libcares will not fail.
-
-Signed-off-by: Alexey Firago <alexey_firago@mentor.com>
-
-update to 1.14.0, fix patch warning
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- CMakeLists.txt | 23 +++++++++++++++++++++++
- libcares.pc.cmakein | 20 ++++++++++++++++++++
- 2 files changed, 43 insertions(+)
- create mode 100644 libcares.pc.cmakein
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 60a880c..71eaa53 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -193,22 +193,30 @@ ADD_DEFINITIONS(${SYSFLAGS})
-
-
- # Tell C-Ares about libraries to depend on
-+# Also pass these libraries to pkg-config file
-+SET(CARES_PRIVATE_LIBS_LIST)
- IF (HAVE_LIBRESOLV)
- LIST (APPEND CARES_DEPENDENT_LIBS resolv)
-+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lresolv")
- ENDIF ()
- IF (HAVE_LIBNSL)
- LIST (APPEND CARES_DEPENDENT_LIBS nsl)
-+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lnsl")
- ENDIF ()
- IF (HAVE_LIBSOCKET)
- LIST (APPEND CARES_DEPENDENT_LIBS socket)
-+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lsocket")
- ENDIF ()
- IF (HAVE_LIBRT)
- LIST (APPEND CARES_DEPENDENT_LIBS rt)
-+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lrt")
- ENDIF ()
- IF (WIN32)
- LIST (APPEND CARES_DEPENDENT_LIBS ws2_32)
-+ LIST (APPEND CARES_PRIVATE_LIBS_LIST "-lws2_32")
- ENDIF ()
-
-+string (REPLACE ";" " " CARES_PRIVATE_LIBS "${CARES_PRIVATE_LIBS_LIST}")
-
- # When checking for symbols, we need to make sure we set the proper
- # headers, libraries, and definitions for the detection to work properly
-@@ -514,6 +522,15 @@ CONFIGURE_FILE (ares_build.h.cmake ${PROJECT_BINARY_DIR}/ares_build.h)
- # Write ares_config.h configuration file. This is used only for the build.
- CONFIGURE_FILE (ares_config.h.cmake ${PROJECT_BINARY_DIR}/ares_config.h)
-
-+# Pass required CFLAGS to pkg-config in case of static library
-+IF (CARES_STATIC)
-+ SET (CPPFLAG_CARES_STATICLIB "-DCARES_STATICLIB")
-+ENDIF()
-+
-+# Write ares_config.h configuration file. This is used only for the build.
-+CONFIGURE_FILE (libcares.pc.cmakein ${PROJECT_BINARY_DIR}/libcares.pc @ONLY)
-+
-+
-
- # TRANSFORM_MAKEFILE_INC
- #
-@@ -664,6 +681,12 @@ IF (CARES_INSTALL)
- INSTALL (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcares.pc" DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
- ENDIF ()
-
-+# pkg-config file
-+IF (CARES_INSTALL)
-+ SET (PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
-+ INSTALL (FILES "${CMAKE_CURRENT_BINARY_DIR}/libcares.pc" DESTINATION ${PKGCONFIG_INSTALL_DIR})
-+ENDIF ()
-+
- # Legacy chain-building variables (provided for compatibility with old code).
- # Don't use these, external code should be updated to refer to the aliases directly (e.g., Cares::cares).
- SET (CARES_FOUND 1 CACHE INTERNAL "CARES LIBRARY FOUND")
-diff --git a/libcares.pc.cmakein b/libcares.pc.cmakein
-new file mode 100644
-index 0000000..3579256
---- /dev/null
-+++ b/libcares.pc.cmakein
-@@ -0,0 +1,20 @@
-+#***************************************************************************
-+# Project ___ __ _ _ __ ___ ___
-+# / __|____ / _` | '__/ _ \/ __|
-+# | (_|_____| (_| | | | __/\__ \
-+# \___| \__,_|_| \___||___/
-+#
-+prefix=@CMAKE_INSTALL_PREFIX@
-+exec_prefix=@CMAKE_INSTALL_PREFIX@
-+libdir=@CMAKE_INSTALL_FULL_LIBDIR@
-+includedir=@CMAKE_INSTALL_FULL_INCLUDEDIR@
-+
-+Name: c-ares
-+URL: http://daniel.haxx.se/projects/c-ares/
-+Description: asynchronous DNS lookup library
-+Version: @VERSION@
-+Requires:
-+Requires.private:
-+Cflags: -I${includedir} @CPPFLAG_CARES_STATICLIB@
-+Libs: -L${libdir} -lcares
-+Libs.private: @CARES_PRIVATE_LIBS@
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/c-ares/c-ares_1.15.0.bb b/meta-networking/recipes-support/c-ares/c-ares_1.15.0.bb
deleted file mode 100644
index d437529dc4..0000000000
--- a/meta-networking/recipes-support/c-ares/c-ares_1.15.0.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright (c) 2012-2014 LG Electronics, Inc.
-SUMMARY = "c-ares is a C library that resolves names asynchronously."
-HOMEPAGE = "http://daniel.haxx.se/projects/c-ares/"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=fb997454c8d62aa6a47f07a8cd48b006"
-
-PV = "1.15.0+gitr${SRCPV}"
-
-SRC_URI = "\
- git://github.com/c-ares/c-ares.git \
- file://cmake-install-libcares.pc.patch \
-"
-SRCREV = "e982924acee7f7313b4baa4ee5ec000c5e373c30"
-
-UPSTREAM_CHECK_GITTAGREGEX = "cares-(?P<pver>\d+_(\d_?)+)"
-
-S = "${WORKDIR}/git"
-
-inherit cmake pkgconfig
-
-PACKAGES =+ "${PN}-utils"
-
-FILES_${PN}-utils = "${bindir}"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/celt051/celt051_git.bb b/meta-networking/recipes-support/celt051/celt051_git.bb
index 116800522a..4842a0fbdf 100644
--- a/meta-networking/recipes-support/celt051/celt051_git.bb
+++ b/meta-networking/recipes-support/celt051/celt051_git.bb
@@ -9,14 +9,14 @@ with high quality. Unlike these formats CELT imposes very little delay \
on the signal, even less than is typical for speech centric formats \
like Speex, GSM, or G.729."
-LICENSE = "BSD"
+LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=375f60ab360d17f0172737036ff155b2"
-PV = "0.5.1.3+git${SRCPV}"
+PV = "0.5.1.3+git"
SRCREV = "5555aae843f57241d005e330b9cb65602d56db0f"
-SRC_URI = "git://git.xiph.org/celt.git;branch=compat-v0.5.1;protocol=https \
+SRC_URI = "git://gitlab.xiph.org/xiph/celt.git;branch=compat-v0.5.1;protocol=https \
file://0001-configure.ac-make-tools-support-optional.patch \
file://0001-tests-Include-entcode.c-into-test-sources-to-provide.patch \
"
@@ -25,7 +25,7 @@ S = "${WORKDIR}/git"
inherit pkgconfig autotools-brokensep
-PACKAGECONFIG_class-native = ""
+PACKAGECONFIG:class-native = ""
PACKAGECONFIG ??= ""
PACKAGECONFIG[ogg] = "--enable-tools,--disable-tools,libogg,"
diff --git a/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch b/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch
new file mode 100644
index 0000000000..5e2bc64af3
--- /dev/null
+++ b/meta-networking/recipes-support/chrony/chrony/0001-Fix-compilation-with-musl.patch
@@ -0,0 +1,31 @@
+From 11ec10cdb5ab4b94c5999e018a9c854419997761 Mon Sep 17 00:00:00 2001
+From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+Date: Wed, 10 Apr 2019 03:18:17 +0200
+Subject: [PATCH] Fix compilation with musl
+
+Fixes:
+../hash_intmd5.c:58: undefined reference to `MIN'
+
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+---
+Upstream-Status: Pending
+
+ hash_intmd5.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/hash_intmd5.c b/hash_intmd5.c
+index 49da1cf..47efe4c 100644
+--- a/hash_intmd5.c
++++ b/hash_intmd5.c
+@@ -33,6 +33,8 @@
+
+ #include "md5.c"
+
++#include <sys/param.h>
++
+ static MD5_CTX ctx;
+
+ int
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch b/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
index 9f943cdce5..b9bb374e53 100644
--- a/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
+++ b/meta-networking/recipes-support/chrony/chrony/arm_eabi.patch
@@ -1,64 +1,82 @@
-From 9ca48a6fef1da1bb0dd67ab94256c7e240da1834 Mon Sep 17 00:00:00 2001
+From 71c44c214c0ab8dc8e9675e5e862f2e342fcb271 Mon Sep 17 00:00:00 2001
From: Joe Slater <jslater@windriver.com>
Date: Thu, 9 Mar 2017 10:58:06 -0800
-Subject: [PATCH] chrony: fix build failure for arma9
+Subject: [PATCH] chrony: fix build failure for arma9
- Eliminate references to syscalls not available
- for ARM_EABI. Also add a dependency on libseccomp
- which is needed for scfilter to work.
+Eliminate references to syscalls not available
+for ARM_EABI. Also add a dependency on libseccomp
+which is needed for scfilter to work.
- Set PACKAGECONFIG to not enable scfilter, since
- kernel CONFIG_SECCOMP is unlikely to be set. This
- aligns the usage of libseccomp with that of other packages.
+Set PACKAGECONFIG to not enable scfilter, since
+kernel CONFIG_SECCOMP is unlikely to be set. This
+aligns the usage of libseccomp with that of other packages.
- Upstream-Status: Pending
+Upstream-Status: Pending
- Signed-off-by: Joe Slater <jslater@windriver.com>
+Signed-off-by: Joe Slater <jslater@windriver.com>
- Refresh patch for new upstream version.
+Refresh patch for new upstream version.
- Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
+Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
+
+Refreshed for 4.0
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- sys_linux.c | 19 +++++++++++++------
- 1 file changed, 13 insertions(+), 6 deletions(-)
+ sys_linux.c | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/sys_linux.c b/sys_linux.c
-index f4b532d..d05fa24 100644
+index 6849637..10f9a57 100644
--- a/sys_linux.c
+++ b/sys_linux.c
-@@ -482,14 +482,14 @@ SYS_Linux_EnableSystemCallFilter(int level)
- const int syscalls[] = {
- /* Clock */
- SCMP_SYS(adjtimex), SCMP_SYS(clock_gettime), SCMP_SYS(gettimeofday),
-- SCMP_SYS(settimeofday), SCMP_SYS(time),
-+ SCMP_SYS(settimeofday),
+@@ -485,7 +485,6 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
+ #endif
+ SCMP_SYS(gettimeofday),
+ SCMP_SYS(settimeofday),
+- SCMP_SYS(time),
+
/* Process */
- SCMP_SYS(clone), SCMP_SYS(exit), SCMP_SYS(exit_group), SCMP_SYS(getpid),
-- SCMP_SYS(getrlimit), SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
-+ SCMP_SYS(rt_sigaction), SCMP_SYS(rt_sigreturn),
- SCMP_SYS(rt_sigprocmask), SCMP_SYS(set_tid_address), SCMP_SYS(sigreturn),
- SCMP_SYS(wait4),
+ SCMP_SYS(clone),
+@@ -495,7 +494,6 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
+ SCMP_SYS(exit),
+ SCMP_SYS(exit_group),
+ SCMP_SYS(getpid),
+- SCMP_SYS(getrlimit),
+ SCMP_SYS(getuid),
+ SCMP_SYS(getuid32),
+ #ifdef __NR_membarrier
+@@ -515,7 +513,6 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
/* Memory */
-- SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap), SCMP_SYS(mmap2),
-+ SCMP_SYS(brk), SCMP_SYS(madvise), SCMP_SYS(mmap2),
- SCMP_SYS(mprotect), SCMP_SYS(mremap), SCMP_SYS(munmap), SCMP_SYS(shmdt),
- /* Filesystem */
- SCMP_SYS(access), SCMP_SYS(chmod), SCMP_SYS(chown), SCMP_SYS(chown32),
-@@ -500,14 +500,21 @@ SYS_Linux_EnableSystemCallFilter(int level)
- SCMP_SYS(bind), SCMP_SYS(connect), SCMP_SYS(getsockname), SCMP_SYS(getsockopt),
- SCMP_SYS(recvfrom), SCMP_SYS(recvmmsg), SCMP_SYS(recvmsg),
- SCMP_SYS(sendmmsg), SCMP_SYS(sendmsg), SCMP_SYS(sendto),
+ SCMP_SYS(brk),
+ SCMP_SYS(madvise),
+- SCMP_SYS(mmap),
+ SCMP_SYS(mmap2),
+ SCMP_SYS(mprotect),
+ SCMP_SYS(mremap),
+@@ -575,8 +572,6 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
+ SCMP_SYS(sendmsg),
+ SCMP_SYS(sendto),
+ SCMP_SYS(shutdown),
- /* TODO: check socketcall arguments */
- SCMP_SYS(socketcall),
+
/* General I/O */
- SCMP_SYS(_newselect), SCMP_SYS(close), SCMP_SYS(open), SCMP_SYS(openat), SCMP_SYS(pipe),
-- SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex), SCMP_SYS(select),
-+ SCMP_SYS(poll), SCMP_SYS(read), SCMP_SYS(futex),
- SCMP_SYS(set_robust_list), SCMP_SYS(write),
- /* Miscellaneous */
- SCMP_SYS(getrandom), SCMP_SYS(sysinfo), SCMP_SYS(uname),
-+ /* not always available */
+ SCMP_SYS(_newselect),
+@@ -600,7 +595,6 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
+ #ifdef __NR_futex_time64
+ SCMP_SYS(futex_time64),
+ #endif
+- SCMP_SYS(select),
+ SCMP_SYS(set_robust_list),
+ SCMP_SYS(write),
+ SCMP_SYS(writev),
+@@ -609,6 +603,15 @@ SYS_Linux_EnableSystemCallFilter(int level, SYS_ProcessContext context)
+ SCMP_SYS(getrandom),
+ SCMP_SYS(sysinfo),
+ SCMP_SYS(uname),
++ /* not always available */
+#if ! defined(__ARM_EABI__)
+ SCMP_SYS(time),
+ SCMP_SYS(getrlimit),
@@ -69,4 +87,4 @@ index f4b532d..d05fa24 100644
+#endif
};
- const int socket_domains[] = {
+ const int denied_any[] = {
diff --git a/meta-networking/recipes-support/chrony/chrony/chrony.conf b/meta-networking/recipes-support/chrony/chrony/chrony.conf
index 8d226d31a5..d11e2d4069 100644
--- a/meta-networking/recipes-support/chrony/chrony/chrony.conf
+++ b/meta-networking/recipes-support/chrony/chrony/chrony.conf
@@ -1,3 +1,6 @@
+# Load config files matching the /etc/chrony/conf.d/*.conf pattern.
+confdir /etc/chrony/conf.d
+
# Use public NTP servers from the pool.ntp.org project.
# Please consider joining the pool project if possible by running your own
# server(s).
@@ -17,6 +20,10 @@ pool 0.openembedded.pool.ntp.org iburst
# gpios = <&ps7_gpio_0 56 0>;
# };
+# Load source files matching the /etc/chrony/sources.d/*.sources pattern.
+# These can be reloaded using 'chronyc reload sources'.
+sourcedir /etc/chrony/sources.d
+
# In first three updates step the system clock instead of slew
# if the adjustment is larger than 1 second.
makestep 1.0 3
diff --git a/meta-networking/recipes-support/chrony/chrony/chronyd b/meta-networking/recipes-support/chrony/chrony/chronyd
index 04f1b681c4..8c7c167b3c 100644
--- a/meta-networking/recipes-support/chrony/chrony/chronyd
+++ b/meta-networking/recipes-support/chrony/chrony/chronyd
@@ -15,7 +15,7 @@
PATH=/sbin:/bin:/usr/bin:/usr/sbin
DAEMON=/usr/sbin/chronyd
-PIDFILE=/var/run/chronyd.pid
+PIDFILE=/run/chrony/chronyd.pid
test -x $DAEMON -a -r /etc/chrony.conf || exit 0
diff --git a/meta-networking/recipes-support/chrony/chrony_3.3.bb b/meta-networking/recipes-support/chrony/chrony_4.5.bb
index 2586370fa7..ed26e59879 100644
--- a/meta-networking/recipes-support/chrony/chrony_3.3.bb
+++ b/meta-networking/recipes-support/chrony/chrony_4.5.bb
@@ -27,7 +27,7 @@ the client program only."
HOMEPAGE = "https://chrony.tuxfamily.org/"
SECTION = "net"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI = "https://download.tuxfamily.org/chrony/chrony-${PV}.tar.gz \
@@ -35,24 +35,24 @@ SRC_URI = "https://download.tuxfamily.org/chrony/chrony-${PV}.tar.gz \
file://chronyd \
file://arm_eabi.patch \
"
-SRC_URI[md5sum] = "81ab62cf5d60b4b3fa8cd2c1b267ffd9"
-SRC_URI[sha256sum] = "0d1fb2d5875032f2d5a86f3770374c87ee4c941916f64171e81f7684f2a73128"
+
+SRC_URI:append:libc-musl = " \
+ file://0001-Fix-compilation-with-musl.patch \
+"
+SRC_URI[sha256sum] = "19fe1d9f4664d445a69a96c71e8fdb60bcd8df24c73d1386e02287f7366ad422"
DEPENDS = "pps-tools"
# Note: Despite being built via './configure; make; make install',
# chrony does not use GNU Autotools.
-inherit update-rc.d systemd
+inherit update-rc.d systemd pkgconfig
+
+# Add chronyd user if privdrop packageconfig is selected
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'privdrop', 'useradd', '', d)}
+USERADD_PACKAGES = "${@bb.utils.contains('PACKAGECONFIG', 'privdrop', '${PN}', '', d)}"
+USERADD_PARAM:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'privdrop', '--system -d / -M --shell /bin/nologin chronyd;', '', d)}"
# Configuration options:
-# - For command line editing support in chronyc, you may specify either
-# 'editline' or 'readline' but not both. editline is smaller, but
-# many systems already have readline for other purposes so you might want
-# to choose that instead. However, beware license incompatibility
-# since chrony is GPLv2 and readline versions after 6.0 are GPLv3+.
-# You can of course choose neither, but if you're that tight on space
-# consider dropping chronyc entirely (you can use it remotely with
-# appropriate chrony.conf options).
# - Security-related:
# - 'sechash' is omitted by default because it pulls in nss which is huge.
# - 'privdrop' allows chronyd to run as non-root; would need changes to
@@ -62,14 +62,11 @@ inherit update-rc.d systemd
PACKAGECONFIG ??= "editline \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"
-PACKAGECONFIG[readline] = "--without-editline,--without-readline,readline"
PACKAGECONFIG[editline] = ",--without-editline,libedit"
PACKAGECONFIG[sechash] = "--without-tomcrypt,--disable-sechash,nss"
PACKAGECONFIG[privdrop] = ",--disable-privdrop,libcap"
PACKAGECONFIG[scfilter] = "--enable-scfilter,--without-seccomp,libseccomp"
PACKAGECONFIG[ipv6] = ",--disable-ipv6,"
-PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss"
-PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
# --disable-static isn't supported by chrony's configure script.
DISABLE_STATIC = ""
@@ -77,6 +74,10 @@ DISABLE_STATIC = ""
do_configure() {
./configure --sysconfdir=${sysconfdir} --bindir=${bindir} --sbindir=${sbindir} \
--localstatedir=${localstatedir} --datarootdir=${datadir} \
+ --with-ntp-era=$(shell date -d '1970-01-01 00:00:00+00:00' +'%s') \
+ --with-pidfile=/run/chrony/chronyd.pid \
+ --chronyrundir=/run/chrony \
+ --host-system=Linux \
${PACKAGECONFIG_CONFARGS}
}
@@ -90,6 +91,10 @@ do_install() {
# Config file
install -d ${D}${sysconfdir}
install -m 644 ${WORKDIR}/chrony.conf ${D}${sysconfdir}
+ if ${@bb.utils.contains('PACKAGECONFIG', 'privdrop', 'true', 'false', d)}; then
+ echo "# Define user to drop to after dropping root privileges" >> ${D}${sysconfdir}/chrony.conf
+ echo "user chronyd" >> ${D}${sysconfdir}/chrony.conf
+ fi
# System V init script
install -d ${D}${sysconfdir}/init.d
@@ -102,9 +107,6 @@ do_install() {
# Variable data (for drift and/or rtc file)
install -d ${D}${localstatedir}/lib/chrony
- # Log files
- install -d ${D}${localstatedir}/log/chrony
-
# Fix hard-coded paths in config files and init scripts
sed -i -e 's!/var/!${localstatedir}/!g' -e 's!/etc/!${sysconfdir}/!g' \
-e 's!/usr/sbin/!${sbindir}/!g' -e 's!/usr/bin/!${bindir}/!g' \
@@ -113,22 +115,26 @@ do_install() {
${D}${systemd_unitdir}/system/chronyd.service
sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/chronyd
sed -i 's!^EnvironmentFile=.*!EnvironmentFile=-${sysconfdir}/default/chronyd!' ${D}${systemd_unitdir}/system/chronyd.service
+
+ install -d ${D}${sysconfdir}/tmpfiles.d
+ echo "d /var/lib/chrony 0755 root root -" > ${D}${sysconfdir}/tmpfiles.d/chronyd.conf
+
}
-FILES_${PN} = "${sbindir}/chronyd ${sysconfdir} ${localstatedir}"
-CONFFILES_${PN} = "${sysconfdir}/chrony.conf"
+FILES:${PN} = "${sbindir}/chronyd ${sysconfdir} ${localstatedir}/lib/chrony ${localstatedir}"
+CONFFILES:${PN} = "${sysconfdir}/chrony.conf"
INITSCRIPT_NAME = "chronyd"
INITSCRIPT_PARAMS = "defaults"
SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "chronyd.service"
+SYSTEMD_SERVICE:${PN} = "chronyd.service"
# It's probably a bad idea to run chrony and another time daemon on
# the same system. systemd includes the SNTP client 'timesyncd', which
# will be disabled by chronyd.service, however it will remain on the rootfs
-# wasting 150 kB unless you put 'PACKAGECONFIG_remove_pn-systemd = "timesyncd"'
+# wasting 150 kB unless you put 'PACKAGECONFIG:remove:pn-systemd = "timesyncd"'
# in a conf file or bbappend somewhere.
-RCONFLICTS_${PN} = "ntp ntimed"
+RCONFLICTS:${PN} = "ntp ntimed"
# Separate the client program into its own package
PACKAGES =+ "chronyc"
-FILES_chronyc = "${bindir}/chronyc"
+FILES:chronyc = "${bindir}/chronyc"
diff --git a/meta-networking/recipes-support/cifs/cifs-utils_7.0.bb b/meta-networking/recipes-support/cifs/cifs-utils_7.0.bb
new file mode 100644
index 0000000000..c78bbae7b8
--- /dev/null
+++ b/meta-networking/recipes-support/cifs/cifs-utils_7.0.bb
@@ -0,0 +1,44 @@
+DESCRIPTION = "A a package of utilities for doing and managing mounts of the Linux CIFS filesystem."
+HOMEPAGE = "http://wiki.samba.org/index.php/LinuxCIFS_utils"
+SECTION = "otherosfs"
+LICENSE = "GPL-3.0-only & LGPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRCREV = "316522036133d44ed02cd39ed2748e2b59c85b30"
+SRC_URI = "git://git.samba.org/cifs-utils.git;branch=master"
+
+S = "${WORKDIR}/git"
+DEPENDS += "libtalloc"
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[cap] = "--with-libcap,--without-libcap,libcap"
+# when enabled, it creates ${bindir}/cifscreds and --ignore-fail-on-non-empty in do_install:append is needed
+PACKAGECONFIG[cifscreds] = "--enable-cifscreds,--disable-cifscreds,keyutils"
+# when enabled, it creates ${sbindir}/cifs.upcall and --ignore-fail-on-non-empty in do_install:append is needed
+PACKAGECONFIG[cifsupcall] = "--enable-cifsupcall,--disable-cifsupcall,krb5 libtalloc keyutils"
+PACKAGECONFIG[cifsidmap] = "--enable-cifsidmap,--disable-cifsidmap,keyutils samba"
+PACKAGECONFIG[cifsacl] = "--enable-cifsacl,--disable-cifsacl,samba"
+PACKAGECONFIG[pam] = "--enable-pam --with-pamdir=${base_libdir}/security,--disable-pam,libpam keyutils"
+
+inherit autotools pkgconfig
+
+do_configure:prepend() {
+ # want installed to /usr/sbin rather than /sbin to be DISTRO_FEATURES usrmerge compliant
+ # must override ROOTSBINDIR (default '/sbin'),
+ # setting --exec-prefix or --prefix in EXTRA_OECONF does not work
+ if ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then
+ export ROOTSBINDIR=${sbindir}
+ fi
+}
+
+do_install:append() {
+ if ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','false','true',d)}; then
+ # Remove empty /usr/bin and /usr/sbin directories since the mount helper
+ # is installed to /sbin
+ rmdir --ignore-fail-on-non-empty ${D}${bindir} ${D}${sbindir}
+ fi
+}
+
+FILES:${PN} += "${base_libdir}/security"
+FILES:${PN}-dbg += "${base_libdir}/security/.debug"
+RRECOMMENDS:${PN} = "kernel-module-cifs"
diff --git a/meta-networking/recipes-support/cifs/cifs-utils_git.bb b/meta-networking/recipes-support/cifs/cifs-utils_git.bb
deleted file mode 100644
index 198e3ef987..0000000000
--- a/meta-networking/recipes-support/cifs/cifs-utils_git.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-DESCRIPTION = "A a package of utilities for doing and managing mounts of the Linux CIFS filesystem."
-HOMEPAGE = "http://wiki.samba.org/index.php/LinuxCIFS_utils"
-SECTION = "otherosfs"
-LICENSE = "GPLv3 & LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-PV = "6.7"
-
-SRCREV = "8101a07871f185c7044fa2ca221b282ab4607c8b"
-SRC_URI = "git://git.samba.org/cifs-utils.git \
- file://0001-mount.cifs-Remove-data_blob.h-include.patch \
- "
-
-S = "${WORKDIR}/git"
-DEPENDS += "libtalloc"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[cap] = "--with-libcap,--without-libcap,libcap"
-# when enabled, it creates ${bindir}/cifscreds and --ignore-fail-on-non-empty in do_install_append is needed
-PACKAGECONFIG[cifscreds] = "--enable-cifscreds,--disable-cifscreds,keyutils"
-# when enabled, it creates ${sbindir}/cifs.upcall and --ignore-fail-on-non-empty in do_install_append is needed
-PACKAGECONFIG[cifsupcall] = "--enable-cifsupcall,--disable-cifsupcall,krb5 libtalloc keyutils"
-PACKAGECONFIG[cifsidmap] = "--enable-cifsidmap,--disable-cifsidmap,keyutils samba"
-PACKAGECONFIG[cifsacl] = "--enable-cifsacl,--disable-cifsacl,samba"
-PACKAGECONFIG[pam] = "--enable-pam --with-pamdir=${base_libdir}/security,--disable-pam,libpam keyutils"
-
-inherit autotools pkgconfig
-
-do_install_append() {
- # Remove empty /usr/bin and /usr/sbin directories since the mount helper
- # is installed to /sbin
- rmdir --ignore-fail-on-non-empty ${D}${bindir} ${D}${sbindir}
-}
-
-FILES_${PN} += "${base_libdir}/security"
-FILES_${PN}-dbg += "${base_libdir}/security/.debug"
-RRECOMMENDS_${PN} = "kernel-module-cifs"
diff --git a/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch b/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch
deleted file mode 100644
index 07f2a57264..0000000000
--- a/meta-networking/recipes-support/cifs/files/0001-mount.cifs-Remove-data_blob.h-include.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: S. Lockwood-Childs <sjl@vctlabs.com>
-
-From 272d523a57a4e8791d625a479128613be5e401f5 Mon Sep 17 00:00:00 2001
-From: Thomas Witt <pyromaniac@exherbo.org>
-Date: Wed, 15 Mar 2017 20:20:44 +0000
-Subject: [PATCH] mount.cifs: Remove data_blob.h include
-
-data_blob.h includes talloc.h from libtalloc, but that is only marked as
-a dependency for cifs.upcall. No symbols from that header are used by
-cifs.mount, so remove it to avoid the libtalloc dependency
-
-Signed-off-by: Thomas Witt <pyromaniac@exherbo.org>
----
- mount.cifs.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/mount.cifs.c b/mount.cifs.c
-index 13b71ef..2612feb 100644
---- a/mount.cifs.c
-+++ b/mount.cifs.c
-@@ -61,7 +61,6 @@
- #include "mount.h"
- #include "util.h"
- #include "resolve_host.h"
--#include "data_blob.h"
-
- #ifndef MS_MOVE
- #define MS_MOVE 8192
---
-1.9.4
-
diff --git a/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb b/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb
index 31875ea50f..62daf3279d 100644
--- a/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb
+++ b/meta-networking/recipes-support/cim-schema/cim-schema-docs_2.40.0.bb
@@ -4,22 +4,17 @@ SECTION = "doc"
LICENSE = "DMTF"
-SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-Doc.zip \
+SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-Doc.zip;subdir=${BP} \
file://LICENSE \
"
SRC_URI[md5sum] = "3d01940bc1085c6c42184c25fb61f739"
SRC_URI[sha256sum] = "3174cf0f8657b19d80dc59e184778d8e553da424728cb2966fe9d5428dd84267"
LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=eecc6f71a56ff3caf17f15bf7aeac7b4"
-do_unpack() {
- unzip -q ${DL_DIR}/cim_schema_${PV}Final-Doc.zip -d ${S}
- cp -f ${FILE_DIRNAME}/files/LICENSE ${WORKDIR}/
-}
-
do_install() {
install -d -m 0755 ${D}${datadir}/doc/cim-schema-${PV}-docs
cp -R --no-dereference --preserve=mode,links -v ${S}/* ${D}${datadir}/doc/cim-schema-${PV}-docs
}
-FILES_${PN} = "${datadir}/doc/*"
-FILES_${PN}-doc = ""
+FILES:${PN} = "${datadir}/doc/*"
+FILES:${PN}-doc = ""
diff --git a/meta-networking/recipes-support/cim-schema/cim-schema-exper_2.50.0.bb b/meta-networking/recipes-support/cim-schema/cim-schema-exper_2.50.0.bb
index 90ea882b73..7d51bc1c91 100644
--- a/meta-networking/recipes-support/cim-schema/cim-schema-exper_2.50.0.bb
+++ b/meta-networking/recipes-support/cim-schema/cim-schema-exper_2.50.0.bb
@@ -2,7 +2,7 @@ require cim-schema.inc
LICENSE = "DMTF"
-RCONFLICTS_${PN} = "cim-schema-final"
+RCONFLICTS:${PN} = "cim-schema-final"
SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2500/cim_schema_${PV}Experimental-MOFs.zip;subdir=${BPN}-${PV} \
file://LICENSE \
@@ -25,5 +25,5 @@ do_install() {
ln -s cim_schema_${PV}.mof ${D}${datadir}/mof/cim-current/CIM_Schema.mof
}
-FILES_${PN} = "${datadir}/mof/* ${datadir}/doc/*"
-FILES_${PN}-doc = ""
+FILES:${PN} = "${datadir}/mof/* ${datadir}/doc/*"
+FILES:${PN}-doc = ""
diff --git a/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb b/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb
index a14de46db6..32bd8acbb9 100644
--- a/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb
+++ b/meta-networking/recipes-support/cim-schema/cim-schema-final_2.40.0.bb
@@ -2,20 +2,15 @@ require cim-schema.inc
LICENSE = "DMTF"
-RCONFLICTS_${PN} = "cim-schema-exper"
+RCONFLICTS:${PN} = "cim-schema-exper"
-SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-MOFs.zip \
+SRC_URI = "http://dmtf.org/sites/default/files/cim/cim_schema_v2400/cim_schema_${PV}Final-MOFs.zip;subdir=${BP} \
file://LICENSE \
"
SRC_URI[md5sum] = "a9bdf17c7374e3b5b7adeaac4842c4ad"
SRC_URI[sha256sum] = "dbfa3064ea427acd71a4bebbc172ca2dc44b0b09a6d83b0945b9ffa988a9058a"
LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=eecc6f71a56ff3caf17f15bf7aeac7b4"
-do_unpack() {
- unzip -q ${DL_DIR}/cim_schema_${PV}Final-MOFs.zip -d ${S}
- cp -f ${FILE_DIRNAME}/files/LICENSE ${WORKDIR}/
-}
-
do_install() {
install -d -m 0755 ${D}${datadir}/mof/cimv${PV}/
install -d -m 0755 ${D}${datadir}/doc/cim-schema-${PV}
@@ -30,5 +25,5 @@ do_install() {
ln -s cim_schema_${PV}.mof ${D}${datadir}/mof/cim-current/CIM_Schema.mof
}
-FILES_${PN} = "${datadir}/mof/* ${datadir}/doc/*"
-FILES_${PN}-doc = ""
+FILES:${PN} = "${datadir}/mof/* ${datadir}/doc/*"
+FILES:${PN}-doc = ""
diff --git a/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE b/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE
deleted file mode 100644
index 54a28120ee..0000000000
--- a/meta-networking/recipes-support/cim-schema/cim-schema/files/LICENSE
+++ /dev/null
@@ -1,34 +0,0 @@
-// Copyright 1998-2008 Distributed Management Task Force, Inc. (DMTF).
-// All rights reserved.
-// DMTF is a not-for-profit association of industry members dedicated
-// to promoting enterprise and systems management and interoperability.
-// DMTF specifications and documents may be reproduced by
-// members and non-members, provided that correct attribution is given.
-// As DMTF specifications may be revised from time to time,
-// the particular version and release date should always be noted.
-//
-// Implementation of certain elements of this standard or proposed
-// standard may be subject to third party patent rights, including
-// provisional patent rights (herein "patent rights"). DMTF makes
-// no representations to users of the standard as to the existence
-// of such rights, and is not responsible to recognize, disclose, or
-// identify any or all such third party patent right, owners or
-// claimants, nor for any incomplete or inaccurate identification or
-// disclosure of such rights, owners or claimants. DMTF shall have no
-// liability to any party, in any manner or circumstance, under any
-// legal theory whatsoever, for failure to recognize, disclose, or
-// identify any such third party patent rights, or for such party's
-// reliance on the standard or incorporation thereof in its product,
-// protocols or testing procedures. DMTF shall have no liability to
-// any party implementing such standard, whether such implementation
-// is foreseeable or not, nor to any patent owner or claimant, and shall
-// have no liability or responsibility for costs or losses incurred if
-// a standard is withdrawn or modified after publication, and shall be
-// indemnified and held harmless by any party implementing the
-// standard from any and all claims of infringement by a patent owner
-// for such implementations.
-//
-// For information about patents held by third-parties which have
-// notified the DMTF that, in their opinion, such patent may relate to
-// or impact implementations of DMTF standards, visit
-// http://www.dmtf.org/about/policies/disclosures.php.
diff --git a/meta-networking/recipes-support/curlpp/curlpp/0001-curlpp-config.in-Remove-references-to-absolute-build.patch b/meta-networking/recipes-support/curlpp/curlpp/0001-curlpp-config.in-Remove-references-to-absolute-build.patch
new file mode 100644
index 0000000000..539e9cefb6
--- /dev/null
+++ b/meta-networking/recipes-support/curlpp/curlpp/0001-curlpp-config.in-Remove-references-to-absolute-build.patch
@@ -0,0 +1,40 @@
+From d6eee2d52f31e034f9d84d38a749d86a63d5b769 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 22 May 2023 20:37:47 -0700
+Subject: [PATCH] curlpp-config.in: Remove references to absolute buildpaths
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ extras/curlpp-config.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/extras/curlpp-config.in b/extras/curlpp-config.in
+index b0bd964..1416b94 100644
+--- a/extras/curlpp-config.in
++++ b/extras/curlpp-config.in
+@@ -43,7 +43,7 @@ while test $# -gt 0; do
+
+ case "$1" in
+ --cc)
+- echo @CC@
++ curl-config --cc
+ ;;
+
+ --prefix)
+@@ -73,10 +73,10 @@ while test $# -gt 0; do
+ ;;
+
+ --libs)
+- echo -L@libdir@ @LDFLAGS@ @LIBS@ `curl-config --libs` -lcurlpp
++ echo `curl-config --libs` -lcurlpp
+ ;;
+ --static-libs)
+- echo @libdir_static@/libcurlpp.@libext@ @LDFLAGS@ @LIBS@ `curl-config --static-libs`
++ echo $prefix/@libdir_static@/libcurlpp.@libext@ `curl-config --static-libs`
+ ;;
+
+ *)
+--
+2.40.1
+
diff --git a/meta-networking/recipes-support/curlpp/curlpp_0.8.1.bb b/meta-networking/recipes-support/curlpp/curlpp_0.8.1.bb
index 799cf8611c..131f1873a2 100644
--- a/meta-networking/recipes-support/curlpp/curlpp_0.8.1.bb
+++ b/meta-networking/recipes-support/curlpp/curlpp_0.8.1.bb
@@ -5,9 +5,10 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://doc/LICENSE;md5=fd0c9adf285a69aa3b4faf34384e1029"
DEPENDS = "curl"
-DEPENDS_class-native = "curl-native"
+DEPENDS:class-native = "curl-native"
-SRC_URI = "git://github.com/jpbarrette/curlpp.git"
+SRC_URI = "git://github.com/jpbarrette/curlpp.git;branch=master;protocol=https \
+ file://0001-curlpp-config.in-Remove-references-to-absolute-build.patch"
SRCREV = "592552a165cc569dac7674cb7fc9de3dc829906f"
@@ -16,3 +17,10 @@ S = "${WORKDIR}/git"
inherit cmake pkgconfig binconfig
BBCLASSEXTEND = "native nativesdk"
+
+do_install:append() {
+ sed -e 's@[^ ]*-ffile-prefix-map=[^ "]*@@g' \
+ -e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \
+ -e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \
+ -i ${D}${libdir}/pkgconfig/*.pc
+}
diff --git a/meta-networking/recipes-support/dnsmasq/dnsmasq.inc b/meta-networking/recipes-support/dnsmasq/dnsmasq.inc
deleted file mode 100644
index 4f4bbf144a..0000000000
--- a/meta-networking/recipes-support/dnsmasq/dnsmasq.inc
+++ /dev/null
@@ -1,83 +0,0 @@
-SUMMARY = "Lightweight, easy to configure DNS forwarder and DHCP server"
-HOMEPAGE = "http://www.thekelleys.org.uk/dnsmasq/doc.html"
-SECTION = "net"
-# GPLv3 was added in version 2.41 as license option
-LICENSE = "GPLv2 | GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
- file://COPYING-v3;md5=d32239bcb673463ab874e80d47fae504"
-
-#at least versions 2.69 and prior are moved to the archive folder on the server
-SRC_URI = "http://www.thekelleys.org.uk/dnsmasq/${@['archive/', ''][float(d.getVar('PV').split('.')[1]) > 69]}dnsmasq-${PV}.tar.gz;name=dnsmasq-${PV} \
- file://init \
- file://dnsmasq.conf \
- file://dnsmasq-resolvconf.service \
- file://dnsmasq-noresolvconf.service \
-"
-
-inherit pkgconfig update-rc.d systemd
-
-INITSCRIPT_NAME = "dnsmasq"
-INITSCRIPT_PARAMS = "defaults"
-
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[dbus] = ",,dbus"
-PACKAGECONFIG[idn] = ",,libidn"
-PACKAGECONFIG[conntrack] = ",,libnetfilter-conntrack"
-PACKAGECONFIG[lua] = ",,lua"
-PACKAGECONFIG[resolvconf] = ",,,resolvconf"
-EXTRA_OEMAKE = "\
- 'COPTS=${@bb.utils.contains('PACKAGECONFIG', 'dbus', '-DHAVE_DBUS', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'idn', '-DHAVE_IDN', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'conntrack', '-DHAVE_CONNTRACK', '', d)} \
- ${@bb.utils.contains('PACKAGECONFIG', 'lua', '-DHAVE_LUASCRIPT', '', d)}' \
- 'CFLAGS=${CFLAGS}' \
- 'LDFLAGS=${LDFLAGS}' \
-"
-
-SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'resolvconf', 'file://dnsmasq.resolvconf file://99_dnsmasq file://dnsmasq-resolvconf-helper', '', d)}"
-
-do_compile_append() {
- # build dhcp_release
- cd ${S}/contrib/lease-tools
- oe_runmake
-}
-
-do_install () {
- oe_runmake "PREFIX=${D}${prefix}" \
- "BINDIR=${D}${bindir}" \
- "MANDIR=${D}${mandir}" \
- install
- install -d ${D}${sysconfdir}/ ${D}${sysconfdir}/init.d ${D}${sysconfdir}/dnsmasq.d
- install -m 644 ${WORKDIR}/dnsmasq.conf ${D}${sysconfdir}/
- install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/dnsmasq
-
- install -d ${D}${systemd_unitdir}/system
-
- if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
- install -m 0644 ${WORKDIR}/dnsmasq-resolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
- else
- install -m 0644 ${WORKDIR}/dnsmasq-noresolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
- fi
-
- install -m 0755 ${S}/contrib/lease-tools/dhcp_release ${D}${bindir}
-
- if [ "${@bb.utils.filter('PACKAGECONFIG', 'dbus', d)}" ]; then
- install -d ${D}${sysconfdir}/dbus-1/system.d
- install -m 644 dbus/dnsmasq.conf ${D}${sysconfdir}/dbus-1/system.d/
- fi
- if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
- install -d ${D}${sysconfdir}/resolvconf/update.d/
- install -m 0755 ${WORKDIR}/dnsmasq.resolvconf ${D}${sysconfdir}/resolvconf/update.d/dnsmasq
-
- install -d ${D}${sysconfdir}/default/volatiles
- install -m 0644 ${WORKDIR}/99_dnsmasq ${D}${sysconfdir}/default/volatiles
- install -m 0755 ${WORKDIR}/dnsmasq-resolvconf-helper ${D}${bindir}
- fi
-}
-
-CONFFILES_${PN} = "${sysconfdir}/dnsmasq.conf"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "dnsmasq.service"
diff --git a/meta-networking/recipes-support/dnsmasq/dnsmasq/lua.patch b/meta-networking/recipes-support/dnsmasq/dnsmasq/lua.patch
deleted file mode 100644
index 1bf0f75c12..0000000000
--- a/meta-networking/recipes-support/dnsmasq/dnsmasq/lua.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From be1b3d2d0f1608cba5efee73d6aac5ad0709041b Mon Sep 17 00:00:00 2001
-From: Joe MacDonald <joe_macdonald@mentor.com>
-Date: Tue, 9 Sep 2014 10:24:58 -0400
-Subject: [PATCH] Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-
----
- Makefile | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 73ea23e..ed3eeb9 100644
---- a/Makefile
-+++ b/Makefile
-@@ -59,8 +59,8 @@ idn2_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LIBIDN2 $(PKG_CONFI
- idn2_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LIBIDN2 $(PKG_CONFIG) --libs libidn2`
- ct_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_CONNTRACK $(PKG_CONFIG) --cflags libnetfilter_conntrack`
- ct_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_CONNTRACK $(PKG_CONFIG) --libs libnetfilter_conntrack`
--lua_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CONFIG) --cflags lua5.2`
--lua_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CONFIG) --libs lua5.2`
-+lua_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CONFIG) --cflags lua`
-+lua_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_LUASCRIPT $(PKG_CONFIG) --libs lua`
- nettle_cflags = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG) --cflags nettle hogweed`
- nettle_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC $(PKG_CONFIG) --libs nettle hogweed`
- gmp_libs = `echo $(COPTS) | $(top)/bld/pkg-wrapper HAVE_DNSSEC NO_GMP --copy -lgmp`
---
-2.9.5
-
diff --git a/meta-networking/recipes-support/dnsmasq/dnsmasq_2.80.bb b/meta-networking/recipes-support/dnsmasq/dnsmasq_2.80.bb
deleted file mode 100644
index fdbdefbadc..0000000000
--- a/meta-networking/recipes-support/dnsmasq/dnsmasq_2.80.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require dnsmasq.inc
-
-SRC_URI[dnsmasq-2.80.md5sum] = "1f071fd11454e1cffea73bdadcf70b21"
-SRC_URI[dnsmasq-2.80.sha256sum] = "9e4a58f816ce0033ce383c549b7d4058ad9b823968d352d2b76614f83ea39adc"
-SRC_URI += "\
- file://lua.patch \
-"
-
diff --git a/meta-networking/recipes-support/dnsmasq/dnsmasq_2.90.bb b/meta-networking/recipes-support/dnsmasq/dnsmasq_2.90.bb
new file mode 100644
index 0000000000..38fa271dc3
--- /dev/null
+++ b/meta-networking/recipes-support/dnsmasq/dnsmasq_2.90.bb
@@ -0,0 +1,129 @@
+SUMMARY = "Lightweight, easy to configure DNS forwarder and DHCP server"
+HOMEPAGE = "http://www.thekelleys.org.uk/dnsmasq/doc.html"
+SECTION = "net"
+# GPLv3 was added in version 2.41 as license option
+LICENSE = "GPL-2.0-only | GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
+ file://COPYING-v3;md5=d32239bcb673463ab874e80d47fae504 \
+ "
+
+DEPENDS += "gettext-native"
+
+#at least versions 2.69 and prior are moved to the archive folder on the server
+SRC_URI = "http://www.thekelleys.org.uk/dnsmasq/${@['archive/', ''][float(d.getVar('PV').split('.')[1]) > 69]}dnsmasq-${PV}.tar.gz \
+ file://init \
+ file://dnsmasq.conf \
+ file://dnsmasq-resolvconf.service \
+ file://dnsmasq-noresolvconf.service \
+ file://dnsmasq-resolved.conf \
+"
+SRC_URI[sha256sum] = "8f6666b542403b5ee7ccce66ea73a4a51cf19dd49392aaccd37231a2c51b303b"
+
+inherit pkgconfig update-rc.d systemd
+
+INITSCRIPT_NAME = "dnsmasq"
+INITSCRIPT_PARAMS = "defaults"
+
+# dnsmasq defaults
+PACKAGECONFIG ?= "auth dhcp dhcp6 dumpfile inotify ipset loop script tftp"
+
+PACKAGECONFIG[auth] = "-DHAVE_AUTH,-DNO_AUTH"
+PACKAGECONFIG[broken-rtc] = "-DHAVE_BROKEN_RTC,"
+PACKAGECONFIG[conntrack] = "-DHAVE_CONNTRACK,,libnetfilter-conntrack"
+PACKAGECONFIG[dbus] = "-DHAVE_DBUS,,dbus"
+PACKAGECONFIG[dhcp] = "-DHAVE_DHCP,-DNO_DHCP"
+PACKAGECONFIG[dhcp6] = "-DHAVE_DHCP6,-DNO_DHCP6"
+PACKAGECONFIG[dnssec] = "-DHAVE_DNSSEC,,nettle"
+PACKAGECONFIG[dumpfile] = "-DHAVE_DUMPFILE,-DNO_DUMPFILE"
+PACKAGECONFIG[idn] = "-DHAVE_LIBIDN,,libidn,,,idn2"
+PACKAGECONFIG[idn2] = "-DHAVE_LIBIDN2,,libidn2,,,idn"
+PACKAGECONFIG[inotify] = "-DHAVE_INOTIFY,-DNO_INOTIFY"
+PACKAGECONFIG[ipset] = "-DHAVE_IPSET,-DNO_IPSET"
+PACKAGECONFIG[loop] = "-DHAVE_LOOP,-DNO_LOOP"
+PACKAGECONFIG[lua] = "-DHAVE_LUASCRIPT -DHAVE_SCRIPT,,lua"
+PACKAGECONFIG[nftset] = "-DHAVE_NFTSET,,nftables"
+PACKAGECONFIG[no-gmp] = "-DNO_GMP,"
+PACKAGECONFIG[no-id] = "-DNO_ID,"
+PACKAGECONFIG[resolvconf] = ",,,resolvconf"
+PACKAGECONFIG[script] = "-DHAVE_SCRIPT,-DNO_SCRIPT"
+PACKAGECONFIG[tftp] = "-DHAVE_TFTP,-DNO_TFTP"
+PACKAGECONFIG[ubus] = "-DHAVE_UBUS,,ubus"
+
+DNSMASQ_LEASEFILE ?= "${localstatedir}/lib/misc/dnsmasq.leases"
+DNSMASQ_CONFFILE ?= "${sysconfdir}/dnsmasq.conf"
+DNSMASQ_RESOLVFILE ?= "${sysconfdir}/resolv.conf"
+
+COPTS = "${PACKAGECONFIG_CONFARGS} \
+ -DLEASEFILE=\"${DNSMASQ_LEASEFILE}\" \
+ -DCONFFILE=\"${DNSMASQ_CONFFILE}\" \
+ -DRESOLVFILE=\"${DNSMASQ_RESOLVFILE}\" \
+ -DLOCALEDIR=\"${localedir}\""
+
+EXTRA_OEMAKE = "\
+ 'COPTS=${COPTS}' \
+ 'CFLAGS=${CFLAGS}' \
+ 'LDFLAGS=${LDFLAGS}' \
+"
+
+SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'resolvconf', 'file://dnsmasq.resolvconf file://99_dnsmasq file://dnsmasq-resolvconf-helper', '', d)}"
+
+do_compile () {
+ oe_runmake all-i18n
+ if ${@bb.utils.contains_any('PACKAGECONFIG', ['dhcp', 'dhcp6'], 'true', 'false', d)}; then
+ # build dhcp_release
+ oe_runmake -C ${S}/contrib/lease-tools
+ fi
+}
+
+do_install () {
+ oe_runmake "PREFIX=${D}${prefix}" \
+ "BINDIR=${D}${bindir}" \
+ "MANDIR=${D}${mandir}" \
+ install-i18n
+ install -d ${D}${sysconfdir}/ ${D}${sysconfdir}/init.d ${D}${sysconfdir}/dnsmasq.d
+ install -m 644 ${WORKDIR}/dnsmasq.conf ${D}${sysconfdir}/
+ install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/dnsmasq
+
+ install -d ${D}${systemd_unitdir}/system
+
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
+ install -m 0644 ${WORKDIR}/dnsmasq-resolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
+ else
+ install -m 0644 ${WORKDIR}/dnsmasq-noresolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
+ fi
+
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
+ install -d ${D}${sysconfdir}/systemd/resolved.conf.d/
+ install -m 0644 ${WORKDIR}/dnsmasq-resolved.conf ${D}${sysconfdir}/systemd/resolved.conf.d/
+ fi
+
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'dhcp', d)}" ]; then
+ install -m 0755 ${S}/contrib/lease-tools/dhcp_release ${D}${bindir}
+ install -m 0755 ${S}/contrib/lease-tools/dhcp_lease_time ${D}${bindir}
+ fi
+
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'dhcp6', d)}" ]; then
+ install -m 0755 ${S}/contrib/lease-tools/dhcp_release6 ${D}${bindir}
+ fi
+
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'dbus', d)}" ]; then
+ install -d ${D}${sysconfdir}/dbus-1/system.d
+ install -m 644 dbus/dnsmasq.conf ${D}${sysconfdir}/dbus-1/system.d/
+ fi
+
+ if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
+ install -d ${D}${sysconfdir}/resolvconf/update.d/
+ install -m 0755 ${WORKDIR}/dnsmasq.resolvconf ${D}${sysconfdir}/resolvconf/update.d/dnsmasq
+
+ install -d ${D}${sysconfdir}/default/volatiles
+ install -m 0644 ${WORKDIR}/99_dnsmasq ${D}${sysconfdir}/default/volatiles
+ install -m 0755 ${WORKDIR}/dnsmasq-resolvconf-helper ${D}${bindir}
+ fi
+}
+
+CONFFILES:${PN} = "${sysconfdir}/dnsmasq.conf"
+
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
+SYSTEMD_SERVICE:${PN} = "dnsmasq.service"
diff --git a/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolvconf.service b/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolvconf.service
index 2980f7def6..ef2f3f7e41 100644
--- a/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolvconf.service
+++ b/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolvconf.service
@@ -8,7 +8,7 @@ PIDFile=/run/dnsmasq.pid
ExecStartPre=/usr/bin/dnsmasq --test
ExecStart=/usr/bin/dnsmasq -x /run/dnsmasq.pid -7 /etc/dnsmasq.d --local-service
ExecStartPost=/usr/bin/dnsmasq-resolvconf-helper start
-ExecStopPre=/usr/bin/dnsmasq-resolvconf-helper stop
+ExecStop=/usr/bin/dnsmasq-resolvconf-helper stop
ExecStop=/bin/kill $MAINPID
ExecReload=/bin/kill -HUP $MAINPID
diff --git a/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf b/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf
new file mode 100644
index 0000000000..33f4649637
--- /dev/null
+++ b/meta-networking/recipes-support/dnsmasq/files/dnsmasq-resolved.conf
@@ -0,0 +1,3 @@
+# Avoid conflicts between dnsmasq and systemd-resolved about port 53
+[Resolve]
+DNSStubListener=no
diff --git a/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf b/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf
index 9e5ab9f81b..2897b90300 100755
--- a/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf
+++ b/meta-networking/recipes-support/dnsmasq/files/dnsmasq.conf
@@ -2,7 +2,7 @@
#
# Format is one option per line, legal options are the same
# as the long options legal on the command line. See
-# "/usr/sbin/dnsmasq --help" or "man 8 dnsmasq" for details.
+# "/usr/bin/dnsmasq --help" or "man 8 dnsmasq" for details.
# Listen on this specific port instead of the standard DNS port
# (53). Setting this to zero completely disables DNS function,
diff --git a/meta-networking/recipes-support/dnsmasq/files/init b/meta-networking/recipes-support/dnsmasq/files/init
index 51c95dfedd..43c286f9c7 100644
--- a/meta-networking/recipes-support/dnsmasq/files/init
+++ b/meta-networking/recipes-support/dnsmasq/files/init
@@ -16,7 +16,7 @@ fi
DNSMASQ_CONF="/etc/dnsmasq.conf"
test "/etc/dnsmasq.d/*" != '/etc/dnsmasq.d/*' && DNSMASQ_CONF="${DNSMASQ_CONF} /etc/dnsmasq.d/*"
-test -z "${PIDFILE}" && PIFILE="/run/dnsmasq.pid"
+test -z "${PIDFILE}" && PIDFILE="/run/dnsmasq.pid"
if [ -z "$IGNORE_RESOLVCONF" ]
then
diff --git a/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb b/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb
deleted file mode 100644
index ca59bd2170..0000000000
--- a/meta-networking/recipes-support/dnssec-conf/dnssec-conf_2.02.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "DNSSEC and DLV configuration and priming tool"
-DESCRIPTION = "\
-DNSSEC configuration and priming tool. Keys are required until the root \
-is signed, as well as for local unpublished DNSSEC keys to be preloaded \
-into the recursive nameserver. These DNSSEC configuration files can be \
-directly included in the bind or unbound nameserver configuration files. \
-dnssec-conf includes a commandline configuration client for Bind and \
-Unbound, known DNSSEC keys, URL's to official publication pages of keys, \
-and harvested keys, as well a script to harvest DNSKEY's from DNS. \
-See also: system-config-dnssec"
-HOMEPAGE = "https://github.com/xelerance/dnssec-conf"
-SECTION = "net"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=0636e73ff0215e8d672dc4c32c317bb3"
-DEPENDS += "xmlto-native docbook-xml-dtd4-native \
- docbook-xsl-stylesheets-native libxslt-native"
-
-SRC_URI = "git://github.com/xelerance/dnssec-conf.git"
-SRCREV = "8e799683736b4a7b5e5e78f98fba0a6f48393537"
-
-S = "${WORKDIR}/git"
-
-do_install () {
- rm -rf ${D}
- make PREFIX=${prefix} DESTDIR=${D} ETCDIR=${D}${sysconfdir} install
- # We no longer ship trust anchors. Most of these are in the DLV Registry now.
- # and it prevents the problem of shipping outdated trust anchors.
- # For DLV, we ship the ISC DLV Registry key
- rm -rf ${D}${sysconfdir}/pki/dnssec-keys/harvest/*
- rm -rf ${D}${sysconfdir}/pki/dnssec-keys/production/reverse/*
- install -d -m 0755 ${D}${sysconfdir}/sysconfig
- install -m 0644 packaging/fedora/dnssec.sysconfig ${D}${sysconfdir}/sysconfig/dnssec
-}
-
-RDEPENDS_${PN} = "python"
diff --git a/meta-networking/recipes-support/dovecot/dovecot/0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch b/meta-networking/recipes-support/dovecot/dovecot/0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch
index f86235076e..4fcfa48b99 100644
--- a/meta-networking/recipes-support/dovecot/dovecot/0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch
+++ b/meta-networking/recipes-support/dovecot/dovecot/0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch
@@ -5,62 +5,69 @@ Subject: [PATCH] configure.ac: convert AC_TRY_RUN to AC_TRY_LINK statements
This is not completely safe, but it's the least invasive fix.
-Upstream-Status: pending
+Upstream-Status: Pending
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Li Xin <lixin.fnst@cn.fujitsu.com>
+
+Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
---
- configure.ac | 15 +++++----------
- 1 file changed, 5 insertions(+), 10 deletions(-)
+ m4/glibc.m4 | 6 ++----
+ m4/ioloop.m4 | 9 +++------
+ 2 files changed, 5 insertions(+), 10 deletions(-)
-diff --git a/configure.ac b/configure.ac
-index 3b32614..94ec002 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -519,13 +519,10 @@ have_ioloop=no
-
- if test "$ioloop" = "best" || test "$ioloop" = "epoll"; then
- AC_CACHE_CHECK([whether we can use epoll],i_cv_epoll_works,[
+diff --git a/m4/glibc.m4 b/m4/glibc.m4
+index 5d722aa..ce088d3 100644
+--- a/m4/glibc.m4
++++ b/m4/glibc.m4
+@@ -17,7 +17,7 @@ AC_DEFUN([DOVECOT_GLIBC], [
+ dnl * Old glibcs have broken posix_fallocate(). Make sure not to use it.
+ dnl * It may also be broken in AIX.
+ AC_CACHE_CHECK([whether posix_fallocate() works],i_cv_posix_fallocate_works,[
- AC_TRY_RUN([
+ AC_TRY_LINK([
- #include <sys/epoll.h>
--
-- int main()
-- {
-- return epoll_create(5) < 1;
+ #define _XOPEN_SOURCE 600
+ #include <stdio.h>
+ #include <stdlib.h>
+@@ -26,7 +26,7 @@ AC_DEFUN([DOVECOT_GLIBC], [
+ #if defined(__GLIBC__) && (__GLIBC__ < 2 || __GLIBC_MINOR__ < 7)
+ possibly broken posix_fallocate
+ #endif
+- int main() {
++ ], [
+ int fd = creat("conftest.temp", 0600);
+ int ret;
+ if (fd == -1) {
+@@ -35,8 +35,6 @@ AC_DEFUN([DOVECOT_GLIBC], [
+ }
+ ret = posix_fallocate(fd, 1024, 1024) < 0 ? 1 : 0;
+ unlink("conftest.temp");
+- return ret;
- }
-+ ], [
-+ epoll_create(5) < 1;
], [
- i_cv_epoll_works=yes
+ i_cv_posix_fallocate_works=yes
], [
-@@ -653,7 +650,7 @@ fi
- dnl * Old glibcs have broken posix_fallocate(). Make sure not to use it.
- dnl * It may also be broken in AIX.
- AC_CACHE_CHECK([whether posix_fallocate() works],i_cv_posix_fallocate_works,[
-- AC_TRY_RUN([
-+ AC_TRY_LINK([
- #define _XOPEN_SOURCE 600
- #include <stdio.h>
- #include <stdlib.h>
-@@ -662,7 +659,7 @@ AC_CACHE_CHECK([whether posix_fallocate() works],i_cv_posix_fallocate_works,[
- #if defined(__GLIBC__) && (__GLIBC__ < 2 || __GLIBC_MINOR__ < 7)
- possibly broken posix_fallocate
- #endif
-- int main() {
-+ ], [
- int fd = creat("conftest.temp", 0600);
- int ret;
- if (fd == -1) {
-@@ -671,8 +668,6 @@ AC_CACHE_CHECK([whether posix_fallocate() works],i_cv_posix_fallocate_works,[
- }
- ret = posix_fallocate(fd, 1024, 1024) < 0 ? 1 : 0;
- unlink("conftest.temp");
-- return ret;
-- }
- ], [
- i_cv_posix_fallocate_works=yes
- ], [
+diff --git a/m4/ioloop.m4 b/m4/ioloop.m4
+index 0f7dde0..f40fd62 100644
+--- a/m4/ioloop.m4
++++ b/m4/ioloop.m4
+@@ -4,13 +4,10 @@ AC_DEFUN([DOVECOT_IOLOOP], [
+
+ if test "$ioloop" = "best" || test "$ioloop" = "epoll"; then
+ AC_CACHE_CHECK([whether we can use epoll],i_cv_epoll_works,[
+- AC_TRY_RUN([
++ AC_TRY_LINK([
+ #include <sys/epoll.h>
+-
+- int main()
+- {
+- return epoll_create(5) < 1;
+- }
++ ], [
++ epoll_create(5) < 1;
+ ], [
+ i_cv_epoll_works=yes
+ ], [
--
-1.8.4.2
+2.25.1
diff --git a/meta-networking/recipes-support/dovecot/dovecot/0001-doveadm-Fix-parallel-build.patch b/meta-networking/recipes-support/dovecot/dovecot/0001-doveadm-Fix-parallel-build.patch
deleted file mode 100644
index 65ae9bf910..0000000000
--- a/meta-networking/recipes-support/dovecot/dovecot/0001-doveadm-Fix-parallel-build.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From be9b3809b86fe593dbb16f0b981b3d315a27b799 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sun, 22 Oct 2017 22:10:41 -0700
-Subject: [PATCH] doveadm: Fix parallel build
-
-Sometimes dovetail build fails with errors like
-
-doveadm-util.o: file not recognized: File truncated
-collect2: error: ld returned 1 exit status
-make[4]: *** [Makefile:812: test-doveadm-util] Error 1
-
-This is partial backport from
-
-https://github.com/dovecot/core/commit/b200bc3875fa06d42c8619865cc306c3297fcacc
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/doveadm/Makefile.am | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/doveadm/Makefile.am b/src/doveadm/Makefile.am
-index c644646..6ae9144 100644
---- a/src/doveadm/Makefile.am
-+++ b/src/doveadm/Makefile.am
-@@ -180,8 +180,8 @@ test_libs = \
- ../lib/liblib.la
- test_deps = $(noinst_LTLIBRARIES) $(test_libs)
-
--test_doveadm_util_SOURCES = test-doveadm-util.c
--test_doveadm_util_LDADD = doveadm-util.o $(test_libs) $(MODULE_LIBS)
-+test_doveadm_util_SOURCES = doveadm-util.c test-doveadm-util.c
-+test_doveadm_util_LDADD = $(test_libs) $(MODULE_LIBS)
- test_doveadm_util_DEPENDENCIES = $(test_deps)
-
- check: check-am check-test
---
-2.14.2
-
diff --git a/meta-networking/recipes-support/dovecot/dovecot/0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch b/meta-networking/recipes-support/dovecot/dovecot/0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch
new file mode 100644
index 0000000000..ec7a26a329
--- /dev/null
+++ b/meta-networking/recipes-support/dovecot/dovecot/0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch
@@ -0,0 +1,30 @@
+From 6c0ff65f782ad38130b18e4ecb1538d9a8633684 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 29 May 2021 14:32:17 -0700
+Subject: [PATCH] m4: Check for libunwind instead of libunwind-generic
+
+libunwind-generic is specific to nongnu libunwind, when using llvm
+libunwind this fails, so poking for libunwind make it generic
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ m4/want_unwind.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/want_unwind.m4 b/m4/want_unwind.m4
+index cadb62b..5517314 100644
+--- a/m4/want_unwind.m4
++++ b/m4/want_unwind.m4
+@@ -2,7 +2,7 @@ AC_DEFUN([DOVECOT_WANT_UNWIND], [
+ have_libunwind=no
+ AS_IF([test "$want_libunwind" != "no"], [
+ PKG_CHECK_EXISTS([libunwind], [
+- PKG_CHECK_MODULES([LIBUNWIND], [libunwind-generic],[
++ PKG_CHECK_MODULES([LIBUNWIND], [libunwind],[
+ have_libunwind=yes
+ AC_DEFINE([HAVE_LIBUNWIND],,[Define this if you have libunwind])
+ ])
+--
+2.31.1
+
diff --git a/meta-networking/recipes-support/dovecot/dovecot/0001-not-check-pandoc.patch b/meta-networking/recipes-support/dovecot/dovecot/0001-not-check-pandoc.patch
new file mode 100644
index 0000000000..af69c82f0f
--- /dev/null
+++ b/meta-networking/recipes-support/dovecot/dovecot/0001-not-check-pandoc.patch
@@ -0,0 +1,28 @@
+From 8c7d143ff28441c8b74b0f518dd2281239aede3d Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@cn.fujitsu.com>
+Date: Fri, 15 Jan 2021 11:10:22 +0900
+Subject: [PATCH] not check pandoc
+
+Signed-off-by: Wang Mingyu <wangmy@cn.fujitsu.com>
+---
+Upstream-Status: Pending
+
+ m4/dovecot.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/dovecot.m4 b/m4/dovecot.m4
+index 2b5d895..ece8489 100644
+--- a/m4/dovecot.m4
++++ b/m4/dovecot.m4
+@@ -447,7 +447,7 @@ AC_DEFUN([DC_PANDOC], [
+ dnl Optional tool for making documentation
+ AC_CHECK_PROGS(PANDOC, [pandoc], [true])
+
+- AS_IF([test "$PANDOC" = "true"], [
++ AS_IF([test "$PANDOC" = "false"], [
+ AS_IF([test ! -e README], [
+ AC_MSG_ERROR([Cannot produce documentation without pandoc - disable with PANDOC=false ./configure])
+ ])
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/dovecot/dovecot_2.2.33.bb b/meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb
index 882d5d5543..17fbd789b6 100644
--- a/meta-networking/recipes-support/dovecot/dovecot_2.2.33.bb
+++ b/meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb
@@ -2,28 +2,28 @@ SUMMARY = "Dovecot is an open source IMAP and POP3 email server"
HOMEPAGE = "https://www.dovecot.org/"
DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory."
SECTION = "mail"
-LICENSE = "LGPLv2.1 & MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a981379bd0f1c362f8d1d21515e5b30b"
+LICENSE = "LGPL-2.1-only & MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048"
-SRC_URI = "http://dovecot.org/releases/2.2/dovecot-${PV}.tar.gz \
+SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \
file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \
file://dovecot.service \
file://dovecot.socket \
- file://0001-doveadm-Fix-parallel-build.patch \
+ file://0001-not-check-pandoc.patch \
+ file://0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch \
"
+SRC_URI[sha256sum] = "05b11093a71c237c2ef309ad587510721cc93bbee6828251549fc1586c36502d"
-SRC_URI[md5sum] = "d61d1e923a22f9062cc9f47696882666"
-SRC_URI[sha256sum] = "e9483d68a7698d701bc06124fcf6e1b1f16380c2986c7ec0cf4e1475b9d0c218"
-
-DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc"
+DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native"
CFLAGS += "-I${STAGING_INCDIR}/tirpc"
LDFLAGS += "-ltirpc"
-inherit autotools pkgconfig systemd useradd
+inherit autotools pkgconfig systemd useradd gettext multilib_header
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam', d)}"
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam systemd', d)}"
PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,"
+PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd,"
PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap,"
PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4,"
@@ -41,29 +41,34 @@ CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \
# hardcode epoll() to avoid running unsafe tests
# BSD needs kqueue and uclibc poll()
-EXTRA_OECONF = " --with-ioloop=epoll \
- --with-systemdsystemunitdir=${systemd_unitdir}/system"
+EXTRA_OECONF = " --with-ioloop=epoll"
SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "dovecot.service dovecot.socket"
+SYSTEMD_SERVICE:${PN} = "dovecot.service dovecot.socket"
SYSTEMD_AUTO_ENABLE = "disable"
-do_install_append () {
+do_install:append () {
+ rm -rf ${D}${libdir}/dovecot/dovecot-config
install -d 755 ${D}/etc/dovecot
touch 644 ${D}/etc/dovecot/dovecot.conf
- install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system
- sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service
- sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service
+ if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
+ install -m 0644 ${WORKDIR}/dovecot.service ${D}${systemd_unitdir}/system
+ sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service
+ sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service
+ fi
+ oe_multilib_header dovecot/config.h
}
USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \
+USERADD_PARAM:${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \
-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull"
-GROUPADD_PARAM_${PN} = "-f -r dovecot;-f -r dovenull"
+GROUPADD_PARAM:${PN} = "-f -r dovecot;-f -r dovenull"
-FILES_${PN} += "${libdir}/dovecot/*plugin.so \
+FILES:${PN} += "${libdir}/dovecot/*plugin.so \
${libdir}/dovecot/libfs_compress.so \
${libdir}/dovecot/libssl_iostream_openssl.so"
-FILES_${PN}-staticdev += "${libdir}/dovecot/*/*.a"
-FILES_${PN}-dev += "${libdir}/dovecot/libdovecot*.so"
-FILES_${PN}-dbg += "${libdir}/dovecot/*/.debug"
+FILES:${PN}-staticdev += "${libdir}/dovecot/*/*.a"
+FILES:${PN}-dev += "${libdir}/dovecot/libdovecot*.so"
+FILES:${PN}-dbg += "${libdir}/dovecot/*/.debug"
+
+CVE_STATUS[CVE-2016-4983] = "not-applicable-platform: Affects only postinstall script on specific distribution."
diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-configure.ac-Add-an-option-to-disable-host-udev-vers.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-configure.ac-Add-an-option-to-disable-host-udev-vers.patch
new file mode 100644
index 0000000000..b98e1e70c7
--- /dev/null
+++ b/meta-networking/recipes-support/drbd/drbd-utils/0001-configure.ac-Add-an-option-to-disable-host-udev-vers.patch
@@ -0,0 +1,55 @@
+From 61991db099f66348dddbc3408e7ee8c05bda85cb Mon Sep 17 00:00:00 2001
+From: Yoann Congal <yoann.congal@smile.fr>
+Date: Sat, 2 Mar 2024 16:23:07 +0100
+Subject: [PATCH] configure.ac: Add an option to disable host udev version
+ checks
+
+In cross-compilation environment, the build host might have an outdated
+udev or no udev at all. But the user may still want to build with the
+enabled udev rule (for its udev-enabled target).
+
+This patch adds a "--disable-udevchecks" option the disable build host
+udev version check at configure-time and unconditionally install the
+enabled udev rule. Without this new option, the behavior stays the same
+(checks enabled).
+
+Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
+Upstream-Status: Backport [https://github.com/LINBIT/drbd-utils/commit/f2b5a7335ae52109dfb95a9d99ae20519c43d59a]
+---
+ configure.ac | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f1d69ea3..4c56d33b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -71,6 +71,11 @@ AC_ARG_WITH([udev],
+ [AS_HELP_STRING([--with-udev],
+ [Enable udev integration])],
+ [WITH_UDEV=$withval])
++AC_ARG_ENABLE([udevchecks],
++ [AS_HELP_STRING([--disable-udevchecks],
++ [Disable host udev version checks])],
++ [],
++ [enable_udevchecks=yes])
+ AC_ARG_WITH([xen],
+ [AS_HELP_STRING([--with-xen],
+ [Enable Xen integration])],
+@@ -315,7 +320,7 @@ if test -z $GIT; then
+ AC_MSG_WARN(Cannot update buildtag without git. You may safely ignore this warning when building from a tarball.)
+ fi
+
+-if test $UDEVADM = false && test $UDEVINFO = false; then
++if test "x$enable_udevchecks" != "xno" && test $UDEVADM = false && test $UDEVINFO = false; then
+ if test "$WITH_UDEV" = "yes"; then
+ AC_MSG_WARN([udev support enabled, but neither udevadm nor udevinfo found on this system.])
+ fi
+@@ -423,7 +428,7 @@ else
+ test -z $INITDIR && INITDIR="$sysconfdir/init.d"
+
+ dnl Our udev rules file is known to work only with udev >= 85
+- if test "$WITH_UDEV" = "yes"; then
++ if test "x$enable_udevchecks" != "xno" && test "$WITH_UDEV" = "yes"; then
+ udev_version=$( set -- $($UDEVADM version); echo $1 )
+ if test -z "$udev_version"; then
+ udev_version=$( set -- $($UDEVINFO -V); echo $3 )
diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch
deleted file mode 100644
index c0f3adf240..0000000000
--- a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Subject: drbd-tools: only rmmod if DRBD is a module
-
-Account for the case if the DRBD drive is built into
-the kernel. Otherwise, errors, like the following,
-will occur:
-
-root@localhost:~# /etc/init.d/drbd stop
- Stopping all DRBD resources: ERROR: Module drbd
- does not exist in /proc/modules
-
-Upstream-Status: Submitted [https://github.com/LINBIT/drbd-utils/pull/2]
-
-Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
-Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
-
-[ refresh to 8.4.4: squash Aws' and Jason's patches ]
-Signed-off-by: Michel Thebeau <michel.thebeau@windriver.com>
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
-
----
- scripts/drbd | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/scripts/drbd b/scripts/drbd
-index 20bf628..de589dc 100755
---- a/scripts/drbd
-+++ b/scripts/drbd
-@@ -241,7 +241,9 @@ case "$1" in
- if [ -d /sys/module/drbd/holders ]; then
- (cd /sys/module/drbd/holders; for tr in *; do [ -d ${tr} ] && ${RMMOD} ${tr}; done)
- fi
-- $RMMOD drbd && break
-+ if [ ! -z "$(cat /proc/modules | grep -w drbd)" ]; then
-+ $RMMOD drbd && break
-+ fi
- fi
- done
- run_hook stop
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch
new file mode 100644
index 0000000000..27f0a9b54a
--- /dev/null
+++ b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbd-utils-support-usrmerge.patch
@@ -0,0 +1,201 @@
+From 264ae7b062ac52a5545a8a562b51001f7ce7369d Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Thu, 21 Apr 2022 17:22:35 +0800
+Subject: [PATCH] drbd-utils: support usermerge
+
+Upstream-Status: Inappropriate [oe-specific]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
+---
+ configure.ac | 2 +-
+ scripts/Makefile.in | 10 +++++-----
+ scripts/drbd-demote-or-escalate@.service | 2 +-
+ scripts/drbd-promote@.service | 4 ++--
+ scripts/drbd-wait-promotable@.service | 2 +-
+ scripts/drbd.service | 6 +++---
+ scripts/drbd@.service | 6 +++---
+ scripts/ocf.ra@.service | 4 ++--
+ user/v83/Makefile.in | 14 +++++++-------
+ user/v84/Makefile.in | 14 +++++++-------
+ 10 files changed, 32 insertions(+), 32 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f1d69ea3..3289ac7d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -183,7 +183,7 @@ AC_ARG_WITH(tmpfilesdir,
+ AC_SUBST(tmpfilesdir)
+
+ # set default early
+-default_udevdir=/lib/udev
++default_udevdir=${prefix}/lib/udev
+ if test x"$with_udev" = x || \
+ test x"$with_udev" = xyes ; then
+ if test x"$PKG_CONFIG" != x; then
+diff --git a/scripts/Makefile.in b/scripts/Makefile.in
+index aca15a22..a1cd2ffe 100644
+--- a/scripts/Makefile.in
++++ b/scripts/Makefile.in
+@@ -91,11 +91,11 @@ ifeq ($(subst both,systemd,$(initscripttype)),systemd)
+ install -d $(DESTDIR)$(systemdunitdir)
+ install -m 644 $(SYSTEMD_UNITS) $(DESTDIR)$(systemdunitdir)/
+ install -m 644 $(SYSTEMD_TEMPLATES) $(DESTDIR)$(systemdunitdir)/
+- install -d $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd-service-shim.sh $(DESTDIR)/lib/drbd/scripts
+- install -m 755 drbd-wait-promotable.sh $(DESTDIR)/lib/drbd/scripts
+- install -m 755 ocf.ra.wrapper.sh $(DESTDIR)/lib/drbd/scripts
++ install -d $(DESTDIR)/${nonarch_libdir}/drbd/scripts
++ install -m 755 drbd $(DESTDIR)/${nonarch_libdir}/drbd/scripts
++ install -m 755 drbd-service-shim.sh $(DESTDIR)/${nonarch_libdir}/drbd/scripts
++ install -m 755 drbd-wait-promotable.sh $(DESTDIR)/${nonarch_libdir}/drbd/scripts
++ install -m 755 ocf.ra.wrapper.sh $(DESTDIR)/${nonarch_libdir}/drbd/scripts
+ install -d $(DESTDIR)$(tmpfilesdir)/
+ install -m 444 drbd.tmpfiles.conf $(DESTDIR)$(tmpfilesdir)/drbd.conf
+ endif
+diff --git a/scripts/drbd-demote-or-escalate@.service b/scripts/drbd-demote-or-escalate@.service
+index 20932238..8b5ce4a2 100644
+--- a/scripts/drbd-demote-or-escalate@.service
++++ b/scripts/drbd-demote-or-escalate@.service
+@@ -28,5 +28,5 @@ TimeoutSec=60
+ # "Type=forking" would be an option to have it retry a number of times,
+ # and then only escalate to FailureAction if that did not help.
+ Type=oneshot
+-ExecStart=/lib/drbd/scripts/drbd-service-shim.sh secondary-or-escalate %I
++ExecStart=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh secondary-or-escalate %I
+ ExecStopPost=-/bin/journalctl --sync
+diff --git a/scripts/drbd-promote@.service b/scripts/drbd-promote@.service
+index 71345d9b..678e0703 100644
+--- a/scripts/drbd-promote@.service
++++ b/scripts/drbd-promote@.service
+@@ -24,5 +24,5 @@ RemainAfterExit=yes
+ # (ab)using systemd features
+ # if we cannot configure and promote, that's a condition, not a failure
+ # See the comment above wrt. FailureAction vs OnFailure
+-ExecCondition=/lib/drbd/scripts/drbd-service-shim.sh primary %I
+-ExecStop=/lib/drbd/scripts/drbd-service-shim.sh secondary %I
++ExecCondition=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh primary %I
++ExecStop=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh secondary %I
+diff --git a/scripts/drbd-wait-promotable@.service b/scripts/drbd-wait-promotable@.service
+index 81c3789f..3416abc6 100644
+--- a/scripts/drbd-wait-promotable@.service
++++ b/scripts/drbd-wait-promotable@.service
+@@ -10,7 +10,7 @@ Type=oneshot
+
+ # on first start, wait for access to "good data"
+ # let systemd handle timeouts
+-ExecStart=/lib/drbd/scripts/drbd-wait-promotable.sh %I
++ExecStart=@nonarch_libdir@/drbd/scripts/drbd-wait-promotable.sh %I
+ RemainAfterExit=yes
+
+ [Install]
+diff --git a/scripts/drbd.service b/scripts/drbd.service
+index 96c599e7..c81e95a6 100644
+--- a/scripts/drbd.service
++++ b/scripts/drbd.service
+@@ -12,11 +12,11 @@ RemainAfterExit=yes
+ # A check for INIT_VERSION already exists, just set it to something.
+ Environment=INIT_VERSION=systemd
+
+-ExecStart=/lib/drbd/scripts/drbd start
+-ExecStop=/lib/drbd/scripts/drbd stop
++ExecStart=@nonarch_libdir@/drbd/scripts/drbd start
++ExecStop=@nonarch_libdir@/drbd/scripts/drbd stop
+
+ # Re-adjust everything on reload
+-ExecReload=/lib/drbd/scripts/drbd reload
++ExecReload=@nonarch_libdir@/drbd/scripts/drbd reload
+
+ [Install]
+ WantedBy=multi-user.target
+diff --git a/scripts/drbd@.service b/scripts/drbd@.service
+index 0fad10be..556f3857 100644
+--- a/scripts/drbd@.service
++++ b/scripts/drbd@.service
+@@ -35,8 +35,8 @@ RemainAfterExit=yes
+
+ # depends... do we want this as ExecCondition or as ExecStart
+ # failed start is "failed", failed condition is just "not startable yet"
+-ExecStart=/lib/drbd/scripts/drbd-service-shim.sh adjust %I
+-ExecReload=/lib/drbd/scripts/drbd-service-shim.sh adjust %I
++ExecStart=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh adjust %I
++ExecReload=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh adjust %I
+
+ # can only succeed, if you first stop all depending services
+-ExecStopPost=/lib/drbd/scripts/drbd-service-shim.sh down %I
++ExecStopPost=@nonarch_libdir@/drbd/scripts/drbd-service-shim.sh down %I
+diff --git a/scripts/ocf.ra@.service b/scripts/ocf.ra@.service
+index 9c2268a6..1666c482 100644
+--- a/scripts/ocf.ra@.service
++++ b/scripts/ocf.ra@.service
+@@ -22,5 +22,5 @@ Environment=monitor_inverval=30
+ # Only the first argument is used by the wrapper,
+ # the %n is just to identify which is which in the process list.
+ # All parameterization is done via Environment= in per instance override.conf
+-ExecStart=/lib/drbd/scripts/ocf.ra.wrapper.sh start-and-monitor %n
+-ExecStopPost=/lib/drbd/scripts/ocf.ra.wrapper.sh stop %n
++ExecStart=@nonarch_libdir@/drbd/scripts/ocf.ra.wrapper.sh start-and-monitor %n
++ExecStopPost=@nonarch_libdir@/drbd/scripts/ocf.ra.wrapper.sh stop %n
+diff --git a/user/v83/Makefile.in b/user/v83/Makefile.in
+index 08cfe574..4c4971b6 100644
+--- a/user/v83/Makefile.in
++++ b/user/v83/Makefile.in
+@@ -96,19 +96,19 @@ install:
+ ifeq ($(WITH_83_SUPPORT),yes)
+ install -d $(DESTDIR)$(localstatedir)/lib/drbd
+ install -d $(DESTDIR)$(localstatedir)/lock
+- install -d $(DESTDIR)/lib/drbd/
++ install -d $(DESTDIR)/${nonarch_libdir}/drbd/
+ if getent group haclient > /dev/null 2> /dev/null ; then \
+- install -g haclient -m 4750 drbdsetup-83 $(DESTDIR)/lib/drbd/ ; \
+- install -m 755 drbdadm-83 $(DESTDIR)/lib/drbd/ ; \
++ install -g haclient -m 4750 drbdsetup-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
++ install -m 755 drbdadm-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
+ else \
+- install -m 755 drbdsetup-83 $(DESTDIR)/lib/drbd/ ; \
+- install -m 755 drbdadm-83 $(DESTDIR)/lib/drbd/ ; \
++ install -m 755 drbdsetup-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
++ install -m 755 drbdadm-83 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
+ fi
+ endif
+
+ uninstall:
+- rm -f $(DESTDIR)/lib/drbd/drbdsetup-83
+- rm -f $(DESTDIR)/lib/drbd/drbdadm-83
++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdsetup-83
++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdadm-83
+
+ .PHONY: install uninstall clean distclean
+ ../../configure:
+diff --git a/user/v84/Makefile.in b/user/v84/Makefile.in
+index 0fcefc5f..81f7d5ec 100644
+--- a/user/v84/Makefile.in
++++ b/user/v84/Makefile.in
+@@ -110,19 +110,19 @@ ifeq ($(WITH_84_SUPPORT),yes)
+ install -d $(DESTDIR)$(localstatedir)/lib/drbd
+ install -d $(DESTDIR)$(localstatedir)/run/drbd
+ install -d $(DESTDIR)$(localstatedir)/lock
+- install -d $(DESTDIR)/lib/drbd/
++ install -d $(DESTDIR)/${nonarch_libdir}/drbd/
+ if getent group haclient > /dev/null 2> /dev/null ; then \
+- install -g haclient -m 4750 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \
+- install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \
++ install -g haclient -m 4750 drbdsetup-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
++ install -m 755 drbdadm-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
+ else \
+- install -m 755 drbdsetup-84 $(DESTDIR)/lib/drbd/ ; \
+- install -m 755 drbdadm-84 $(DESTDIR)/lib/drbd/ ; \
++ install -m 755 drbdsetup-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
++ install -m 755 drbdadm-84 $(DESTDIR)/${nonarch_libdir}/drbd/ ; \
+ fi
+ endif
+
+ uninstall:
+- rm -f $(DESTDIR)/lib/drbd/drbdsetup-84
+- rm -f $(DESTDIR)/lib/drbd/drbdadm-84
++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdsetup-84
++ rm -f $(DESTDIR)/${nonarch_libdir}/drbd/drbdadm-84
+
+ spell:
+ for f in drbdadm_adjust.c drbdadm_main.c drbdadm_parser.c drbdadm_usage_cnt.c drbdsetup.c drbdtool_common.c; do \
diff --git a/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch
new file mode 100644
index 0000000000..c7766067a1
--- /dev/null
+++ b/meta-networking/recipes-support/drbd/drbd-utils/0001-drbdmon-add-LDFLAGS-when-linking.patch
@@ -0,0 +1,33 @@
+From bb044160faf4ae7615ddfdb17641dd88c33cde57 Mon Sep 17 00:00:00 2001
+From: Sakib Sajal <sakib.sajal@windriver.com>
+Date: Thu, 31 Mar 2022 15:09:58 -0400
+Subject: [PATCH] drbdmon: add LDFLAGS when linking
+
+Upstream-Status: Pending
+
+Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
+---
+ user/drbdmon/Makefile.in | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/user/drbdmon/Makefile.in b/user/drbdmon/Makefile.in
+index 7bd8987e..115a81b8 100644
+--- a/user/drbdmon/Makefile.in
++++ b/user/drbdmon/Makefile.in
+@@ -1,6 +1,6 @@
+ CXXFLAGS=-std=c++11 -I. -I../shared -Icppdsaext/src -Wall -Werror -pedantic-errors -fPIC -O2 \
+ -Wsign-compare -Wpointer-arith -Wswitch-default -Wswitch-enum -Wtype-limits \
+--Wmissing-declarations -Wshadow
++-Wmissing-declarations -Wshadow -Wno-defaulted-function-deleted -Wno-unused-private-field
+ CXX = @CXX@
+ LIBS = @LIBS@
+
+@@ -72,7 +72,7 @@ $(dsaext-obj): $(basename $(dsaext-obj)).cpp $(basename $(dsaext-obj)).h
+ $(integerparse-obj): $(basename $(integerparse-obj)).cpp $(basename $(integerparse-obj)).h
+
+ drbdmon: $(ls-obj)
+- $(CXX) -o $@ $(CPPFLAGS) $(CXXFLAGS) $^ $(LIBS)
++ $(CXX) -o $@ $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) $^ $(LIBS)
+
+ # do not try to rebuild Makefile itself
+ Makefile: ;
diff --git a/meta-networking/recipes-support/drbd/drbd-utils_9.27.0.bb b/meta-networking/recipes-support/drbd/drbd-utils_9.27.0.bb
new file mode 100644
index 0000000000..63f0fd18c1
--- /dev/null
+++ b/meta-networking/recipes-support/drbd/drbd-utils_9.27.0.bb
@@ -0,0 +1,76 @@
+SUMMARY = "Distributed block device driver for Linux"
+DESCRIPTION = "DRBD mirrors a block device over the network to another machine.\
+Think of it as networked raid 1. It is a building block for\
+setting up high availability (HA) clusters."
+HOMEPAGE = "http://www.drbd.org/"
+SECTION = "admin"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
+
+SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils;branch=master;protocol=https \
+ git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers;branch=master;protocol=https \
+ file://0001-drbdmon-add-LDFLAGS-when-linking.patch \
+ ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','file://0001-drbd-utils-support-usrmerge.patch','',d)} \
+ file://0001-configure.ac-Add-an-option-to-disable-host-udev-vers.patch \
+ "
+SRCREV_drbd-utils = "fdd9a4d603a9dc99d110d8bd0e288d7c0b6f586e"
+SRCREV_drbd-headers = "0349f00825b4198d4ec3248f43884114a187676a"
+
+SRCREV_FORMAT = "drbd-utils_drbd-headers"
+
+S = "${WORKDIR}/git"
+
+UPSTREAM_CHECK_URI = "https://github.com/LINBIT/drbd-utils/releases"
+
+SYSTEMD_SERVICE:${PN} = "drbd.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+DEPENDS = "flex-native keyutils"
+
+inherit autotools-brokensep systemd
+
+# -Wunused-but-set-variable -Wunused-const-variable -Winconsistent-missing-override
+CPPFLAGS:append = " -Wno-error"
+
+EXTRA_OECONF = " \
+ --with-initdir=/etc/init.d \
+ --without-pacemaker \
+ --without-rgmanager \
+ --without-bashcompletion \
+ --with-distro debian \
+ --with-initscripttype=both \
+ --with-systemdunitdir=${systemd_unitdir}/system \
+ --without-manual \
+ --disable-udevchecks \
+ "
+
+# If we have inherited reproducible_build, we want to use it.
+export WANT_DRBD_REPRODUCIBLE_BUILD = "yes"
+
+do_install:append() {
+ # don't install empty /var/lock and /var/run to avoid conflict with base-files
+ rm -rf ${D}${localstatedir}/lock
+ rm -rf ${D}${localstatedir}/run
+
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/drbd-demote-or-escalate@.service
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/drbd-promote@.service
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/drbd-wait-promotable@.service
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/drbd.service
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/drbd@.service
+ sed -i -e 's#@nonarch_libdir@#${nonarch_libdir}#g' ${D}${systemd_unitdir}/system/ocf.ra@.service
+}
+
+RDEPENDS:${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module-constant perl-module-overloading perl-module-exporter-heavy"
+
+# The drbd items are explicitly put under /lib when installed.
+#
+FILES:${PN} += "/run"
+FILES:${PN} += "${nonarch_base_libdir}/drbd \
+ ${nonarch_libdir}/drbd \
+ ${nonarch_libdir}/tmpfiles.d \
+ ${nonarch_libdir}/drbdscripts/* \
+ ${systemd_unitdir}/system/* \
+"
+FILES:${PN}-dbg += "${nonarch_base_libdir}/drbd/.debug"
+
+CLEANBROKEN = "1"
diff --git a/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb b/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb
deleted file mode 100644
index bd1e8576f3..0000000000
--- a/meta-networking/recipes-support/drbd/drbd-utils_9.5.0.bb
+++ /dev/null
@@ -1,63 +0,0 @@
-SUMMARY = "Distributed block device driver for Linux"
-DESCRIPTION = "DRBD mirrors a block device over the network to another machine.\
-DRBD mirrors a block device over the network to another machine.\
-Think of it as networked raid 1. It is a building block for\
-setting up high availability (HA) clusters."
-HOMEPAGE = "http://www.drbd.org/"
-SECTION = "admin"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
-
-SRC_URI = "git://github.com/LINBIT/drbd-utils;name=drbd-utils \
- git://github.com/LINBIT/drbd-headers;name=drbd-headers;destsuffix=git/drbd-headers \
- file://0001-drbd-drbd-tools-only-rmmod-if-DRBD-is-a-module.patch \
- "
-# v9.5.0
-SRCREV_drbd-utils = "ee126652638328b55dc6bff47d07d6161ab768db"
-SRCREV_drbd-headers = "b47cc11bcabe1a65c40ad23f71dcaf2da6419630"
-
-S = "${WORKDIR}/git"
-
-UPSTREAM_CHECK_URI = "https://github.com/LINBIT/drbd-utils/releases"
-
-SYSTEMD_SERVICE_${PN} = "drbd.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-inherit autotools-brokensep systemd
-
-EXTRA_OECONF = " \
- --with-initdir=/etc/init.d \
- --without-pacemaker \
- --without-rgmanager \
- --without-bashcompletion \
- --with-distro debian \
- --with-initscripttype=both \
- --with-systemdunitdir=${systemd_unitdir}/system \
- --without-manual \
- "
-
-do_configure_prepend() {
- # move the the file under folder /lib/drbd/ to /usr/lib/drbd when usrmerge enabled
- if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
- for m_file in `find ${S} -name 'Makefile.in'`; do
- sed -i -e "s;\$(DESTDIR)\/lib\/drbd;\$(DESTDIR)\${nonarch_libdir}\/drbd;g" $m_file
- done
- # move the the file under folder /lib/udev/ to /usr/lib/udev when usrmerge enabled
- sed -i -e "s;default_udevdir=/lib/udev;default_udevdir=\${prefix}/lib/udev;g" ${S}/configure.ac
- fi
-
-}
-do_install_append() {
- # don't install empty /var/lock to avoid conflict with base-files
- rm -rf ${D}${localstatedir}/lock
-}
-
-RDEPENDS_${PN} += "bash perl-module-getopt-long perl-module-exporter perl-module-constant perl-module-overloading perl-module-exporter-heavy"
-
-# The drbd items are explicitly put under /lib when installed.
-#
-FILES_${PN} += "/run"
-FILES_${PN} += "${nonarch_base_libdir}/drbd \
- ${nonarch_libdir}/drbd \
- ${nonarch_libdir}/tmpfiles.d"
-FILES_${PN}-dbg += "${nonarch_base_libdir}/drbd/.debug"
diff --git a/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb b/meta-networking/recipes-support/drbd/drbd_9.2.1.bb
index fa4d10b4c1..48ce2abf09 100644
--- a/meta-networking/recipes-support/drbd/drbd_9.0.8-1.bb
+++ b/meta-networking/recipes-support/drbd/drbd_9.2.1.bb
@@ -4,21 +4,21 @@ DESCRIPTION = "DRBD is a block device which is designed to build high \
block device via (a dedicated) network. You could see \
it as a network raid-1."
HOMEPAGE = "http://oss.linbit.com/drbd/"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
DEPENDS = "virtual/kernel"
-SRC_URI = "http://www.linbit.com/downloads/drbd/9.0/drbd-${PV}.tar.gz \
- file://check_existence_of_modules_before_installing.patch"
+SRC_URI = "https://pkg.linbit.com//downloads/drbd/9/${BP}.tar.gz \
+ file://check_existence_of_modules_before_installing.patch \
+ "
+SRC_URI[sha256sum] = "f59ee795188f21d4a62c5319c371ebad65ab3fb9b55e5212c3f1dd558978a843"
-SRC_URI[md5sum] = "c1dd58043f46e9926b579aa65d4ea980"
-SRC_URI[sha256sum] = "87f72d46db9bad926415b3ab9f5f1397de8c581d2e2ec1addbdd5ce2604e6123"
inherit module
-EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}'"
+EXTRA_OEMAKE += "KDIR='${STAGING_KERNEL_DIR}' SPAAS=true"
do_install () {
oe_runmake install DESTDIR="${D}"
}
-PNBLACKLIST[drbd] = "implicit declaration of function 'setup_timer'; 4.15 head file issue?"
+SKIP_RECIPE[drbd] ?= "Needs coccinelle to build with SPAAS"
diff --git a/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch b/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch
new file mode 100755
index 0000000000..d0baceb15b
--- /dev/null
+++ b/meta-networking/recipes-support/dropwatch/dropwatch/0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch
@@ -0,0 +1,30 @@
+From 4872c52f55f9cb089e6681c3f1926663145b52ae Mon Sep 17 00:00:00 2001
+From: chenheyun <chen_heyun@163.com>
+Date: Sun, 18 Feb 2024 05:08:25 -0800
+Subject: [PATCH] fix bug: build with sysroot head file instead of local head
+ 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/src/main.c b/src/main.c
+index e4746d9..81dc4da 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -26,8 +26,8 @@
+ #include <netlink/netlink.h>
+ #include <netlink/genl/genl.h>
+ #include <netlink/genl/ctrl.h>
++#include <net_dropmon.h>
+
+-#include "net_dropmon.h"
+ #include "lookup.h"
+
+ /*
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/dropwatch/dropwatch_1.5.4.bb b/meta-networking/recipes-support/dropwatch/dropwatch_1.5.4.bb
new file mode 100644
index 0000000000..baa9398a18
--- /dev/null
+++ b/meta-networking/recipes-support/dropwatch/dropwatch_1.5.4.bb
@@ -0,0 +1,20 @@
+SUMMARY = "Dropwatch is a utility to diagnose where packets are getting dropped"
+DESCRIPTION = "\
+Dropwatch is a utility to help developers and system administrators to \
+diagnose problems in the Linux Networking stack, specifically their \
+ability to diagnose where packets are getting dropped."
+HOMEPAGE = "https://github.com/nhorman/${BPN}"
+SECTION = "net/misc"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
+
+SRC_URI = "git://github.com/nhorman/dropwatch.git;protocol=https;nobranch=1 \
+ file://0001-fix-bug-build-with-sysroot-head-file-instead-of-loca.patch \
+"
+SRCREV = "1e7e487a019a7c02f1f429c4d3a4647fa3787a13"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "binutils libnl libpcap readline"
+
+inherit pkgconfig autotools
diff --git a/meta-networking/recipes-support/esmtp/esmtp/0001-Fix-libESMTP-dependency-check.patch b/meta-networking/recipes-support/esmtp/esmtp/0001-Fix-libESMTP-dependency-check.patch
new file mode 100644
index 0000000000..18bffe55b2
--- /dev/null
+++ b/meta-networking/recipes-support/esmtp/esmtp/0001-Fix-libESMTP-dependency-check.patch
@@ -0,0 +1,46 @@
+From 63dbf8a9f04b34474021e8f0bf239b7446f10a7f Mon Sep 17 00:00:00 2001
+From: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
+Date: Thu, 3 Mar 2022 09:01:23 +0000
+Subject: [PATCH] Fix libESMTP dependency check
+
+Since libesmtp-1.1.0, libesmtp-config is removed, use pkg-config to
+check for existence instead.
+
+Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
+---
+Upstream-Status: Pending
+
+ configure.ac | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 64b19b4..83346a8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,6 +11,8 @@ AC_PROG_CC
+
+ AC_HEADER_STDC
+
++PKG_PROG_PKG_CONFIG
++
+ dnl getopt needs this
+ AC_C_CONST
+
+@@ -30,11 +32,11 @@ then
+ AC_CHECK_HEADER(libesmtp.h, ,[AC_MSG_ERROR([libesmtp.h not found in $with_libesmtp])])
+ fi
+ AC_MSG_CHECKING(for libESMTP)
+-if libesmtp-config --version > /dev/null 2>&1
++if $PKG_CONFIG --exists 'libesmtp-1.0'
+ then
+ AC_MSG_RESULT(yes)
+- CFLAGS="$CFLAGS `libesmtp-config --cflags`"
+- LIBS="$LIBS `libesmtp-config --libs`"
++ CFLAGS="$CFLAGS `$PKG_CONFIG --cflags 'libesmtp-1.0'`"
++ LIBS="$LIBS `$PKG_CONFIG --libs 'libesmtp-1.0'`"
+ else
+ AC_MSG_RESULT(no)
+ AC_MSG_ERROR(libESMTP library not found)
+--
+2.32.0
+
diff --git a/meta-networking/recipes-support/esmtp/esmtp_1.2.bb b/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
index 663161a9bc..e60e1edd1f 100644
--- a/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
+++ b/meta-networking/recipes-support/esmtp/esmtp_1.2.bb
@@ -8,25 +8,31 @@ SECTION = "net"
DEPENDS = "libesmtp"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BPN}-${PV}.tar.bz2"
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${PV}/${BPN}-${PV}.tar.bz2 \
+ file://0001-Fix-libESMTP-dependency-check.patch \
+ "
# Have to set this or we get -L/lib in LDFLAGS
EXTRA_OECONF = "--with-libesmtp=${STAGING_EXECPREFIXDIR}"
-inherit autotools update-alternatives
+inherit autotools update-alternatives pkgconfig
-ALTERNATIVE_${PN} += "sendmail mailq newaliases"
+ALTERNATIVE:${PN} = "sendmail mailq newaliases"
+# /usr/lib/sendmial is required by LSB core test
+ALTERNATIVE:${PN}:linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail"
ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq"
ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases"
ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail"
ALTERNATIVE_TARGET[sendmail] = "${bindir}/esmtp"
+ALTERNATIVE_LINK_NAME[usr-lib-sendmail] = "/usr/lib/sendmail"
+ALTERNATIVE_TARGET[usr-lib-sendmail] = "${bindir}/esmtp"
ALTERNATIVE_PRIORITY = "10"
-ALTERNATIVE_${PN}-doc += "mailq.1 newaliases.1 sendmail.1"
+ALTERNATIVE:${PN}-doc += "mailq.1 newaliases.1 sendmail.1"
ALTERNATIVE_LINK_NAME[mailq.1] = "${mandir}/man1/mailq.1"
ALTERNATIVE_LINK_NAME[newaliases.1] = "${mandir}/man1/newaliases.1"
ALTERNATIVE_LINK_NAME[sendmail.1] = "${mandir}/man1/sendmail.1"
@@ -34,14 +40,9 @@ ALTERNATIVE_LINK_NAME[sendmail.1] = "${mandir}/man1/sendmail.1"
SRC_URI[md5sum] = "79a9c1f9023d53f35bb82bf446150a72"
SRC_URI[sha256sum] = "a0d26931bf731f97514da266d079d8bc7d73c65b3499ed080576ab606b21c0ce"
-do_install_append() {
+do_install:append() {
# only one file /usr/lib/sendmail in ${D}${libdir}
rm -rf ${D}${libdir}
}
-pkg_postinst_${PN}_linuxstdbase () {
- # /usr/lib/sendmial is required by LSB core test
- [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/
-}
-
-FILES_${PN} += "${libdir}/"
+FILES:${PN} += "${libdir}/"
diff --git a/meta-networking/recipes-support/ettercap/ettercap/0001-sslstrip-Enhance-the-libcurl-version-check-to-consid.patch b/meta-networking/recipes-support/ettercap/ettercap/0001-sslstrip-Enhance-the-libcurl-version-check-to-consid.patch
new file mode 100644
index 0000000000..592ea52f2e
--- /dev/null
+++ b/meta-networking/recipes-support/ettercap/ettercap/0001-sslstrip-Enhance-the-libcurl-version-check-to-consid.patch
@@ -0,0 +1,38 @@
+From 40534662043b7d831d1f6c70448afa9d374a9b63 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 23 Mar 2023 10:23:14 -0700
+Subject: [PATCH] sslstrip: Enhance the libcurl version check to consider
+ version 8+
+
+Lately curl has released version 8 and hence LIBCURL_VERSION_MAJOR is
+reset to 0, current check assumes major version to be 7 at max and hence
+on systems with libcurl 8+ this check breaks and build fails
+
+Fixes
+
+TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/ettercap/0.8.3.1-r0/git/plug-ins/sslstrip/sslstrip.c:57:2: error: libcurl 7.26.0 or up is needed
+ ^
+1 error generated.
+
+Upstream-Status: Backport [https://github.com/Ettercap/ettercap/commit/40534662043b7d831d1f6c70448afa9d374a9b63]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plug-ins/sslstrip/sslstrip.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plug-ins/sslstrip/sslstrip.c b/plug-ins/sslstrip/sslstrip.c
+index 327bf58a..d9b67c8b 100644
+--- a/plug-ins/sslstrip/sslstrip.c
++++ b/plug-ins/sslstrip/sslstrip.c
+@@ -51,7 +51,7 @@
+
+ #include <curl/curl.h>
+
+-#if (LIBCURL_VERSION_MAJOR < 7) || (LIBCURL_VERSION_MINOR < 26)
++#if (LIBCURL_VERSION_MAJOR < 7) || (LIBCURL_VERSION_MAJOR == 7 && LIBCURL_VERSION_MINOR < 26)
+ #error libcurl 7.26.0 or up is needed
+ #endif
+
+--
+2.40.0
+
diff --git a/meta-networking/recipes-support/ettercap/ettercap_0.8.3.1.bb b/meta-networking/recipes-support/ettercap/ettercap_0.8.3.1.bb
new file mode 100644
index 0000000000..723d7c8f78
--- /dev/null
+++ b/meta-networking/recipes-support/ettercap/ettercap_0.8.3.1.bb
@@ -0,0 +1,47 @@
+SUMMARY = "A suite for man in the middle attacks"
+HOMEPAGE = "https://github.com/Ettercap/ettercap"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+inherit cmake
+
+DEPENDS += "ethtool \
+ geoip \
+ librepo \
+ libnet \
+ libpcap \
+ libpcre \
+ ncurses \
+ openssl \
+ zlib \
+ bison-native \
+ flex-native \
+ "
+
+RDEPENDS:${PN} += "bash ethtool libgcc"
+
+SRC_URI = "gitsm://github.com/Ettercap/ettercap;branch=master;protocol=https \
+ file://0001-sslstrip-Enhance-the-libcurl-version-check-to-consid.patch"
+
+SRCREV = "7281fbddb7da7478beb1d21e3cb105fff3778b31"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECMAKE = " \
+ -DCMAKE_SKIP_RPATH=TRUE \
+ -DBUNDLED_LIBS=ON \
+ -DENABLE_IPV6=ON \
+ -DENABLE_GTK=OFF \
+ -DFLEX_TARGET_ARG_COMPILE_FLAGS='--noline' \
+ -DBISON_TARGET_ARG_COMPILE_FLAGS='--no-lines' \
+"
+
+CFLAGS += "-D_GNU_SOURCE"
+# Replaces default encoding set (ISO-8859-1) with UTF-8 in ettercap
+# configuration file installed by the package.
+# It ensures that all characters are properly decoded and avoids
+# any fatal errors while running in text mode (-T).
+do_install:append() {
+ sed -i 's@utf8_encoding.*@utf8_encoding = "UTF-8"@g' \
+ ${D}/etc/ettercap/etter.conf
+}
diff --git a/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch b/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch
deleted file mode 100644
index 95cfa2f4a1..0000000000
--- a/meta-networking/recipes-support/fetchmail/fetchmail/02_remove_SSLv3.patch
+++ /dev/null
@@ -1,1576 +0,0 @@
-Description: <short summary of the patch>
- TODO: Put a short summary on the line above and replace this paragraph
- with a longer explanation of this change. Complete the meta-information
- with other relevant fields (see below for details). To make it easier, the
- information below has been extracted from the changelog. Adjust it or drop
- it.
- .
- fetchmail (6.3.26-2) unstable; urgency=low
- .
- * New maintainer (closes: #800750).
- * Backport upstream fix for SSLv3 removal (closes: #804604) and do not
- recommend SSLv3 (closes: #801178).
- * Remove quilt and its usage.
- * Add dh-python to build depends.
- * Update upstream URLs.
- * Update watch file.
- * Update Standards-Version to 3.9.6 .
-Author: Laszlo Boszormenyi (GCS) <gcs@debian.org>
-Bug-Debian: https://bugs.debian.org/800750
-Bug-Debian: https://bugs.debian.org/801178
-Bug-Debian: https://bugs.debian.org/804604
-
----
-The information above should follow the Patch Tagging Guidelines, please
-checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
-are templates for supplementary fields that you might want to add:
-
-Origin: <vendor|upstream|other>, <url of original patch>
-Bug: <url in upstream bugtracker>
-Bug-Debian: https://bugs.debian.org/<bugnumber>
-Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
-Forwarded: <no|not-needed|url proving that it has been forwarded>
-Reviewed-By: <name and email of someone who approved the patch>
-Last-Update: <YYYY-MM-DD>
-
---- fetchmail-6.3.26.orig/Makefile.am
-+++ fetchmail-6.3.26/Makefile.am
-@@ -31,7 +31,7 @@ libfm_a_SOURCES= xmalloc.c base64.c rfc8
- servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \
- smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \
- libesmtp/gethostbyname.h libesmtp/gethostbyname.c \
-- smbtypes.h fm_getaddrinfo.c tls.c rfc822valid.c \
-+ smbtypes.h fm_getaddrinfo.c starttls.c rfc822valid.c \
- xmalloc.h sdump.h sdump.c x509_name_match.c \
- fm_strl.h md5c.c
- if NTLM_ENABLE
---- fetchmail-6.3.26.orig/Makefile.in
-+++ fetchmail-6.3.26/Makefile.in
-@@ -97,14 +97,14 @@ am__libfm_a_SOURCES_DIST = xmalloc.c bas
- rfc2047e.c servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \
- smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \
- libesmtp/gethostbyname.h libesmtp/gethostbyname.c smbtypes.h \
-- fm_getaddrinfo.c tls.c rfc822valid.c xmalloc.h sdump.h sdump.c \
-+ fm_getaddrinfo.c starttls.c rfc822valid.c xmalloc.h sdump.h sdump.c \
- x509_name_match.c fm_strl.h md5c.c ntlmsubr.c
- @NTLM_ENABLE_TRUE@am__objects_1 = ntlmsubr.$(OBJEXT)
- am_libfm_a_OBJECTS = xmalloc.$(OBJEXT) base64.$(OBJEXT) \
- rfc822.$(OBJEXT) report.$(OBJEXT) rfc2047e.$(OBJEXT) \
- servport.$(OBJEXT) smbdes.$(OBJEXT) smbencrypt.$(OBJEXT) \
- smbmd4.$(OBJEXT) smbutil.$(OBJEXT) gethostbyname.$(OBJEXT) \
-- fm_getaddrinfo.$(OBJEXT) tls.$(OBJEXT) rfc822valid.$(OBJEXT) \
-+ fm_getaddrinfo.$(OBJEXT) starttls.$(OBJEXT) rfc822valid.$(OBJEXT) \
- sdump.$(OBJEXT) x509_name_match.$(OBJEXT) md5c.$(OBJEXT) \
- $(am__objects_1)
- libfm_a_OBJECTS = $(am_libfm_a_OBJECTS)
-@@ -483,7 +483,7 @@ libfm_a_SOURCES = xmalloc.c base64.c rfc
- servport.c ntlm.h smbbyteorder.h smbdes.h smbmd4.h \
- smbencrypt.h smbdes.c smbencrypt.c smbmd4.c smbutil.c \
- libesmtp/gethostbyname.h libesmtp/gethostbyname.c smbtypes.h \
-- fm_getaddrinfo.c tls.c rfc822valid.c xmalloc.h sdump.h sdump.c \
-+ fm_getaddrinfo.c starttls.c rfc822valid.c xmalloc.h sdump.h sdump.c \
- x509_name_match.c fm_strl.h md5c.c $(am__append_1)
- libfm_a_LIBADD = $(EXTRAOBJ)
- libfm_a_DEPENDENCIES = $(EXTRAOBJ)
---- fetchmail-6.3.26.orig/NEWS
-+++ fetchmail-6.3.26/NEWS
-@@ -51,8 +51,6 @@ removed from a 6.4.0 or newer release.)
- * The --bsmtp - mode of operation may be removed in a future release.
- * Given that OpenSSL is severely underdocumented, and needs license exceptions,
- fetchmail may switch to a different SSL library.
--* SSLv2 support will be removed from a future fetchmail release. It has been
-- obsolete for more than a decade.
-
- --------------------------------------------------------------------------------
-
---- fetchmail-6.3.26.orig/README.SSL
-+++ fetchmail-6.3.26/README.SSL
-@@ -11,36 +11,45 @@ specific to fetchmail.
- In case of troubles, mail the README.SSL-SERVER file to your ISP and
- have them check their server configuration against it.
-
--Unfortunately, fetchmail confuses SSL/TLS protocol levels with whether
--a service needs to use in-band negotiation (STLS/STARTTLS for POP3/IMAP4) or is
--totally SSL-wrapped on a separate port. For compatibility reasons, this cannot
--be fixed in a bugfix release.
-+Unfortunately, fetchmail confuses SSL/TLS protocol levels with whether a
-+service needs to use in-band negotiation (STLS/STARTTLS for POP3/IMAP4)
-+or is totally SSL-wrapped on a separate port. For compatibility
-+reasons, this cannot be fixed in a bugfix or minor release.
-+
-+Also, fetchmail 6.4.0 and newer releases changed some of the semantics
-+as the result of a bug-fix, and will auto-negotiate TLSv1 or newer only.
-+If your server does not support this, you may have to specify --sslproto
-+ssl3. This is in order to prefer the newer TLS protocols, because SSLv2
-+and v3 are broken.
-
-- -- Matthias Andree, 2009-05-09
-+ -- Matthias Andree, 2015-01-16
-
-
- Quickstart
- ----------
-
-+Use an up-to-date release of OpenSSL 1.0.1 or newer, so as to get
-+TLSv1.2 support.
-+
- For use of SSL or TLS with in-band negotiation on the regular service's port,
- i. e. with STLS or STARTTLS, use these command line options
-
-- --sslproto tls1 --sslcertck
-+ --sslproto auto --sslcertck
-
- or these options in the rcfile (after the respective "user"... options)
-
-- sslproto tls1 sslcertck
-+ sslproto auto sslcertck
-
-
- For use of SSL or TLS on a separate port, if the whole TCP connection is
--SSL-encrypted from the very beginning, use these command line options (in the
--rcfile, omit all leading "--"):
-+SSL-encrypted from the very beginning (SSL- or TLS-wrapped), use these
-+command line options (in the rcfile, omit all leading "--"):
-
-- --ssl --sslproto ssl3 --sslcertck
-+ --ssl --sslproto auto --sslcertck
-
- or these options in the rcfile (after the respective "user"... options)
-
-- ssl sslproto ssl3 sslcertck
-+ ssl sslproto auto sslcertck
-
-
- Background and use (long version :-))
---- fetchmail-6.3.26.orig/config.h.in
-+++ fetchmail-6.3.26/config.h.in
-@@ -49,9 +49,9 @@
- don't. */
- #undef HAVE_DECL_H_ERRNO
-
--/* Define to 1 if you have the declaration of `SSLv2_client_method', and to 0
-+/* Define to 1 if you have the declaration of `SSLv3_client_method', and to 0
- if you don't. */
--#undef HAVE_DECL_SSLV2_CLIENT_METHOD
-+#undef HAVE_DECL_SSLV3_CLIENT_METHOD
-
- /* Define to 1 if you have the declaration of `strerror', and to 0 if you
- don't. */
---- fetchmail-6.3.26.orig/configure
-+++ fetchmail-6.3.26/configure
-@@ -1,13 +1,11 @@
- #! /bin/sh
- # Guess values for system-dependent variables and create Makefiles.
--# Generated by GNU Autoconf 2.68 for fetchmail 6.3.26.
-+# Generated by GNU Autoconf 2.69 for fetchmail 6.3.26.
- #
- # Report bugs to <fetchmail-users@lists.berlios.de>.
- #
- #
--# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
--# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
--# Foundation, Inc.
-+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
- #
- #
- # This configure script is free software; the Free Software Foundation
-@@ -136,6 +134,31 @@ export LANGUAGE
- # CDPATH.
- (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-+# Use a proper internal environment variable to ensure we don't fall
-+ # into an infinite loop, continuously re-executing ourselves.
-+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
-+ _as_can_reexec=no; export _as_can_reexec;
-+ # We cannot yet assume a decent shell, so we have to provide a
-+# neutralization value for shells without unset; and this also
-+# works around shells that cannot unset nonexistent variables.
-+# Preserve -v and -x to the replacement shell.
-+BASH_ENV=/dev/null
-+ENV=/dev/null
-+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-+case $- in # ((((
-+ *v*x* | *x*v* ) as_opts=-vx ;;
-+ *v* ) as_opts=-v ;;
-+ *x* ) as_opts=-x ;;
-+ * ) as_opts= ;;
-+esac
-+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-+# Admittedly, this is quite paranoid, since all the known shells bail
-+# out after a failed `exec'.
-+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-+as_fn_exit 255
-+ fi
-+ # We don't want this to propagate to other subprocesses.
-+ { _as_can_reexec=; unset _as_can_reexec;}
- if test "x$CONFIG_SHELL" = x; then
- as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
- emulate sh
-@@ -169,7 +192,8 @@ if ( set x; as_fn_ret_success y && test
- else
- exitcode=1; echo positional parameters were not saved.
- fi
--test x\$exitcode = x0 || exit 1"
-+test x\$exitcode = x0 || exit 1
-+test -x / || exit 1"
- as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
- as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
- eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-@@ -214,21 +238,25 @@ IFS=$as_save_IFS
-
-
- if test "x$CONFIG_SHELL" != x; then :
-- # We cannot yet assume a decent shell, so we have to provide a
-- # neutralization value for shells without unset; and this also
-- # works around shells that cannot unset nonexistent variables.
-- # Preserve -v and -x to the replacement shell.
-- BASH_ENV=/dev/null
-- ENV=/dev/null
-- (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-- export CONFIG_SHELL
-- case $- in # ((((
-- *v*x* | *x*v* ) as_opts=-vx ;;
-- *v* ) as_opts=-v ;;
-- *x* ) as_opts=-x ;;
-- * ) as_opts= ;;
-- esac
-- exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
-+ export CONFIG_SHELL
-+ # We cannot yet assume a decent shell, so we have to provide a
-+# neutralization value for shells without unset; and this also
-+# works around shells that cannot unset nonexistent variables.
-+# Preserve -v and -x to the replacement shell.
-+BASH_ENV=/dev/null
-+ENV=/dev/null
-+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-+case $- in # ((((
-+ *v*x* | *x*v* ) as_opts=-vx ;;
-+ *v* ) as_opts=-v ;;
-+ *x* ) as_opts=-x ;;
-+ * ) as_opts= ;;
-+esac
-+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
-+# Admittedly, this is quite paranoid, since all the known shells bail
-+# out after a failed `exec'.
-+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-+exit 255
- fi
-
- if test x$as_have_required = xno; then :
-@@ -331,6 +359,14 @@ $as_echo X"$as_dir" |
-
-
- } # as_fn_mkdir_p
-+
-+# as_fn_executable_p FILE
-+# -----------------------
-+# Test if FILE is an executable regular file.
-+as_fn_executable_p ()
-+{
-+ test -f "$1" && test -x "$1"
-+} # as_fn_executable_p
- # as_fn_append VAR VALUE
- # ----------------------
- # Append the text in VALUE to the end of the definition contained in VAR. Take
-@@ -452,6 +488,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
- chmod +x "$as_me.lineno" ||
- { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
-
-+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
-+ # already done that, so ensure we don't try to do so again and fall
-+ # in an infinite loop. This has already happened in practice.
-+ _as_can_reexec=no; export _as_can_reexec
- # Don't try to exec as it changes $[0], causing all sort of problems
- # (the dirname of $[0] is not the place where we might find the
- # original and so on. Autoconf is especially sensitive to this).
-@@ -486,16 +526,16 @@ if (echo >conf$$.file) 2>/dev/null; then
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-- # In both cases, we have to default to `cp -p'.
-+ # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- fi
- else
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- fi
- rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
- rmdir conf$$.dir 2>/dev/null
-@@ -507,28 +547,8 @@ else
- as_mkdir_p=false
- fi
-
--if test -x / >/dev/null 2>&1; then
-- as_test_x='test -x'
--else
-- if ls -dL / >/dev/null 2>&1; then
-- as_ls_L_option=L
-- else
-- as_ls_L_option=
-- fi
-- as_test_x='
-- eval sh -c '\''
-- if test -d "$1"; then
-- test -d "$1/.";
-- else
-- case $1 in #(
-- -*)set "./$1";;
-- esac;
-- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-- ???[sx]*):;;*)false;;esac;fi
-- '\'' sh
-- '
--fi
--as_executable_p=$as_test_x
-+as_test_x='test -x'
-+as_executable_p=as_fn_executable_p
-
- # Sed expression to map a string onto a valid CPP name.
- as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-@@ -742,6 +762,7 @@ infodir
- docdir
- oldincludedir
- includedir
-+runstatedir
- localstatedir
- sharedstatedir
- sysconfdir
-@@ -841,6 +862,7 @@ datadir='${datarootdir}'
- sysconfdir='${prefix}/etc'
- sharedstatedir='${prefix}/com'
- localstatedir='${prefix}/var'
-+runstatedir='${localstatedir}/run'
- includedir='${prefix}/include'
- oldincludedir='/usr/include'
- docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
-@@ -1093,6 +1115,15 @@ do
- | -silent | --silent | --silen | --sile | --sil)
- silent=yes ;;
-
-+ -runstatedir | --runstatedir | --runstatedi | --runstated \
-+ | --runstate | --runstat | --runsta | --runst | --runs \
-+ | --run | --ru | --r)
-+ ac_prev=runstatedir ;;
-+ -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
-+ | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
-+ | --run=* | --ru=* | --r=*)
-+ runstatedir=$ac_optarg ;;
-+
- -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
- ac_prev=sbindir ;;
- -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-@@ -1230,7 +1261,7 @@ fi
- for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
- datadir sysconfdir sharedstatedir localstatedir includedir \
- oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-- libdir localedir mandir
-+ libdir localedir mandir runstatedir
- do
- eval ac_val=\$$ac_var
- # Remove trailing slashes.
-@@ -1258,8 +1289,6 @@ target=$target_alias
- if test "x$host_alias" != x; then
- if test "x$build_alias" = x; then
- cross_compiling=maybe
-- $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-- If a cross compiler is detected then cross compile mode will be used" >&2
- elif test "x$build_alias" != "x$host_alias"; then
- cross_compiling=yes
- fi
-@@ -1385,6 +1414,7 @@ Fine tuning of the installation director
- --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
-+ --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --oldincludedir=DIR C header files for non-gcc [/usr/include]
-@@ -1548,9 +1578,9 @@ test -n "$ac_init_help" && exit $ac_stat
- if $ac_init_version; then
- cat <<\_ACEOF
- fetchmail configure 6.3.26
--generated by GNU Autoconf 2.68
-+generated by GNU Autoconf 2.69
-
--Copyright (C) 2010 Free Software Foundation, Inc.
-+Copyright (C) 2012 Free Software Foundation, Inc.
- This configure script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it.
- _ACEOF
-@@ -1827,7 +1857,7 @@ $as_echo "$ac_try_echo"; } >&5
- test ! -s conftest.err
- } && test -s conftest$ac_exeext && {
- test "$cross_compiling" = yes ||
-- $as_test_x conftest$ac_exeext
-+ test -x conftest$ac_exeext
- }; then :
- ac_retval=0
- else
-@@ -2030,7 +2060,8 @@ int
- main ()
- {
- static int test_array [1 - 2 * !(($2) >= 0)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
-
- ;
- return 0;
-@@ -2046,7 +2077,8 @@ int
- main ()
- {
- static int test_array [1 - 2 * !(($2) <= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
-
- ;
- return 0;
-@@ -2072,7 +2104,8 @@ int
- main ()
- {
- static int test_array [1 - 2 * !(($2) < 0)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
-
- ;
- return 0;
-@@ -2088,7 +2121,8 @@ int
- main ()
- {
- static int test_array [1 - 2 * !(($2) >= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
-
- ;
- return 0;
-@@ -2122,7 +2156,8 @@ int
- main ()
- {
- static int test_array [1 - 2 * !(($2) <= $ac_mid)];
--test_array [0] = 0
-+test_array [0] = 0;
-+return test_array [0];
-
- ;
- return 0;
-@@ -2195,7 +2230,7 @@ This file contains any messages produced
- running configure, to aid debugging if configure makes a mistake.
-
- It was created by fetchmail $as_me 6.3.26, which was
--generated by GNU Autoconf 2.68. Invocation command line was
-+generated by GNU Autoconf 2.69. Invocation command line was
-
- $ $0 $@
-
-@@ -2689,7 +2724,7 @@ case $as_dir/ in #((
- # by default.
- for ac_prog in ginstall scoinst install; do
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- if test $ac_prog = install &&
- grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- # AIX install. It has an incompatible calling convention.
-@@ -2858,7 +2893,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_STRIP="${ac_tool_prefix}strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -2898,7 +2933,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_STRIP="strip"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -2949,7 +2984,7 @@ do
- test -z "$as_dir" && as_dir=.
- for ac_prog in mkdir gmkdir; do
- for ac_exec_ext in '' $ac_executable_extensions; do
-- { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
-+ as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
- case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
- 'mkdir (GNU coreutils) '* | \
- 'mkdir (coreutils) '* | \
-@@ -3002,7 +3037,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3295,7 +3330,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3466,7 +3501,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_AWK="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3512,7 +3547,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3552,7 +3587,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="gcc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3605,7 +3640,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="${ac_tool_prefix}cc"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3646,7 +3681,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
- ac_prog_rejected=yes
- continue
-@@ -3704,7 +3739,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -3748,7 +3783,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_CC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -4194,8 +4229,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_
- /* end confdefs.h. */
- #include <stdarg.h>
- #include <stdio.h>
--#include <sys/types.h>
--#include <sys/stat.h>
-+struct stat;
- /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
- struct buf { int x; };
- FILE * (*rcsopen) (struct buf *, struct stat *, int);
-@@ -4751,7 +4785,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -4791,7 +4825,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_ac_ct_RANLIB="ranlib"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -4859,7 +4893,7 @@ do
- for ac_prog in grep ggrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-- { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
-+ as_fn_executable_p "$ac_path_GREP" || continue
- # Check for GNU ac_path_GREP and select it if it is found.
- # Check for GNU $ac_path_GREP
- case `"$ac_path_GREP" --version 2>&1` in
-@@ -4925,7 +4959,7 @@ do
- for ac_prog in egrep; do
- for ac_exec_ext in '' $ac_executable_extensions; do
- ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-- { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
-+ as_fn_executable_p "$ac_path_EGREP" || continue
- # Check for GNU ac_path_EGREP and select it if it is found.
- # Check for GNU $ac_path_EGREP
- case `"$ac_path_EGREP" --version 2>&1` in
-@@ -5132,8 +5166,8 @@ else
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h. */
-
--# define __EXTENSIONS__ 1
-- $ac_includes_default
-+# define __EXTENSIONS__ 1
-+ $ac_includes_default
- int
- main ()
- {
-@@ -5513,11 +5547,11 @@ else
- int
- main ()
- {
--/* FIXME: Include the comments suggested by Paul. */
-+
- #ifndef __cplusplus
-- /* Ultrix mips cc rejects this. */
-+ /* Ultrix mips cc rejects this sort of thing. */
- typedef int charset[2];
-- const charset cs;
-+ const charset cs = { 0, 0 };
- /* SunOS 4.1.1 cc rejects this. */
- char const *const *pcpcc;
- char **ppc;
-@@ -5534,8 +5568,9 @@ main ()
- ++pcpcc;
- ppc = (char**) pcpcc;
- pcpcc = (char const *const *) ppc;
-- { /* SCO 3.2v4 cc rejects this. */
-- char *t;
-+ { /* SCO 3.2v4 cc rejects this sort of thing. */
-+ char tx;
-+ char *t = &tx;
- char const *s = 0 ? (char *) 0 : (char const *) 0;
-
- *t++ = 0;
-@@ -5551,10 +5586,10 @@ main ()
- iptr p = 0;
- ++p;
- }
-- { /* AIX XL C 1.02.0.0 rejects this saying
-+ { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
- "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-- struct s { int j; const int *ap[3]; };
-- struct s *b; b->j = 5;
-+ struct s { int j; const int *ap[3]; } bx;
-+ struct s *b = &bx; b->j = 5;
- }
- { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
- const int foo = 10;
-@@ -5600,7 +5635,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_LEX="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -5632,7 +5667,8 @@ a { ECHO; }
- b { REJECT; }
- c { yymore (); }
- d { yyless (1); }
--e { yyless (input () != 0); }
-+e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */
-+ yyless ((input () != 0)); }
- f { unput (yytext[0]); }
- . { BEGIN INITIAL; }
- %%
-@@ -5792,7 +5828,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_prog_YACC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -6044,7 +6080,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -8548,7 +8584,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_procmail="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -8590,7 +8626,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_sendmail="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -8632,7 +8668,7 @@ do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
-- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
-+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_maildrop="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
-@@ -10121,16 +10157,16 @@ $as_echo "$as_me: WARNING: Consider re-r
- fi
-
- case "$LIBS" in *-lssl*)
-- ac_fn_c_check_decl "$LINENO" "SSLv2_client_method" "ac_cv_have_decl_SSLv2_client_method" "#include <openssl/ssl.h>
-+ ac_fn_c_check_decl "$LINENO" "SSLv3_client_method" "ac_cv_have_decl_SSLv3_client_method" "#include <openssl/ssl.h>
- "
--if test "x$ac_cv_have_decl_SSLv2_client_method" = xyes; then :
-+if test "x$ac_cv_have_decl_SSLv3_client_method" = xyes; then :
- ac_have_decl=1
- else
- ac_have_decl=0
- fi
-
- cat >>confdefs.h <<_ACEOF
--#define HAVE_DECL_SSLV2_CLIENT_METHOD $ac_have_decl
-+#define HAVE_DECL_SSLV3_CLIENT_METHOD $ac_have_decl
- _ACEOF
-
- ;;
-@@ -11334,16 +11370,16 @@ if (echo >conf$$.file) 2>/dev/null; then
- # ... but there are two gotchas:
- # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
- # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-- # In both cases, we have to default to `cp -p'.
-+ # In both cases, we have to default to `cp -pR'.
- ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- elif ln conf$$.file conf$$ 2>/dev/null; then
- as_ln_s=ln
- else
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- fi
- else
-- as_ln_s='cp -p'
-+ as_ln_s='cp -pR'
- fi
- rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
- rmdir conf$$.dir 2>/dev/null
-@@ -11403,28 +11439,16 @@ else
- as_mkdir_p=false
- fi
-
--if test -x / >/dev/null 2>&1; then
-- as_test_x='test -x'
--else
-- if ls -dL / >/dev/null 2>&1; then
-- as_ls_L_option=L
-- else
-- as_ls_L_option=
-- fi
-- as_test_x='
-- eval sh -c '\''
-- if test -d "$1"; then
-- test -d "$1/.";
-- else
-- case $1 in #(
-- -*)set "./$1";;
-- esac;
-- case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-- ???[sx]*):;;*)false;;esac;fi
-- '\'' sh
-- '
--fi
--as_executable_p=$as_test_x
-+
-+# as_fn_executable_p FILE
-+# -----------------------
-+# Test if FILE is an executable regular file.
-+as_fn_executable_p ()
-+{
-+ test -f "$1" && test -x "$1"
-+} # as_fn_executable_p
-+as_test_x='test -x'
-+as_executable_p=as_fn_executable_p
-
- # Sed expression to map a string onto a valid CPP name.
- as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-@@ -11446,7 +11470,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri
- # values after options handling.
- ac_log="
- This file was extended by fetchmail $as_me 6.3.26, which was
--generated by GNU Autoconf 2.68. Invocation command line was
-+generated by GNU Autoconf 2.69. Invocation command line was
-
- CONFIG_FILES = $CONFIG_FILES
- CONFIG_HEADERS = $CONFIG_HEADERS
-@@ -11512,10 +11536,10 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_writ
- ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
- ac_cs_version="\\
- fetchmail config.status 6.3.26
--configured by $0, generated by GNU Autoconf 2.68,
-+configured by $0, generated by GNU Autoconf 2.69,
- with options \\"\$ac_cs_config\\"
-
--Copyright (C) 2010 Free Software Foundation, Inc.
-+Copyright (C) 2012 Free Software Foundation, Inc.
- This config.status script is free software; the Free Software Foundation
- gives unlimited permission to copy, distribute and modify it."
-
-@@ -11606,7 +11630,7 @@ fi
- _ACEOF
- cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
- if \$ac_cs_recheck; then
-- set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
- shift
- \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
- CONFIG_SHELL='$SHELL'
---- fetchmail-6.3.26.orig/configure.ac
-+++ fetchmail-6.3.26/configure.ac
-@@ -802,7 +802,7 @@ else
- fi
-
- case "$LIBS" in *-lssl*)
-- AC_CHECK_DECLS([SSLv2_client_method],,,[#include <openssl/ssl.h>])
-+ AC_CHECK_DECLS([SSLv3_client_method],,,[#include <openssl/ssl.h>])
- ;;
- esac
-
---- fetchmail-6.3.26.orig/fetchmail-FAQ.html
-+++ fetchmail-6.3.26/fetchmail-FAQ.html
-@@ -667,8 +667,8 @@ because there is not currently a standar
- also uses this method, so the two will interoperate happily. They
- better, because this is how Craig gets his mail ;-)</p>
-
--<p>Finally, you can use <a href="#K5">SSL</a> for complete
--end-to-end encryption if you have an SSL-enabled mailserver.</p>
-+<p>Finally, you can use <a href="#K5">SSL or TLS</a> for complete
-+end-to-end encryption if you have a TLS-enabled mailserver.</p>
-
- <h2><a id="G11" name="G11">G11. Is any special configuration needed
- to use a dynamic IP address?</a></h2>
-@@ -2120,7 +2120,7 @@ SSL?</a></h2>
-
- <p>You'll need to have the <a
- href="http://www.openssl.org/">OpenSSL</a> libraries installed, and they
--should at least be version 0.9.7.
-+should at least be version 0.9.8, with 1.0.1 preferred.
- Configure with --with-ssl. If you have the OpenSSL libraries
- installed in commonly-used default locations, this will
- suffice. If you have them installed in a non-default location,
-@@ -2130,7 +2130,7 @@ to --with-ssl after an equal sign.</p>
- <p>Fetchmail binaries built this way support <code>ssl</code>,
- <code>sslkey</code>, and <code>sslcert</code> options that control
- SSL encryption, and will automatically use <code>tls</code> if the
--server offers it. You will need to have an SSL-enabled mailserver to
-+server offers it. You will need to have an SSL/TLS-enabled mailserver to
- use these options. See the manual page for details and some words
- of care on the limited security provided.</p>
-
-@@ -2155,13 +2155,14 @@ poll MYSERVER port 993 plugin "openssl s
- protocol imap username MYUSERNAME password MYPASSWORD
- </pre>
-
--<p>You should note that SSL is only secure against a "man-in-the-middle"
--attack if the client is able to verify that the peer's public key is the
--correct one, and has not been substituted by an attacker. fetchmail can do
--this in one of two ways: by verifying the SSL certificate, or by checking
--the fingerprint of the peer's public key.</p>
-+<p>You should note that SSL or TLS are only secure against a
-+"man-in-the-middle" attack if the client is able to verify that the
-+peer's public key is the correct one, and has not been substituted by an
-+attacker. fetchmail can do this in one of two ways: by verifying the SSL
-+certificate, or by checking the fingerprint of the peer's public
-+key.</p>
-
--<p>There are three parts to SSL certificate verification: checking that the
-+<p>There are three parts to TLS certificate verification: checking that the
- domain name in the certificate matches the hostname you asked to connect to;
- checking that the certificate expiry date has not passed; and checking that
- the certificate has been signed by a known Certificate Authority (CA). This
-@@ -2227,8 +2228,12 @@ will automatically attempt TLS negotiati
- time. This can however cause problems if the upstream didn't configure
- his certificates properly.</p>
-
--<p>In order to prevent fetchmail from trying TLS (STLS, STARTTLS)
--negotiation, add this option:</p>
-+<p>In order to prevent fetchmail 6.4.0 and newer versions from trying
-+STLS or STARTTLS negotiation, add this option:</p>
-+<pre>sslproto ''</pre>
-+
-+<p>In order to prevent older fetchmail versions from trying TLS (STLS, STARTTLS)
-+negotiation where the above does not work, try this option:</p>
-
- <pre>sslproto ssl23</pre>
-
-@@ -2876,15 +2881,22 @@ need to say something like '<code>envelo
-
- <pre>
- Received: from send103.yahoomail.com (send103.yahoomail.com [205.180.60.92])
-- by iserv.ttns.net (8.8.5/8.8.5) with SMTP id RAA10088
-- for &lt;ksturgeon@fbceg.org&gt;; Wed, 9 Sep 1998 17:01:59 -0700
-+ by iserv.example.net (8.8.5/8.8.5) with SMTP id RAA10088
-+ for &lt;ksturgeon@fbceg.example.org&gt;; Wed, 9 Sep 1998 17:01:59 -0700
- </pre>
-
--<p>it checks to see if 'iserv.ttns.net' is a DNS alias of your
--mailserver before accepting 'ksturgeon@fbceg.org' as an envelope
-+<p>it checks to see if 'iserv.example.net' is a DNS alias of your
-+mailserver before accepting 'ksturgeon@fbceg.example.org' as an envelope
- address. This check might fail if your DNS were misconfigured, or
--if you were using 'no dns' and had failed to declare iserv.ttns.net
--as an alias of your server.</p>
-+if you were using 'no dns' and had failed to declare iserv.example.net
-+as an alias of your server. The typical hint is logging similar to:
-+<code>line rejected, iserv.example.net is not an alias of the mailserver</code>,
-+if you use fetchmail in verbose mode.</p>
-+
-+<p><strong>Workaround:</strong> You can specify the alias explicitly, with <code>aka
-+ <em>iserv.example.net</em></code> statements in the rcfile. Replace
-+<em>iserv.example.net</em> by the name you find in <strong>your</strong>
-+'by' part of the 'Received:' line.</p>
-
- <h2><a id="M8" name="M8">M8. Users are getting multiple copies of
- messages.</a></h2>
-@@ -3237,6 +3249,8 @@ Hayes mode escape "+++".</p>
- <h2><a id="X8" name="X8">X8. A spurious ) is being appended to my
- messages.</a></h2>
-
-+<p><em>Fetchmail 6.3.5 and newer releases are supposed to fix this.</em></p>
-+
- <p>Due to the problem described in <a href="#S2">S2</a>, the
- IMAP support in fetchmail cannot follow the IMAP protocol 100&nbsp;%.
- Most of the time it doesn't matter, but if you combine it with an
-@@ -3279,8 +3293,6 @@ it at the end of the message it forwards
- on, you'll get a message about actual != expected.</li>
- </ol>
-
--<p>There is no fix for this.</p>
--
- <h2><a id="X9" name="X9">X9. Missing "Content-Transfer-Encoding" header
- with Domino IMAP</a></h2>
-
---- fetchmail-6.3.26.orig/fetchmail.c
-+++ fetchmail-6.3.26/fetchmail.c
-@@ -54,6 +54,10 @@
- #define ENETUNREACH 128 /* Interactive doesn't know this */
- #endif /* ENETUNREACH */
-
-+#ifdef SSL_ENABLE
-+#include <openssl/ssl.h> /* for OPENSSL_NO_SSL2 and ..._SSL3 checks */
-+#endif
-+
- /* prototypes for internal functions */
- static int load_params(int, char **, int);
- static void dump_params (struct runctl *runp, struct query *, flag implicit);
-@@ -138,7 +142,7 @@ static void printcopyright(FILE *fp) {
- "Copyright (C) 2004 Matthias Andree, Eric S. Raymond,\n"
- " Robert M. Funk, Graham Wilson\n"
- "Copyright (C) 2005 - 2012 Sunil Shetye\n"
-- "Copyright (C) 2005 - 2013 Matthias Andree\n"
-+ "Copyright (C) 2005 - 2015 Matthias Andree\n"
- ));
- fprintf(fp, GT_("Fetchmail comes with ABSOLUTELY NO WARRANTY. This is free software, and you\n"
- "are welcome to redistribute it under certain conditions. For details,\n"
-@@ -262,6 +266,9 @@ int main(int argc, char **argv)
- #endif /* ODMR_ENABLE */
- #ifdef SSL_ENABLE
- "+SSL"
-+#if (HAVE_DECL_SSLV3_CLIENT_METHOD + 0 == 0) || defined(OPENSSL_NO_SSL3)
-+ "-SSLv3"
-+#endif
- #endif
- #ifdef OPIE_ENABLE
- "+OPIE"
---- fetchmail-6.3.26.orig/fetchmail.h
-+++ fetchmail-6.3.26/fetchmail.h
-@@ -771,9 +771,9 @@ int servport(const char *service);
- int fm_getaddrinfo(const char *node, const char *serv, const struct addrinfo *hints, struct addrinfo **res);
- void fm_freeaddrinfo(struct addrinfo *ai);
-
--/* prototypes from tls.c */
--int maybe_tls(struct query *ctl);
--int must_tls(struct query *ctl);
-+/* prototypes from starttls.c */
-+int maybe_starttls(struct query *ctl);
-+int must_starttls(struct query *ctl);
-
- /* prototype from rfc822valid.c */
- int rfc822_valid_msgid(const unsigned char *);
---- fetchmail-6.3.26.orig/fetchmail.man
-+++ fetchmail-6.3.26/fetchmail.man
-@@ -412,23 +412,22 @@ from. The folder information is written
- .B \-\-ssl
- (Keyword: ssl)
- .br
--Causes the connection to the mail server to be encrypted
--via SSL. Connect to the server using the specified base protocol over a
--connection secured by SSL. This option defeats opportunistic starttls
--negotiation. It is highly recommended to use \-\-sslproto 'SSL3'
--\-\-sslcertck to validate the certificates presented by the server and
--defeat the obsolete SSLv2 negotiation. More information is available in
--the \fIREADME.SSL\fP file that ships with fetchmail.
--.IP
--Note that fetchmail may still try to negotiate SSL through starttls even
--if this option is omitted. You can use the \-\-sslproto option to defeat
--this behavior or tell fetchmail to negotiate a particular SSL protocol.
-+Causes the connection to the mail server to be encrypted via SSL, by
-+negotiating SSL directly after connecting (SSL-wrapped mode). It is
-+highly recommended to use \-\-sslcertck to validate the certificates
-+presented by the server. Please see the description of \-\-sslproto
-+below! More information is available in the \fIREADME.SSL\fP file that
-+ships with fetchmail.
-+.IP
-+Note that even if this option is omitted, fetchmail may still negotiate
-+SSL in-band for POP3 or IMAP, through the STLS or STARTTLS feature. You
-+can use the \-\-sslproto option to modify that behavior.
- .IP
- If no port is specified, the connection is attempted to the well known
- port of the SSL version of the base protocol. This is generally a
- different port than the port used by the base protocol. For IMAP, this
- is port 143 for the clear protocol and port 993 for the SSL secured
--protocol, for POP3, it is port 110 for the clear text and port 995 for
-+protocol; for POP3, it is port 110 for the clear text and port 995 for
- the encrypted variant.
- .IP
- If your system lacks the corresponding entries from /etc/services, see
-@@ -470,39 +469,73 @@ cause some complications in daemon mode.
- .IP
- Also see \-\-sslcert above.
- .TP
--.B \-\-sslproto <name>
--(Keyword: sslproto)
-+.B \-\-sslproto <value>
-+(Keyword: sslproto, NOTE: semantic changes since v6.4.0)
- .br
--Forces an SSL/TLS protocol. Possible values are \fB''\fP,
--\&'\fBSSL2\fP' (not supported on all systems),
--\&'\fBSSL23\fP', (use of these two values is discouraged
--and should only be used as a last resort) \&'\fBSSL3\fP', and
--\&'\fBTLS1\fP'. The default behaviour if this option is unset is: for
--connections without \-\-ssl, use \&'\fBTLS1\fP' so that fetchmail will
--opportunistically try STARTTLS negotiation with TLS1. You can configure
--this option explicitly if the default handshake (TLS1 if \-\-ssl is not
--used) does not work for your server.
--.IP
--Use this option with '\fBTLS1\fP' value to enforce a STARTTLS
--connection. In this mode, it is highly recommended to also use
--\-\-sslcertck (see below). Note that this will then cause fetchmail
--v6.3.19 to force STARTTLS negotiation even if it is not advertised by
--the server.
--.IP
--To defeat opportunistic TLSv1 negotiation when the server advertises
--STARTTLS or STLS, and use a cleartext connection use \fB''\fP. This
--option, even if the argument is the empty string, will also suppress the
--diagnostic 'SERVER: opportunistic upgrade to TLS.' message in verbose
--mode. The default is to try appropriate protocols depending on context.
-+This option has a dual use, out of historic fetchmail behaviour. It
-+controls both the SSL/TLS protocol version and, if \-\-ssl is not
-+specified, the STARTTLS behaviour (upgrading the protocol to an SSL or
-+TLS connection in-band). Some other options may however make TLS
-+mandatory.
-+.PP
-+Only if this option and \-\-ssl are both missing for a poll, there will
-+be opportunistic TLS for POP3 and IMAP, where fetchmail will attempt to
-+upgrade to TLSv1 or newer.
-+.PP
-+Recognized values for \-\-sslproto are given below. You should normally
-+chose one of the auto-negotiating options, i. e. '\fBauto\fP' or one of
-+the options ending in a plus (\fB+\fP) character. Note that depending
-+on OpenSSL library version and configuration, some options cause
-+run-time errors because the requested SSL or TLS versions are not
-+supported by the particular installed OpenSSL library.
-+.RS
-+.IP "\fB''\fP, the empty string"
-+Disable STARTTLS. If \-\-ssl is given for the same server, log an error
-+and pretend that '\fBauto\fP' had been used instead.
-+.IP '\fBauto\fP'
-+(default). Since v6.4.0. Require TLS. Auto-negotiate TLSv1 or newer, disable SSLv3 downgrade.
-+(fetchmail 6.3.26 and older have auto-negotiated all protocols that
-+their OpenSSL library supported, including the broken SSLv3).
-+.IP "\&'\fBSSL23\fP'
-+see '\fBauto\fP'.
-+.IP \&'\fBSSL3\fP'
-+Require SSLv3 exactly. SSLv3 is broken, not supported on all systems, avoid it
-+if possible. This will make fetchmail negotiate SSLv3 only, and is the
-+only way besides '\fBSSL3+\fP' to have fetchmail 6.4.0 or newer permit SSLv3.
-+.IP \&'\fBSSL3+\fP'
-+same as '\fBauto\fP', but permit SSLv3 as well. This is the only way
-+besides '\fBSSL3\fP' to have fetchmail 6.4.0 or newer permit SSLv3.
-+.IP \&'\fBTLS1\fP'
-+Require TLSv1. This does not negotiate TLSv1.1 or newer, and is
-+discouraged. Replace by TLS1+ unless the latter chokes your server.
-+.IP \&'\fBTLS1+\fP'
-+Since v6.4.0. See 'fBauto\fP'.
-+.IP \&'\fBTLS1.1\fP'
-+Since v6.4.0. Require TLS v1.1 exactly.
-+.IP \&'\fBTLS1.1+\fP'
-+Since v6.4.0. Require TLS. Auto-negotiate TLSv1.1 or newer.
-+.IP \&'\fBTLS1.2\fP'
-+Since v6.4.0. Require TLS v1.2 exactly.
-+.IP '\fBTLS1.2+\fP'
-+Since v6.4.0. Require TLS. Auto-negotiate TLSv1.2 or newer.
-+.IP "Unrecognized parameters"
-+are treated the same as '\fBauto\fP'.
-+.RE
-+.IP
-+NOTE: you should hardly ever need to use anything other than '' (to
-+force an unencrypted connection) or 'auto' (to enforce TLS).
- .TP
- .B \-\-sslcertck
- (Keyword: sslcertck)
- .br
--Causes fetchmail to strictly check the server certificate against a set of
--local trusted certificates (see the \fBsslcertfile\fP and \fBsslcertpath\fP
--options). If the server certificate cannot be obtained or is not signed by one
--of the trusted ones (directly or indirectly), the SSL connection will fail,
--regardless of the \fBsslfingerprint\fP option.
-+Causes fetchmail to require that SSL/TLS be used and disconnect if it
-+can not successfully negotiate SSL or TLS, or if it cannot successfully
-+verify and validate the certificate and follow it to a trust anchor (or
-+trusted root certificate). The trust anchors are given as a set of local
-+trusted certificates (see the \fBsslcertfile\fP and \fBsslcertpath\fP
-+options). If the server certificate cannot be obtained or is not signed
-+by one of the trusted ones (directly or indirectly), fetchmail will
-+disconnect, regardless of the \fBsslfingerprint\fP option.
- .IP
- Note that CRL (certificate revocation lists) are only supported in
- OpenSSL 0.9.7 and newer! Your system clock should also be reasonably
-@@ -1202,31 +1235,33 @@ capability response. Specify a user opti
- username and the part to the right as the NTLM domain.
-
- .SS Secure Socket Layers (SSL) and Transport Layer Security (TLS)
-+.PP All retrieval protocols can use SSL or TLS wrapping for the
-+transport. Additionally, POP3 and IMAP retrival can also negotiate
-+SSL/TLS by means of STARTTLS (or STLS).
- .PP
- Note that fetchmail currently uses the OpenSSL library, which is
- severely underdocumented, so failures may occur just because the
- programmers are not aware of OpenSSL's requirement of the day.
- For instance, since v6.3.16, fetchmail calls
- OpenSSL_add_all_algorithms(), which is necessary to support certificates
--using SHA256 on OpenSSL 0.9.8 -- this information is deeply hidden in the
--documentation and not at all obvious. Please do not hesitate to report
--subtle SSL failures.
--.PP
--You can access SSL encrypted services by specifying the \-\-ssl option.
--You can also do this using the "ssl" user option in the .fetchmailrc
--file. With SSL encryption enabled, queries are initiated over a
--connection after negotiating an SSL session, and the connection fails if
--SSL cannot be negotiated. Some services, such as POP3 and IMAP, have
-+using SHA256 on OpenSSL 0.9.8 -- this information is deeply hidden in
-+the documentation and not at all obvious. Please do not hesitate to
-+report subtle SSL failures.
-+.PP
-+You can access SSL encrypted services by specifying the options starting
-+with \-\-ssl, such as \-\-ssl, \-\-sslproto, \-\-sslcertck, and others.
-+You can also do this using the corresponding user options in the .fetchmailrc
-+file. Some services, such as POP3 and IMAP, have
- different well known ports defined for the SSL encrypted services. The
- encrypted ports will be selected automatically when SSL is enabled and
--no explicit port is specified. The \-\-sslproto 'SSL3' option should be
--used to select the SSLv3 protocol (default if unset: v2 or v3). Also,
--the \-\-sslcertck command line or sslcertck run control file option
--should be used to force strict certificate checking - see below.
-+no explicit port is specified. Also, the \-\-sslcertck command line or
-+sslcertck run control file option should be used to force strict
-+certificate checking - see below.
- .PP
- If SSL is not configured, fetchmail will usually opportunistically try to use
--STARTTLS. STARTTLS can be enforced by using \-\-sslproto "TLS1". TLS
--connections use the same port as the unencrypted version of the
-+STARTTLS. STARTTLS can be enforced by using \-\-sslproto\~auto and
-+defeated by using \-\-sslproto\~''.
-+TLS connections use the same port as the unencrypted version of the
- protocol and negotiate TLS via special command. The \-\-sslcertck
- command line or sslcertck run control file option should be used to
- force strict certificate checking - see below.
---- fetchmail-6.3.26.orig/imap.c
-+++ fetchmail-6.3.26/imap.c
-@@ -405,6 +405,8 @@ static int imap_getauth(int sock, struct
- /* apply for connection authorization */
- {
- int ok = 0;
-+ char *commonname;
-+
- (void)greeting;
-
- /*
-@@ -429,25 +431,21 @@ static int imap_getauth(int sock, struct
- return(PS_SUCCESS);
- }
-
--#ifdef SSL_ENABLE
-- if (maybe_tls(ctl)) {
-- char *commonname;
--
-- commonname = ctl->server.pollname;
-- if (ctl->server.via)
-- commonname = ctl->server.via;
-- if (ctl->sslcommonname)
-- commonname = ctl->sslcommonname;
-+ commonname = ctl->server.pollname;
-+ if (ctl->server.via)
-+ commonname = ctl->server.via;
-+ if (ctl->sslcommonname)
-+ commonname = ctl->sslcommonname;
-
-- if (strstr(capabilities, "STARTTLS")
-- || must_tls(ctl)) /* if TLS is mandatory, ignore capabilities */
-+#ifdef SSL_ENABLE
-+ if (maybe_starttls(ctl)) {
-+ if ((strstr(capabilities, "STARTTLS") && maybe_starttls(ctl))
-+ || must_starttls(ctl)) /* if TLS is mandatory, ignore capabilities */
- {
-- /* Use "tls1" rather than ctl->sslproto because tls1 is the only
-- * protocol that will work with STARTTLS. Don't need to worry
-- * whether TLS is mandatory or opportunistic unless SSLOpen() fails
-- * (see below). */
-+ /* Don't need to worry whether TLS is mandatory or
-+ * opportunistic unless SSLOpen() fails (see below). */
- if (gen_transact(sock, "STARTTLS") == PS_SUCCESS
-- && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, "tls1", ctl->sslcertck,
-+ && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, ctl->sslproto, ctl->sslcertck,
- ctl->sslcertfile, ctl->sslcertpath, ctl->sslfingerprint, commonname,
- ctl->server.pollname, &ctl->remotename)) != -1)
- {
-@@ -470,7 +468,7 @@ static int imap_getauth(int sock, struct
- {
- report(stdout, GT_("%s: upgrade to TLS succeeded.\n"), commonname);
- }
-- } else if (must_tls(ctl)) {
-+ } else if (must_starttls(ctl)) {
- /* Config required TLS but we couldn't guarantee it, so we must
- * stop. */
- set_timeout(0);
-@@ -492,6 +490,10 @@ static int imap_getauth(int sock, struct
- /* Usable. Proceed with authenticating insecurely. */
- }
- }
-+ } else {
-+ if (strstr(capabilities, "STARTTLS") && outlevel >= O_VERBOSE) {
-+ report(stdout, GT_("%s: WARNING: server offered STARTTLS but sslproto '' given.\n"), commonname);
-+ }
- }
- #endif /* SSL_ENABLE */
-
---- fetchmail-6.3.26.orig/po/Makevars
-+++ fetchmail-6.3.26/po/Makevars
-@@ -46,3 +46,15 @@ MSGID_BUGS_ADDRESS = fetchmail-devel@lis
- # This is the list of locale categories, beyond LC_MESSAGES, for which the
- # message catalogs shall be used. It is usually empty.
- EXTRA_LOCALE_CATEGORIES =
-+
-+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
-+# context. Possible values are "yes" and "no". Set this to yes if the
-+# package uses functions taking also a message context, like pgettext(), or
-+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
-+USE_MSGCTXT = no
-+
-+# These options get passed to msgmerge.
-+# Useful options are in particular:
-+# --previous to keep previous msgids of translated messages,
-+# --quiet to reduce the verbosity.
-+MSGMERGE_OPTIONS =
---- fetchmail-6.3.26.orig/pop3.c
-+++ fetchmail-6.3.26/pop3.c
-@@ -281,6 +281,7 @@ static int pop3_getauth(int sock, struct
- #endif /* OPIE_ENABLE */
- #ifdef SSL_ENABLE
- flag connection_may_have_tls_errors = FALSE;
-+ char *commonname;
- #endif /* SSL_ENABLE */
-
- done_capa = FALSE;
-@@ -393,7 +394,7 @@ static int pop3_getauth(int sock, struct
- (ctl->server.authenticate == A_KERBEROS_V5) ||
- (ctl->server.authenticate == A_OTP) ||
- (ctl->server.authenticate == A_CRAM_MD5) ||
-- maybe_tls(ctl))
-+ maybe_starttls(ctl))
- {
- if ((ok = capa_probe(sock)) != PS_SUCCESS)
- /* we are in STAGE_GETAUTH => failure is PS_AUTHFAIL! */
-@@ -406,12 +407,12 @@ static int pop3_getauth(int sock, struct
- (ok == PS_SOCKET && !ctl->wehaveauthed))
- {
- #ifdef SSL_ENABLE
-- if (must_tls(ctl)) {
-+ if (must_starttls(ctl)) {
- /* fail with mandatory STLS without repoll */
- report(stderr, GT_("TLS is mandatory for this session, but server refused CAPA command.\n"));
- report(stderr, GT_("The CAPA command is however necessary for TLS.\n"));
- return ok;
-- } else if (maybe_tls(ctl)) {
-+ } else if (maybe_starttls(ctl)) {
- /* defeat opportunistic STLS */
- xfree(ctl->sslproto);
- ctl->sslproto = xstrdup("");
-@@ -431,24 +432,19 @@ static int pop3_getauth(int sock, struct
- }
-
- #ifdef SSL_ENABLE
-- if (maybe_tls(ctl)) {
-- char *commonname;
-+ commonname = ctl->server.pollname;
-+ if (ctl->server.via)
-+ commonname = ctl->server.via;
-+ if (ctl->sslcommonname)
-+ commonname = ctl->sslcommonname;
-
-- commonname = ctl->server.pollname;
-- if (ctl->server.via)
-- commonname = ctl->server.via;
-- if (ctl->sslcommonname)
-- commonname = ctl->sslcommonname;
--
-- if (has_stls
-- || must_tls(ctl)) /* if TLS is mandatory, ignore capabilities */
-+ if (maybe_starttls(ctl)) {
-+ if (has_stls || must_starttls(ctl)) /* if TLS is mandatory, ignore capabilities */
- {
-- /* Use "tls1" rather than ctl->sslproto because tls1 is the only
-- * protocol that will work with STARTTLS. Don't need to worry
-- * whether TLS is mandatory or opportunistic unless SSLOpen() fails
-- * (see below). */
-+ /* Don't need to worry whether TLS is mandatory or
-+ * opportunistic unless SSLOpen() fails (see below). */
- if (gen_transact(sock, "STLS") == PS_SUCCESS
-- && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, "tls1", ctl->sslcertck,
-+ && (set_timeout(mytimeout), SSLOpen(sock, ctl->sslcert, ctl->sslkey, ctl->sslproto, ctl->sslcertck,
- ctl->sslcertfile, ctl->sslcertpath, ctl->sslfingerprint, commonname,
- ctl->server.pollname, &ctl->remotename)) != -1)
- {
-@@ -475,7 +471,7 @@ static int pop3_getauth(int sock, struct
- {
- report(stdout, GT_("%s: upgrade to TLS succeeded.\n"), commonname);
- }
-- } else if (must_tls(ctl)) {
-+ } else if (must_starttls(ctl)) {
- /* Config required TLS but we couldn't guarantee it, so we must
- * stop. */
- set_timeout(0);
-@@ -495,7 +491,11 @@ static int pop3_getauth(int sock, struct
- }
- }
- }
-- } /* maybe_tls() */
-+ } else { /* maybe_starttls() */
-+ if (has_stls && outlevel >= O_VERBOSE) {
-+ report(stdout, GT_("%s: WARNING: server offered STLS, but sslproto '' given.\n"), commonname);
-+ }
-+ } /* maybe_starttls() */
- #endif /* SSL_ENABLE */
-
- /*
---- fetchmail-6.3.26.orig/socket.c
-+++ fetchmail-6.3.26/socket.c
-@@ -876,7 +876,9 @@ int SSLOpen(int sock, char *mycert, char
- {
- struct stat randstat;
- int i;
-+ int avoid_ssl_versions = SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3;
- long sslopts = SSL_OP_ALL;
-+ int ssle_connect = 0;
-
- SSL_load_error_strings();
- SSL_library_init();
-@@ -906,25 +908,57 @@ int SSLOpen(int sock, char *mycert, char
- /* Make sure a connection referring to an older context is not left */
- _ssl_context[sock] = NULL;
- if(myproto) {
-- if(!strcasecmp("ssl2",myproto)) {
--#if HAVE_DECL_SSLV2_CLIENT_METHOD + 0 > 0
-- _ctx[sock] = SSL_CTX_new(SSLv2_client_method());
-+ if(!strcasecmp("ssl3",myproto)) {
-+#if (HAVE_DECL_SSLV3_CLIENT_METHOD > 0) && (0 == OPENSSL_NO_SSL3 + 0)
-+ _ctx[sock] = SSL_CTX_new(SSLv3_client_method());
-+ avoid_ssl_versions &= ~SSL_OP_NO_SSLv3;
- #else
-- report(stderr, GT_("Your operating system does not support SSLv2.\n"));
-+ report(stderr, GT_("Your OpenSSL version does not support SSLv3.\n"));
- return -1;
- #endif
-- } else if(!strcasecmp("ssl3",myproto)) {
-- _ctx[sock] = SSL_CTX_new(SSLv3_client_method());
-+ } else if(!strcasecmp("ssl3+",myproto)) {
-+ avoid_ssl_versions &= ~SSL_OP_NO_SSLv3;
-+ myproto = NULL;
- } else if(!strcasecmp("tls1",myproto)) {
- _ctx[sock] = SSL_CTX_new(TLSv1_client_method());
-- } else if (!strcasecmp("ssl23",myproto)) {
-+ } else if(!strcasecmp("tls1+",myproto)) {
-+ myproto = NULL;
-+#if defined(TLS1_1_VERSION) && TLS_MAX_VERSION >= TLS1_1_VERSION
-+ } else if(!strcasecmp("tls1.1",myproto)) {
-+ _ctx[sock] = SSL_CTX_new(TLSv1_1_client_method());
-+ } else if(!strcasecmp("tls1.1+",myproto)) {
-+ myproto = NULL;
-+ avoid_ssl_versions |= SSL_OP_NO_TLSv1;
-+#else
-+ } else if(!strcasecmp("tls1.1",myproto) || !strcasecmp("tls1.1+", myproto)) {
-+ report(stderr, GT_("Your OpenSSL version does not support TLS v1.1.\n"));
-+ return -1;
-+#endif
-+#if defined(TLS1_2_VERSION) && TLS_MAX_VERSION >= TLS1_2_VERSION
-+ } else if(!strcasecmp("tls1.2",myproto)) {
-+ _ctx[sock] = SSL_CTX_new(TLSv1_2_client_method());
-+ } else if(!strcasecmp("tls1.2+",myproto)) {
-+ myproto = NULL;
-+ avoid_ssl_versions |= SSL_OP_NO_TLSv1;
-+ avoid_ssl_versions |= SSL_OP_NO_TLSv1_1;
-+#else
-+ } else if(!strcasecmp("tls1.2",myproto) || !strcasecmp("tls1.2+", myproto)) {
-+ report(stderr, GT_("Your OpenSSL version does not support TLS v1.2.\n"));
-+ return -1;
-+#endif
-+ } else if (!strcasecmp("ssl23",myproto) || 0 == strcasecmp("auto",myproto)) {
- myproto = NULL;
- } else {
-- report(stderr,GT_("Invalid SSL protocol '%s' specified, using default (SSLv23).\n"), myproto);
-+ report(stderr,GT_("Invalid SSL protocol '%s' specified, using default autoselect (SSL23).\n"), myproto);
- myproto = NULL;
- }
- }
-- if(!myproto) {
-+ // do not combine into an else { } as myproto may be nulled
-+ // above!
-+ if (!myproto) {
-+ // SSLv23 is a misnomer and will in fact use the best
-+ // available protocol, subject to SSL_OP_NO*
-+ // constraints.
- _ctx[sock] = SSL_CTX_new(SSLv23_client_method());
- }
- if(_ctx[sock] == NULL) {
-@@ -938,7 +972,7 @@ int SSLOpen(int sock, char *mycert, char
- sslopts &= ~ SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS;
- }
-
-- SSL_CTX_set_options(_ctx[sock], sslopts);
-+ SSL_CTX_set_options(_ctx[sock], sslopts | avoid_ssl_versions);
-
- if (certck) {
- SSL_CTX_set_verify(_ctx[sock], SSL_VERIFY_PEER, SSL_ck_verify_callback);
-@@ -1008,8 +1042,18 @@ int SSLOpen(int sock, char *mycert, char
- }
-
- if (SSL_set_fd(_ssl_context[sock], sock) == 0
-- || SSL_connect(_ssl_context[sock]) < 1) {
-+ || (ssle_connect = SSL_connect(_ssl_context[sock])) < 1) {
-+ int e = errno;
-+ unsigned long ssle_err_from_queue = ERR_peek_error();
-+ unsigned long ssle_err_from_get_error = SSL_get_error(_ssl_context[sock], ssle_connect);
- ERR_print_errors_fp(stderr);
-+ if (SSL_ERROR_SYSCALL == ssle_err_from_get_error && 0 == ssle_err_from_queue) {
-+ if (0 == ssle_connect) {
-+ report(stderr, GT_("Server shut down connection prematurely during SSL_connect().\n"));
-+ } else if (ssle_connect < 0) {
-+ report(stderr, GT_("System error during SSL_connect(): %s\n"), strerror(e));
-+ }
-+ }
- SSL_free( _ssl_context[sock] );
- _ssl_context[sock] = NULL;
- SSL_CTX_free(_ctx[sock]);
-@@ -1017,6 +1061,24 @@ int SSLOpen(int sock, char *mycert, char
- return(-1);
- }
-
-+ if (outlevel >= O_VERBOSE) {
-+ SSL_CIPHER const *sc;
-+ int bitsmax, bitsused;
-+
-+ const char *ver;
-+
-+ ver = SSL_get_version(_ssl_context[sock]);
-+
-+ sc = SSL_get_current_cipher(_ssl_context[sock]);
-+ if (!sc) {
-+ report (stderr, GT_("Cannot obtain current SSL/TLS cipher - no session established?\n"));
-+ } else {
-+ bitsused = SSL_CIPHER_get_bits(sc, &bitsmax);
-+ report(stdout, GT_("SSL/TLS: using protocol %s, cipher %s, %d/%d secret/processed bits\n"),
-+ ver, SSL_CIPHER_get_name(sc), bitsused, bitsmax);
-+ }
-+ }
-+
- /* Paranoia: was the callback not called as we expected? */
- if (!_depth0ck) {
- report(stderr, GT_("Certificate/fingerprint verification was somehow skipped!\n"));
---- /dev/null
-+++ fetchmail-6.3.26/starttls.c
-@@ -0,0 +1,37 @@
-+/** \file tls.c - collect common TLS functionality
-+ * \author Matthias Andree
-+ * \date 2006
-+ */
-+
-+#include "fetchmail.h"
-+
-+#include <string.h>
-+
-+#ifdef HAVE_STRINGS_H
-+#include <strings.h>
-+#endif
-+
-+/** return true if user allowed opportunistic STARTTLS/STLS */
-+int maybe_starttls(struct query *ctl) {
-+#ifdef SSL_ENABLE
-+ /* opportunistic or forced TLS */
-+ return (!ctl->sslproto || strlen(ctl->sslproto))
-+ && !ctl->use_ssl;
-+#else
-+ (void)ctl;
-+ return 0;
-+#endif
-+}
-+
-+/** return true if user requires STARTTLS/STLS, note though that this
-+ * code must always use a logical AND with maybe_tls(). */
-+int must_starttls(struct query *ctl) {
-+#ifdef SSL_ENABLE
-+ return maybe_starttls(ctl)
-+ && (ctl->sslfingerprint || ctl->sslcertck
-+ || (ctl->sslproto && !strcasecmp(ctl->sslproto, "tls1")));
-+#else
-+ (void)ctl;
-+ return 0;
-+#endif
-+}
diff --git a/meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb b/meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb
deleted file mode 100644
index 5af5d0df62..0000000000
--- a/meta-networking/recipes-support/fetchmail/fetchmail_6.3.26.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Fetchmail retrieves mail from remote mail servers and forwards it via SMTP"
-HOMEPAGE = "http://www.fetchmail.info/"
-DESCRIPTION = "Fetchmail is a full-featured, robust, well-documented remote-mail retrieval and forwarding utility intended to be used over on-demand TCP/IP links (such as SLIP or PPP connections). It supports every remote-mail protocol now in use on the Internet: POP2, POP3, RPOP, APOP, KPOP, all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and IPSEC."
-SECTION = "mail"
-LICENSE = "GPLv2 & MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbb509e0303f5ded1cbfc0cc8705f28c"
-
-DEPENDS = "openssl"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \
- file://02_remove_SSLv3.patch \
- "
-SRC_URI[md5sum] = "61b66faad044afa26e142bb1791aa2b3"
-SRC_URI[sha256sum] = "79b4c54cdbaf02c1a9a691d9948fcb1a77a1591a813e904283a8b614b757e850"
-
-inherit autotools gettext python-dir pythonnative
-
-EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${prefix}"
-
-PACKAGES =+ "fetchmail-python"
-FILES_fetchmail-python = "${libdir}/${PYTHON_DIR}/*"
diff --git a/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb b/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb
new file mode 100644
index 0000000000..587a479497
--- /dev/null
+++ b/meta-networking/recipes-support/fetchmail/fetchmail_6.4.38.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Fetchmail retrieves mail from remote mail servers and forwards it via SMTP"
+HOMEPAGE = "http://www.fetchmail.info/"
+DESCRIPTION = "Fetchmail is a full-featured, robust, well-documented remote-mail retrieval \
+and forwarding utility intended to be used over on-demand TCP/IP links (such as SLIP or PPP \
+connections). It supports every remote-mail protocol now in use on the Internet: POP2, POP3, \
+RPOP, APOP, KPOP, all flavors of IMAP, ETRN, and ODMR. It can even support IPv6 and IPSEC."
+SECTION = "mail"
+LICENSE = "GPL-2.0-only & MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ee6b9f41d9324434dd11bd8a38f1b044"
+
+DEPENDS = "openssl"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz \
+ "
+SRC_URI[sha256sum] = "a6cb4ea863ac61d242ffb2db564a39123761578d3e40d71ce7b6f2905be609d9"
+
+inherit autotools gettext pkgconfig python3-dir python3native
+
+EXTRA_OECONF = "--with-ssl=${STAGING_DIR_HOST}${prefix}"
+
+do_install:append() {
+ sed -i 's,${RECIPE_SYSROOT_NATIVE},,g' ${D}${bindir}/fetchmailconf
+}
+
+PACKAGES =+ "fetchmail-python"
+FILES:fetchmail-python = "${libdir}/${PYTHON_DIR}/*"
diff --git a/meta-networking/recipes-support/fping/fping_3.5.bb b/meta-networking/recipes-support/fping/fping_5.2.bb
index 82e3bf0730..f75b6441b2 100644
--- a/meta-networking/recipes-support/fping/fping_3.5.bb
+++ b/meta-networking/recipes-support/fping/fping_5.2.bb
@@ -7,13 +7,15 @@ targets to ping. Instead of sending to one target until it times out or \
replies, fping will send out a ping packet and move on to the next target \
in a round-robin fashion."
HOMEPAGE = "http://www.fping.org/"
+BUGTRACKER = "https://github.com/schweikert/fping/issues"
SECTION = "net"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=09d77789fe32be35acde9637a5ee39b1"
+
+LICENSE = "fping"
+NO_GENERIC_LICENSE[fping] = "COPYING"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c6170fbadddfcd74f011515291d96901"
SRC_URI = "http://www.fping.org/dist/fping-${PV}.tar.gz"
-SRC_URI[md5sum] = "2e17cb655aa4eb59b5a4a38a89e746ed"
-SRC_URI[sha256sum] = "09b8960e235341bae6000085d38106357eae656a79e0119bd27e816c9003656a"
+SRC_URI[sha256sum] = "a7692d10d73fb0bb76e1f7459aa7f19bbcdbfc5adbedef02f468974b18b0e42f"
S = "${WORKDIR}/fping-${PV}"
diff --git a/meta-networking/recipes-support/fwknop/fwknop/0001-Fix-compilation-with-GCC-s-fno-common-flag-fixes-305.patch b/meta-networking/recipes-support/fwknop/fwknop/0001-Fix-compilation-with-GCC-s-fno-common-flag-fixes-305.patch
new file mode 100644
index 0000000000..e696ac4ead
--- /dev/null
+++ b/meta-networking/recipes-support/fwknop/fwknop/0001-Fix-compilation-with-GCC-s-fno-common-flag-fixes-305.patch
@@ -0,0 +1,27 @@
+From 5aea816f27a71e6c88ad50e7326fa6584eeb7ad9 Mon Sep 17 00:00:00 2001
+From: Francois Marier <francois@debian.org>
+Date: Fri, 24 Jul 2020 21:22:47 -0700
+Subject: [PATCH] Fix compilation with GCC's -fno-common flag (fixes #305)
+
+Upstream-Status: Submitted [https://github.com/mrash/fwknop/pull/319]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ client/log_msg.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/client/log_msg.h b/client/log_msg.h
+index cc17716..3dda161 100644
+--- a/client/log_msg.h
++++ b/client/log_msg.h
+@@ -38,7 +38,7 @@ enum
+ LOG_VERBOSITY_INFO, /*!< Constant to define a INFO message */
+ LOG_VERBOSITY_DEBUG, /*!< Constant to define a DEBUG message */
+ LOG_LAST_VERBOSITY
+-} log_level_t;
++};
+
+ #define LOG_DEFAULT_VERBOSITY LOG_VERBOSITY_NORMAL /*!< Default verbosity to use */
+
+--
+2.28.0
+
diff --git a/meta-networking/recipes-support/fwknop/fwknop/0001-Use-pkg-config-to-find-gpgme.patch b/meta-networking/recipes-support/fwknop/fwknop/0001-Use-pkg-config-to-find-gpgme.patch
new file mode 100644
index 0000000000..146501c775
--- /dev/null
+++ b/meta-networking/recipes-support/fwknop/fwknop/0001-Use-pkg-config-to-find-gpgme.patch
@@ -0,0 +1,27 @@
+From f8f4e1a617c4610ea7dc40a60f1c696ebc37850c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 2 Apr 2023 09:27:42 -0700
+Subject: [PATCH] Use pkg-config to find gpgme
+
+Upstream-Status: Inappropriate [OE specific]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ m4/gpgme.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/m4/gpgme.m4 b/m4/gpgme.m4
+index 44bf43c..c9a8ae6 100644
+--- a/m4/gpgme.m4
++++ b/m4/gpgme.m4
+@@ -18,7 +18,7 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG],
+ if test "x$gpgme_config_prefix" != x ; then
+ GPGME_CONFIG="$gpgme_config_prefix/bin/gpgme-config"
+ fi
+- AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no)
++ GPGME_CONFIG="pkg-config gpgme"
+
+ if test "$GPGME_CONFIG" != "no" ; then
+ gpgme_version=`$GPGME_CONFIG --version`
+--
+2.40.0
+
diff --git a/meta-networking/recipes-support/fwknop/fwknop/0001-configure.ac-Fix-missing-comma-in-AS_IF.patch b/meta-networking/recipes-support/fwknop/fwknop/0001-configure.ac-Fix-missing-comma-in-AS_IF.patch
new file mode 100644
index 0000000000..f3e1707408
--- /dev/null
+++ b/meta-networking/recipes-support/fwknop/fwknop/0001-configure.ac-Fix-missing-comma-in-AS_IF.patch
@@ -0,0 +1,29 @@
+From fee4cb0ae2d1fcd012cb7f501c3db0d8ec910798 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sun, 2 Apr 2023 10:01:51 -0700
+Subject: [PATCH] configure.ac: Fix missing comma in AS_IF
+
+this is flagged with autconf 2.72
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 47a069e..9cdfd3f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -744,7 +744,7 @@ dnl
+ IPFW_EXE=""
+ IPTABLES_EXE=""
+ FIREWALLD_EXE=""
+- ]
++ ],
+ ]
+ ]
+ ]
+--
+2.40.0
+
diff --git a/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb b/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb
index 0fd5f6fed5..a1f56cdf16 100644
--- a/meta-networking/recipes-support/fwknop/fwknop_2.6.9.bb
+++ b/meta-networking/recipes-support/fwknop/fwknop_2.6.10.bb
@@ -1,37 +1,30 @@
SUMMARY = "fwknop - Single Packet Authorization"
HOMEPAGE = "http://www.cipherdyne.org/fwknop/"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
"
-inherit autotools-brokensep
+inherit autotools-brokensep pkgconfig
SRC_URI = "http://www.cipherdyne.org/${BPN}/download/${BPN}-${PV}.tar.bz2 \
+ file://0001-Fix-compilation-with-GCC-s-fno-common-flag-fixes-305.patch \
+ file://0001-Use-pkg-config-to-find-gpgme.patch \
+ file://0001-configure.ac-Fix-missing-comma-in-AS_IF.patch \
"
-
-SRC_URI[md5sum] = "e2c49e9674888a028bd443a55c3aaa22"
-SRC_URI[sha256sum] = "5bf47fe1fd30e862d29464f762c0b8bf89b5e298665c37624d6707826da956d4"
+SRC_URI[sha256sum] = "f6c09bec97ed8e474a98ae14f9f53e1bcdda33393f20667b6af3fb6bb894ca77"
DEPENDS = "libpcap gpgme"
-EXTRA_OECONF = " --with-iptables=/usr/sbin/iptables \
- "
+EXTRA_OECONF = " --with-iptables=${sbindir}/iptables"
-do_configure () {
+do_configure:prepend () {
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/config
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/config
-
- aclocal
- libtoolize --automake --copy --force
- autoconf
- autoheader
- automake -a
- oe_runconf
}
PACKAGES =+ "${PN}-client ${PN}-daemon"
-FILES_${PN}-client = "${bindir}/fwknop"
-FILES_${PN}-daemon = "${sbindir}/fwknopd \
+FILES:${PN}-client = "${bindir}/fwknop"
+FILES:${PN}-daemon = "${sbindir}/fwknopd \
${sysconfdir}/fwknop/access.conf \
${sysconfdir}/fwknop/fwknopd.conf"
diff --git a/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb b/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
index ed5c3a9799..8e23b66c48 100644
--- a/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
+++ b/meta-networking/recipes-support/geoip/geoip-perl_1.51.bb
@@ -6,12 +6,12 @@ SUMMARY = "GeoIP perl API library to access location database"
DESCRIPTION = "perl library for country/city/organization to IP address or hostname mapping"
HOMEPAGE = "http://www.maxmind.com/app/ip-location"
SECTION = "libdevel"
-LICENSE = "Artistic-1.0 | GPL-1.0+"
+LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e4f3ea6e9b28af88dc0321190a1f8250"
S = "${WORKDIR}/git"
SRCREV = "4cdfdc38eca237c19c22a8b90490446ce6d970fa"
-SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;protocol=https; \
+SRC_URI = "git://github.com/maxmind/geoip-api-perl.git;branch=main;protocol=https \
file://run-ptest \
"
@@ -30,6 +30,7 @@ do_install_ptest () {
install ${S}/t/*.t* ${D}${PTEST_PATH}/t
install ${S}/t/data/* ${D}${PTEST_PATH}/t/data
}
+RDEPENDS:${PN}-ptest += "perl-modules"
-FILES_${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/Geo/IP/.debug"
+FILES:${PN}-dbg += "${libdir}/perl/vendor_perl/*/auto/Geo/IP/.debug"
diff --git a/meta-networking/recipes-support/geoip/geoip_1.6.12.bb b/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
index c3ce4d88a9..429cd69d6d 100644
--- a/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
+++ b/meta-networking/recipes-support/geoip/geoip_1.6.12.bb
@@ -10,11 +10,11 @@ SECTION = "libdevel"
GEOIP_DATABASE_VERSION = "20181205"
-SRC_URI = "git://github.com/maxmind/geoip-api-c.git \
- http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz;apply=no;name=GeoIP-dat;downloadfilename=GeoIP.dat.${GEOIP_DATABASE_VERSION}.gz \
- http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz;apply=no;name=GeoIPv6-dat;downloadfilename=GeoIPv6.dat.${GEOIP_DATABASE_VERSION}.gz \
- http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz;apply=no;name=GeoLiteCity-dat;downloadfilename=GeoLiteCity.dat.${GEOIP_DATABASE_VERSION}.gz \
- http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz;apply=no;name=GeoLiteCityv6-dat;downloadfilename=GeoLiteCityv6.dat.${GEOIP_DATABASE_VERSION}.gz \
+SRC_URI = "git://github.com/maxmind/geoip-api-c.git;branch=main;protocol=https \
+ http://sources.openembedded.org/GeoIP.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIP-dat; \
+ http://sources.openembedded.org/GeoIPv6.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoIPv6-dat; \
+ http://sources.openembedded.org/GeoLiteCity.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoLiteCity-dat; \
+ http://sources.openembedded.org/GeoLiteCityv6.dat.${GEOIP_DATABASE_VERSION}.gz;apply=no;name=GeoLiteCityv6-dat; \
file://run-ptest \
"
SRCREV = "4b526e7331ca1d692b74a0509ddcc725622ed31a"
@@ -31,7 +31,7 @@ SRC_URI[GeoLiteCity-dat.sha256sum] = "90db2e52195e3d1bcdb2c2789209006d09de5c7428
SRC_URI[GeoLiteCityv6-dat.md5sum] = "6734ccdc644fc0ba76eb276dce73d005"
SRC_URI[GeoLiteCityv6-dat.sha256sum] = "c95a9d2643b7f53d7abeed2114388870e13fbbad4653f450a49efa7e4b86aca4"
-LICENSE = "LGPL-2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad \
file://LICENSE;md5=0388276749a542b0d611601fa7c1dcc8 "
@@ -54,12 +54,12 @@ do_install() {
}
PACKAGES =+ "${PN}-database"
-FILES_${PN}-database = ""
-FILES_${PN}-database += "${datadir}/GeoIP/*"
+FILES:${PN}-database = ""
+FILES:${PN}-database += "${datadir}/GeoIP/*"
# We cannot do much looking up without databases.
#
-RDEPENDS_${PN} += "${PN}-database"
+RDEPENDS:${PN} += "${PN}-database"
inherit ptest
diff --git a/meta-networking/recipes-support/geoip/geoipupdate_2.5.0.bb b/meta-networking/recipes-support/geoip/geoipupdate_2.5.0.bb
index f4eb2b799d..9a0292eacc 100644
--- a/meta-networking/recipes-support/geoip/geoipupdate_2.5.0.bb
+++ b/meta-networking/recipes-support/geoip/geoipupdate_2.5.0.bb
@@ -13,19 +13,19 @@ SRC_URI = "https://github.com/maxmind/geoipupdate/releases/download/v2.5.0/geoip
SRC_URI[md5sum] = "28f633c49ec87ab01ad3c0fb0228a696"
SRC_URI[sha256sum] = "5119fd0e338cd083e886228b26679c64bcbaade8a815be092aecf865a610ab26"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "\
file://ChangeLog.md;md5=11d2e31df0de2be3ccc3e2286c4dafcb \
"
-FILES_${PN} = "/usr/share/GeoIP \
+FILES:${PN} = "/usr/share/GeoIP \
/etc/GeoIP.conf \
/etc/cron.d/geoipupdate.cron \
/usr/bin/geoipupdate \
"
inherit autotools
-do_install_append() {
+do_install:append() {
install -d ${D}/${sysconfdir}
install -d ${D}/${sysconfdir}/cron.d
install ${WORKDIR}/GeoIP.conf ${D}/${sysconfdir}/
diff --git a/meta-networking/recipes-support/htpdate/htpdate/0001-Make-environment-variables-assignments-to-be-weak.patch b/meta-networking/recipes-support/htpdate/htpdate/0001-Make-environment-variables-assignments-to-be-weak.patch
deleted file mode 100644
index 0ee44c1621..0000000000
--- a/meta-networking/recipes-support/htpdate/htpdate/0001-Make-environment-variables-assignments-to-be-weak.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 04603f52d793f964653e6a985944400fe4fa87ee Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 13 Jun 2018 17:50:20 -0700
-Subject: [PATCH] Make environment variables assignments to be weak
-
-So that OE can override them for cross builds
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 1c80c09..884126c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -2,11 +2,11 @@ prefix = $(DESTDIR)/usr
- bindir = ${prefix}/bin
- mandir = ${prefix}/share/man
-
--CC = gcc
-+CC ?= gcc
- CFLAGS += -Wall -std=c99 -pedantic -O2
-
--INSTALL = /usr/bin/install -c
--STRIP = /usr/bin/strip -s
-+INSTALL ?= /usr/bin/install -c
-+STRIP ?= /usr/bin/strip -s
-
- all: htpdate
-
diff --git a/meta-networking/recipes-support/htpdate/htpdate/0001-Replace-ntp_adjtime-with-adjtimex.patch b/meta-networking/recipes-support/htpdate/htpdate/0001-Replace-ntp_adjtime-with-adjtimex.patch
deleted file mode 100644
index cca8c6c364..0000000000
--- a/meta-networking/recipes-support/htpdate/htpdate/0001-Replace-ntp_adjtime-with-adjtimex.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 75646a2d2df14fdbc4a01e222a779afac94861d1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 14 Jun 2018 20:11:08 -0700
-Subject: [PATCH] Replace ntp_adjtime with adjtimex.
-
-ntp_adjtime in glibc is an alias to adjtimex and
-musl does not provide ntp_adjtime at all
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- htpdate.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/htpdate.c b/htpdate.c
-index 4171efe..ff0bf8d 100644
---- a/htpdate.c
-+++ b/htpdate.c
-@@ -391,7 +391,7 @@ static int htpdate_adjtimex( double drift ) {
-
- /* Read current kernel frequency */
- tmx.modes = 0;
-- ntp_adjtime(&tmx);
-+ adjtimex(&tmx);
-
- /* Calculate new frequency */
- freq = (long)(65536e6 * drift);
-@@ -406,7 +406,7 @@ static int htpdate_adjtimex( double drift ) {
-
- /* Become root */
- swuid(0);
-- return( ntp_adjtime(&tmx) );
-+ return( adjtimex(&tmx) );
-
- }
-
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb b/meta-networking/recipes-support/htpdate/htpdate_1.3.7.bb
index eb6787846b..b6dfab0856 100644
--- a/meta-networking/recipes-support/htpdate/htpdate_1.2.0.bb
+++ b/meta-networking/recipes-support/htpdate/htpdate_1.3.7.bb
@@ -1,8 +1,4 @@
-# Copyright (C) 2018 Khem Raj <raj.khem@gmail.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
SUMMARY = "HTTP based time synchronization tool"
-
DESCRIPTION = "The HTTP Time Protocol (HTP) is used to synchronize a computer's time with\
web servers as reference time source. This program can be used instead\
ntpdate or similar, in networks that has a firewall blocking the NTP port.\
@@ -12,18 +8,15 @@ DESCRIPTION = "The HTTP Time Protocol (HTP) is used to synchronize a computer's
Htpdate works through proxy servers. Accuracy of htpdate will be usually\
within 0.5 seconds (better with multiple servers).\
"
+HOMEPAGE = "https://github.com/twekkel/htpdate"
+BUGTRACKER = "https://github.com/twekkel/htpdate/issues"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://htpdate.c;beginline=26;endline=30;md5=2b6cdb94bd5349646d7e33f9f501eef7"
-HOMEPAGE = "http://www.vervest.org/htp/"
+SRC_URI = "http://www.vervest.org/htp/archive/c/htpdate-${PV}.tar.gz"
+SRC_URI[sha256sum] = "88c52fe475308ee95f560fd7cf68c75bc6e9a6abf56be7fed203a7f762fe7ab2"
-LICENSE = "GPL-2.0+"
-LIC_FILES_CHKSUM = "file://htpdate.c;beginline=26;endline=30;md5=d7018a4d2c5a6eab392709a05e5e168a"
-
-SRC_URI = "http://www.vervest.org/htp/archive/c/htpdate-${PV}.tar.xz \
- file://0001-Make-environment-variables-assignments-to-be-weak.patch \
- file://0001-Replace-ntp_adjtime-with-adjtimex.patch \
- "
-SRC_URI[md5sum] = "9d5ca69be06edf5d535b52b5f790da4e"
-SRC_URI[sha256sum] = "22b2cf3ec45b0eedecddd3ad2a3d754ac57942ae7dcbac410d254935f0bdbc03"
+TARGET_CC_ARCH += "${LDFLAGS}"
do_configure () {
:
@@ -36,4 +29,3 @@ do_compile () {
do_install () {
oe_runmake install 'INSTALL=install' 'STRIP=echo' 'DESTDIR=${D}'
}
-
diff --git a/meta-networking/recipes-support/http-parser/http-parser_2.9.4.bb b/meta-networking/recipes-support/http-parser/http-parser_2.9.4.bb
new file mode 100644
index 0000000000..528289b7fd
--- /dev/null
+++ b/meta-networking/recipes-support/http-parser/http-parser_2.9.4.bb
@@ -0,0 +1,31 @@
+SUMMARY = "HTTP request/response parser for C"
+DESCRIPTION = "This is a parser for HTTP messages written in C. It parses \
+ both requests and responses. The parser is designed to be used \
+ in performance HTTP applications. It does not make any \
+ syscalls nor allocations, it does not buffer data, it can be \
+ interrupted at anytime. Depending on your architecture, it \
+ only requires about 40 bytes of data per message stream (in a \
+ web server that is per connection)."
+HOMEPAGE = "https://github.com/nodejs/http-parser"
+SECTION = "libs"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE-MIT;md5=9bfa835d048c194ab30487af8d7b3778"
+
+SRC_URI = "git://github.com/nodejs/http-parser.git;branch=master;protocol=https"
+SRCREV = "2343fd6b5214b2ded2cdcf76de2bf60903bb90cd"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE = "PLATFORM=linux"
+
+do_configure[noexec] = "1"
+
+do_compile() {
+ oe_runmake library package
+}
+
+do_install() {
+ oe_runmake install DESTDIR=${D} PREFIX=${prefix} LIBDIR=${libdir}
+}
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/ifenslave/ifenslave_2.9.bb b/meta-networking/recipes-support/ifenslave/ifenslave_2.14.bb
index 125b59e760..02a5520a97 100644
--- a/meta-networking/recipes-support/ifenslave/ifenslave_2.9.bb
+++ b/meta-networking/recipes-support/ifenslave/ifenslave_2.14.bb
@@ -2,26 +2,21 @@ SUMMARY = "Configure network interfaces for parallel routing"
HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/bonding"
SECTION = "net"
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://debian/copyright;md5=acc89812938cf9ad6b1debc37cea0253"
inherit manpages
MAN_PKG = "${PN}"
-SRCREV = "42bfbb9beb924672ca86b86e9679ac3d6b87d992"
-SRC_URI = "git://salsa.debian.org/debian/ifenslave.git;protocol=https"
+SRCREV = "62e60904afbe58fda0c7104fdad1c4f618266ba6"
+SRC_URI = "git://salsa.debian.org/debian/ifenslave.git;protocol=https;branch=main"
S = "${WORKDIR}/git"
do_install() {
- install -d ${D}${sbindir}
- install -m 0755 ${S}/ifenslave ${D}${sbindir}/
-
install -m 0755 -D ${S}/debian/ifenslave.if-pre-up ${D}${sysconfdir}/network/if-pre-up.d/ifenslave
install -m 0755 -D ${S}/debian/ifenslave.if-post-down ${D}${sysconfdir}/network/if-post-down.d/ifenslave
install -m 0755 -D ${S}/debian/ifenslave.if-up ${D}${sysconfdir}/network/if-up.d/ifenslave
- install -m 0644 -D ${S}/debian/ifenslave.8 ${D}${mandir}/man8/ifenslave.8
}
-FILES_${PN}-doc_remove = "${mandir}"
-FILES_${PN} += "${mandir}/man8/ifenslave.8"
+FILES:${PN}-doc:remove = "${mandir}"
diff --git a/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch
new file mode 100644
index 0000000000..3bd87ff457
--- /dev/null
+++ b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.8_typo.patch
@@ -0,0 +1,17 @@
+Upstream-Status: Pending
+
+Description: Correct typo: s/ommited/omitted/
+Author: Michael Shuler <michael@pbandjelly.org>
+Index: ifmetric/man/ifmetric.8
+===================================================================
+--- ifmetric.orig/man/ifmetric.8
++++ ifmetric/man/ifmetric.8
+@@ -9,7 +9,7 @@ ifmetric is a Linux tool for setting the
+
+ ifmetric uses the Linux NETLINK interface to manipulate the routes. Because of that it is compatible with routes created with the new iproute2 utility.
+ .SH OPTIONS
+-You should specify the interface name as first parameter. The second parameter should be the new metric. If ommited the metric 0 (highest) is used.
++You should specify the interface name as first parameter. The second parameter should be the new metric. If omitted the metric 0 (highest) is used.
+ .SH RETURN VALUES
+ \fI0\f1 Success
+
diff --git a/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch
new file mode 100644
index 0000000000..a6d1828d22
--- /dev/null
+++ b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_netlink-invalid-arg.patch
@@ -0,0 +1,18 @@
+Upstream-Status: Pending
+
+Description: Fix "NETLINK: Error: Invalid argument" for links that are down, in kernel 4.4+
+Author: Jim Paris <jim@jtan.com>
+Bug-Debian: http://bugs.debian.org/864889
+Index: ifmetric/src/nlrequest.c
+===================================================================
+--- a/src/ifmetric.c
++++ b/src/ifmetric.c
+@@ -97,6 +97,8 @@
+ l = NLMSG_PAYLOAD(n, sizeof(struct rtmsg));
+ a = RTM_RTA(r);
+
++ r->rtm_flags &= ~(RTNH_F_DEAD | RTNH_F_LINKDOWN);
++
+ while(RTA_OK(a, l)) {
+ switch(a->rta_type) {
+ case RTA_PRIORITY:
diff --git a/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch
new file mode 100644
index 0000000000..19290a59dd
--- /dev/null
+++ b/meta-networking/recipes-support/ifmetric/ifmetric/ifmetric.c_typo.patch
@@ -0,0 +1,26 @@
+Upstream-Status: Pending
+
+Description: Correct spelling-error-in-binary s/Recieved/Received/
+Author: Michael Shuler <michael@pbandjelly.org>
+Index: ifmetric/src/ifmetric.c
+===================================================================
+--- ifmetric.orig/src/ifmetric.c 2013-09-04 18:37:59.000000000 -0500
++++ ifmetric/src/ifmetric.c 2013-09-04 19:08:38.539750778 -0500
+@@ -38,7 +38,7 @@
+ case RTA_OIF:
+
+ if (RTA_PAYLOAD(a) != sizeof(int)) {
+- fprintf(stderr, "NETLINK: Recieved corrupt RTA_OIF payload.\n");
++ fprintf(stderr, "NETLINK: Received corrupt RTA_OIF payload.\n");
+ return -1;
+ }
+
+@@ -102,7 +102,7 @@
+ case RTA_PRIORITY:
+
+ if (RTA_PAYLOAD(a) != sizeof(int)) {
+- fprintf(stderr, "NETLINK: Recieved corrupt RTA_PRIORITY payload.\n");
++ fprintf(stderr, "NETLINK: Received corrupt RTA_PRIORITY payload.\n");
+ return NULL;
+ }
+
diff --git a/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch b/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch
new file mode 100644
index 0000000000..89851517bf
--- /dev/null
+++ b/meta-networking/recipes-support/ifmetric/ifmetric/nlrequest.c_packet-too-small_fix.patch
@@ -0,0 +1,18 @@
+Upstream-Status: Pending
+
+Description: Fix "NETLINK: Packet too small or truncated!" error.
+Author: Benedek László <benedekl@gmail.com>
+Bug-Debian: http://bugs.debian.org/514197
+Index: ifmetric/src/nlrequest.c
+===================================================================
+--- ifmetric.orig/src/nlrequest.c 2013-09-05 14:10:42.000000000 -0500
++++ ifmetric/src/nlrequest.c 2013-09-05 14:19:06.573420862 -0500
+@@ -44,7 +44,7 @@
+
+ for (;;) {
+ int bytes;
+- char replybuf[2048];
++ char replybuf[4096];
+ struct nlmsghdr *p = (struct nlmsghdr *) replybuf;
+
+ if ((bytes = recv(s, &replybuf, sizeof(replybuf), 0)) < 0) {
diff --git a/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb b/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb
new file mode 100644
index 0000000000..1e57a48970
--- /dev/null
+++ b/meta-networking/recipes-support/ifmetric/ifmetric_0.3.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Set routing metrics for a network interface"
+
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
+
+SRC_URI = "http://0pointer.de/lennart/projects/ifmetric/ifmetric-${PV}.tar.gz \
+ file://ifmetric.8_typo.patch \
+ file://ifmetric.c_netlink-invalid-arg.patch \
+ file://ifmetric.c_typo.patch \
+ file://nlrequest.c_packet-too-small_fix.patch"
+SRC_URI[md5sum] = "74aa3f5ee8aca16a87e124ddcc64fa36"
+SRC_URI[sha256sum] = "0fa8510a4e34e555f136f9df81d26618313f2d69a4880c0fb5967f19502f1aec"
+
+inherit autotools
+
+# disable lynx support for now
+EXTRA_OECONF = "--disable-lynx"
diff --git a/meta-networking/recipes-support/iftop/iftop/iftop-1.0-gcc10.patch b/meta-networking/recipes-support/iftop/iftop/iftop-1.0-gcc10.patch
new file mode 100644
index 0000000000..28391a57cf
--- /dev/null
+++ b/meta-networking/recipes-support/iftop/iftop/iftop-1.0-gcc10.patch
@@ -0,0 +1,68 @@
+Patch by Robert Scheck <robert@fedoraproject.org> for iftop <= 1.0pre4 to avoid a
+GCC 10 related build failure due to global variables in a header file with omitted
+"extern" declaration, see also: https://gcc.gnu.org/gcc-10/porting_to.html
+
+Example build failure output:
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: multiple definition of `screen_list'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaktotal'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peakrecv'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaksent'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: multiple definition of `totals'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: multiple definition of `screen_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: first defined here
+/usr/bin/ld: ui_common.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: multiple definition of `service_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: multiple definition of `screen_list'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaksent'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peakrecv'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaktotal'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: multiple definition of `totals'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: multiple definition of `screen_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: first defined here
+/usr/bin/ld: ui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: multiple definition of `service_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: multiple definition of `screen_list'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:36: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: multiple definition of `totals'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:37: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaksent'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peakrecv'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: multiple definition of `peaktotal'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:38: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: multiple definition of `screen_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:40: first defined here
+/usr/bin/ld: tui.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: multiple definition of `service_hash'; iftop.o:/builddir/build/BUILD/iftop-1.0pre4/ui_common.h:41: first defined here
+collect2: error: ld returned 1 exit status
+
+Patch from https://src.fedoraproject.org/rpms/iftop/raw/master/f/iftop-1.0-gcc10.patch
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/ui_common.h
++++ b/ui_common.h
+@@ -33,12 +33,12 @@ typedef struct host_pair_line_tag {
+
+ extern options_t options;
+
+-sorted_list_type screen_list;
+-host_pair_line totals;
+-int peaksent, peakrecv, peaktotal;
++extern sorted_list_type screen_list;
++extern host_pair_line totals;
++extern int peaksent, peakrecv, peaktotal;
+ extern history_type history_totals;
+-hash_type* screen_hash;
+-hash_type* service_hash;
++extern hash_type* screen_hash;
++extern hash_type* service_hash;
+
+ void analyse_data(void);
+ void screen_list_init(void);
+--- a/ui_common.c
++++ b/ui_common.c
+@@ -24,6 +24,12 @@ int history_divs[HISTORY_DIVISIONS] = {1
+ char* unit_bits[UNIT_DIVISIONS] = { "b", "Kb", "Mb", "Gb"};
+ char* unit_bytes[UNIT_DIVISIONS] = { "B", "KB", "MB", "GB"};
+
++sorted_list_type screen_list;
++host_pair_line totals;
++int peaksent, peakrecv, peaktotal;
++hash_type* screen_hash;
++hash_type* service_hash;
++
+ extern hash_type* history;
+ extern int history_pos;
+ extern int history_len;
diff --git a/meta-networking/recipes-support/iftop/iftop_1.0pre4.bb b/meta-networking/recipes-support/iftop/iftop_1.0pre4.bb
index 0c8e494c19..517d781281 100644
--- a/meta-networking/recipes-support/iftop/iftop_1.0pre4.bb
+++ b/meta-networking/recipes-support/iftop/iftop_1.0pre4.bb
@@ -3,10 +3,12 @@ HOMEPAGE = "http://www.ex-parrot.com/pdw/iftop/"
SECTION = "net"
DEPENDS = "libpcap ncurses"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=76498170798db0f4f0fb685a225f702f"
-SRC_URI = "http://www.ex-parrot.com/pdw/iftop/download/iftop-${PV}.tar.gz"
+SRC_URI = "http://www.ex-parrot.com/pdw/iftop/download/iftop-${PV}.tar.gz \
+ file://iftop-1.0-gcc10.patch \
+ "
SRC_URI[md5sum] = "7e6decb4958e8a4890cccac335239f24"
SRC_URI[sha256sum] = "f733eeea371a7577f8fe353d86dd88d16f5b2a2e702bd96f5ffb2c197d9b4f97"
diff --git a/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch b/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch
deleted file mode 100644
index 38d306475e..0000000000
--- a/meta-networking/recipes-support/ipcalc/ipcalc/0001-Makefile-pass-extra-linker-flags.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From fd80c0599083013a1b583feba5d7473f52b35938 Mon Sep 17 00:00:00 2001
-From: Mariia Movchan <mmovchan@cisco.com>
-Date: Tue, 6 Mar 2018 16:03:39 +0200
-Subject: [PATCH] Makefile: pass extra linker flags
-
-Fixes
-ERROR: QA Issue: No GNU_HASH in the elf binary
-
-Upstream-Status: Pending
-
-Signed-off-by: Mariia Movchan <mmovchan@cisco.com>
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 8beff8f..047f02a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -8,7 +8,7 @@ LIBS?=
- VERSION=0.2.2
- CC?=gcc
- CFLAGS?=-O2 -g -Wall
--LDFLAGS=$(LIBS)
-+LDFLAGS+=$(LIBS)
-
- ifeq ($(USE_GEOIP),yes)
- ifeq ($(USE_DYN_GEOIP),yes)
---
-2.15.1
-
diff --git a/meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb b/meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb
deleted file mode 100644
index b45642404c..0000000000
--- a/meta-networking/recipes-support/ipcalc/ipcalc_0.2.2.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Tool to assist in network address calculations for IPv4 and IPv6."
-HOMEPAGE = "https://github.com/nmav/ipcalc"
-
-SECTION = "net"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-S = "${WORKDIR}/git"
-SRCREV = "8348808a7869ca8f25a5b5deeaa418c2f6d52758"
-SRC_URI = "\
- git://github.com/nmav/ipcalc.git;protocol=https; \
- file://0001-Makefile-pass-extra-linker-flags.patch \
-"
-
-export USE_GEOIP = "no"
-
-do_install() {
- install -d ${D}/${bindir}
- install -m 0755 ${S}/ipcalc ${D}/${bindir}
-}
diff --git a/meta-networking/recipes-support/ipcalc/ipcalc_1.0.3.bb b/meta-networking/recipes-support/ipcalc/ipcalc_1.0.3.bb
new file mode 100644
index 0000000000..055c6e1432
--- /dev/null
+++ b/meta-networking/recipes-support/ipcalc/ipcalc_1.0.3.bb
@@ -0,0 +1,14 @@
+SUMMARY = "Tool to assist in network address calculations for IPv4 and IPv6."
+HOMEPAGE = "https://gitlab.com/ipcalc/ipcalc"
+
+SECTION = "net"
+
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://gitlab.com/ipcalc/ipcalc.git;protocol=https;branch=master"
+SRCREV = "c341e55be386649c0a5347eefeae410753c4e753"
+
+S = "${WORKDIR}/git"
+
+inherit meson
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch
deleted file mode 100644
index 11a9103935..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Disable-gcc8-specific-warnings.patch
+++ /dev/null
@@ -1,86 +0,0 @@
-From 282d492e4cab7b4d9c7321f4c0c55b615948e280 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 11 May 2018 14:09:17 -0700
-Subject: [PATCH] Disable gcc8 specific warnings
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/libipsec/ipsec_dump_policy.c | 5 +++++
- src/libipsec/pfkey_dump.c | 5 +++++
- src/racoon/isakmp.c | 11 ++++++++++-
- 3 files changed, 20 insertions(+), 1 deletion(-)
-
-diff --git a/src/libipsec/ipsec_dump_policy.c b/src/libipsec/ipsec_dump_policy.c
-index 4d0eb77..c3fc842 100644
---- a/src/libipsec/ipsec_dump_policy.c
-+++ b/src/libipsec/ipsec_dump_policy.c
-@@ -275,6 +275,10 @@ ipsec_dump_policy1(policy, delimiter, withports)
- return buf;
- }
-
-+#pragma GCC diagnostic push
-+#if defined(__GNUC__) && (__GNUC__ >= 8)
-+#pragma GCC diagnostic ignored "-Wformat-truncation"
-+#endif
- static char *
- ipsec_dump_ipsecrequest(buf, len, xisr, bound, withports)
- char *buf;
-@@ -419,3 +423,4 @@ set_address(buf, len, sa, withports)
-
- return buf;
- }
-+#pragma GCC diagnostic pop
-diff --git a/src/libipsec/pfkey_dump.c b/src/libipsec/pfkey_dump.c
-index 4627ebc..451e535 100644
---- a/src/libipsec/pfkey_dump.c
-+++ b/src/libipsec/pfkey_dump.c
-@@ -691,6 +691,10 @@ str_ipport(sa)
- /*
- * set "/prefix[port number]" to buffer.
- */
-+#pragma GCC diagnostic push
-+#if defined(__GNUC__) && (__GNUC__ >= 8)
-+#pragma GCC diagnostic ignored "-Wformat-truncation"
-+#endif
- static char *
- str_prefport(family, pref, port, ulp)
- u_int family, pref, port, ulp;
-@@ -735,6 +739,7 @@ str_prefport(family, pref, port, ulp)
-
- return buf;
- }
-+#pragma GCC diagnostic pop
-
- static void
- str_upperspec(ulp, p1, p2)
-diff --git a/src/racoon/isakmp.c b/src/racoon/isakmp.c
-index 7ff53a3..4addf24 100644
---- a/src/racoon/isakmp.c
-+++ b/src/racoon/isakmp.c
-@@ -3124,7 +3124,12 @@ script_hook(iph1, script)
- #endif
-
- /* local address */
-+#pragma GCC diagnostic push
-+#if defined(__GNUC__) && (__GNUC__ >= 8)
-+#pragma GCC diagnostic ignored "-Wstringop-truncation"
-+#endif
- GETNAMEINFO(iph1->local, addrstr, portstr);
-+#pragma GCC diagnostic pop
-
- if (script_env_append(&envp, &envc, "LOCAL_ADDR", addrstr) != 0) {
- plog(LLV_ERROR, LOCATION, NULL, "Cannot set LOCAL_ADDR\n");
-@@ -3138,8 +3143,12 @@ script_hook(iph1, script)
-
- /* Peer address */
- if (iph1->remote != NULL) {
-+#pragma GCC diagnostic push
-+#if defined(__GNUC__) && (__GNUC__ >= 8)
-+#pragma GCC diagnostic ignored "-Wstringop-truncation"
-+#endif
- GETNAMEINFO(iph1->remote, addrstr, portstr);
--
-+#pragma GCC diagnostic pop
- if (script_env_append(&envp, &envc,
- "REMOTE_ADDR", addrstr) != 0) {
- plog(LLV_ERROR, LOCATION, NULL,
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch
deleted file mode 100644
index 5c09147450..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-build-with-clang.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From 9135ca401186fb14e5e5110bbb04d1ccc480360a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 15 Nov 2016 04:15:44 +0000
-Subject: [PATCH] Fix build with clang
-
-Fixes for following errors found by clang
-
-src/racoon/eaytest.c:316:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true
- [-Werror,-Wtautological-pointer-compare]
- if (dnstr_w1 != NULL) {
- ^~~~~~~~ ~~~~
-src/racoon/eaytest.c:326:6: error: comparison of array 'dnstr_w1' not equal to a null pointer is always true
- [-Werror,-Wtautological-pointer-compare]
- if (dnstr_w1 != NULL) {
- ^~~~~~~~ ~~~~
-
-src/racoon/isakmp.c:1134:11: error: promoted type 'int' of K&R function parameter is not compatible with the
- parameter type 'u_int8_t' (aka 'unsigned char') declared in a previous prototype [-Werror,-Wknr-promoted-parameter]
- u_int8_t etype;
- ^
-src/racoon/isakmp.c:184:48: note: previous declaration is here
- struct sockaddr *, struct sockaddr *, u_int8_t));
- ^
- 1 error generated.
-
-src/racoon/racoonctl.c:1457:15: error: incompatible pointer types passing 'struct evt_async *' to parameter of type
- 'caddr_t' (aka 'char *') [-Werror,-Wincompatible-pointer-types]
- print_cfg(ec, len);
- ^~
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/racoon/eaytest.c | 4 ++--
- src/racoon/isakmp.c | 10 +++++-----
- src/racoon/racoonctl.c | 7 +++----
- 3 files changed, 10 insertions(+), 11 deletions(-)
-
-diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c
-index 1474bdc..d609e4f 100644
---- a/src/racoon/eaytest.c
-+++ b/src/racoon/eaytest.c
-@@ -313,7 +313,7 @@ certtest(ac, av)
-
- printf("exact match: succeed.\n");
-
-- if (dnstr_w1 != NULL) {
-+ if (dnstr_w1[0] != '\0') {
- asn1dn = eay_str2asn1dn(dnstr_w1, strlen(dnstr_w1));
- if (asn1dn == NULL || asn1dn->l == asn1dn0.l)
- errx(1, "asn1dn length wrong for wildcard 1\n");
-@@ -323,7 +323,7 @@ certtest(ac, av)
- printf("wildcard 1 match: succeed.\n");
- }
-
-- if (dnstr_w1 != NULL) {
-+ if (dnstr_w1[0] != '\0') {
- asn1dn = eay_str2asn1dn(dnstr_w2, strlen(dnstr_w2));
- if (asn1dn == NULL || asn1dn->l == asn1dn0.l)
- errx(1, "asn1dn length wrong for wildcard 2\n");
-diff --git a/src/racoon/isakmp.c b/src/racoon/isakmp.c
-index 2672f7a..da7ebe8 100644
---- a/src/racoon/isakmp.c
-+++ b/src/racoon/isakmp.c
-@@ -567,7 +567,7 @@ isakmp_main(msg, remote, local)
-
- /* it must be responder's 1st exchange. */
- if (isakmp_ph1begin_r(msg, remote, local,
-- isakmp->etype) < 0)
-+ (u_int8_t)isakmp->etype) < 0)
- return -1;
- break;
-
-@@ -1128,10 +1128,10 @@ isakmp_ph1begin_i(rmconf, remote, local)
-
- /* new negotiation of phase 1 for responder */
- static int
--isakmp_ph1begin_r(msg, remote, local, etype)
-- vchar_t *msg;
-- struct sockaddr *remote, *local;
-- u_int8_t etype;
-+isakmp_ph1begin_r(vchar_t *msg,
-+ struct sockaddr *remote,
-+ struct sockaddr *local,
-+ u_int8_t etype)
- {
- struct isakmp *isakmp = (struct isakmp *)msg->v;
- struct ph1handle *iph1;
-diff --git a/src/racoon/racoonctl.c b/src/racoon/racoonctl.c
-index da28ecd..bbf068e 100644
---- a/src/racoon/racoonctl.c
-+++ b/src/racoon/racoonctl.c
-@@ -1299,9 +1299,8 @@ print_evt(evtdump)
- * Print ISAKMP mode config info (IP and banner)
- */
- void
--print_cfg(buf, len)
-- caddr_t buf;
-- int len;
-+print_cfg(caddr_t buf,
-+ int len)
- {
- struct evt_async *evtdump = (struct evt_async *)buf;
- struct isakmp_data *attr;
-@@ -1454,7 +1453,7 @@ handle_recv(combuf)
- else if (evt_quit_event == ec->ec_type) {
- switch (ec->ec_type) {
- case EVT_PHASE1_MODE_CFG:
-- print_cfg(ec, len);
-+ print_cfg((caddr_t)ec, len);
- break;
- default:
- print_evt(ec);
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch
deleted file mode 100644
index 630ecdb5f4..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-Fix-header-issues-found-with-musl-libc.patch
+++ /dev/null
@@ -1,249 +0,0 @@
-From 7d9585be093c9cb2428b373c0b0088bb778942d0 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 20 Mar 2017 21:37:47 -0700
-Subject: [PATCH] Fix header issues found with musl libc
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/libipsec/ipsec_strerror.h | 3 +++
- src/libipsec/libpfkey.h | 4 +++-
- src/racoon/admin.c | 2 +-
- src/racoon/backupsa.c | 6 +++---
- src/racoon/cftoken.l | 4 ++++
- src/racoon/logger.h | 3 +++
- src/racoon/misc.h | 3 +++
- src/racoon/missing/crypto/sha2/sha2.h | 3 +++
- src/racoon/netdb_dnssec.h | 3 +++
- src/racoon/pfkey.c | 1 -
- src/racoon/plog.h | 2 ++
- src/racoon/str2val.h | 3 +++
- src/racoon/vmbuf.h | 3 +++
- src/setkey/extern.h | 3 ++-
- src/setkey/setkey.c | 1 -
- 15 files changed, 36 insertions(+), 8 deletions(-)
-
-diff --git a/src/libipsec/ipsec_strerror.h b/src/libipsec/ipsec_strerror.h
-index 2b4264f..dac66a1 100644
---- a/src/libipsec/ipsec_strerror.h
-+++ b/src/libipsec/ipsec_strerror.h
-@@ -34,6 +34,9 @@
- #ifndef _IPSEC_STRERROR_H
- #define _IPSEC_STRERROR_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- extern int __ipsec_errcode;
- extern void __ipsec_set_strerror __P((const char *));
-
-diff --git a/src/libipsec/libpfkey.h b/src/libipsec/libpfkey.h
-index 61d2f2a..f7991b7 100644
---- a/src/libipsec/libpfkey.h
-+++ b/src/libipsec/libpfkey.h
-@@ -34,6 +34,9 @@
- #ifndef _LIBPFKEY_H
- #define _LIBPFKEY_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- #ifndef KAME_LIBPFKEY_H
- #define KAME_LIBPFKEY_H
-
-@@ -43,7 +46,6 @@
-
- #define PRIORITY_OFFSET_POSITIVE_MAX 0x3fffffff
- #define PRIORITY_OFFSET_NEGATIVE_MAX 0x40000000
--
- struct sadb_msg;
- extern void pfkey_sadump __P((struct sadb_msg *));
- extern void pfkey_sadump_withports __P((struct sadb_msg *));
-diff --git a/src/racoon/admin.c b/src/racoon/admin.c
-index 4b1875b..03ea3f8 100644
---- a/src/racoon/admin.c
-+++ b/src/racoon/admin.c
-@@ -36,7 +36,6 @@
- #include <sys/types.h>
- #include <sys/param.h>
- #include <sys/socket.h>
--#include <sys/signal.h>
- #include <sys/stat.h>
- #include <sys/un.h>
-
-@@ -46,6 +45,7 @@
- #include PATH_IPSEC_H
-
-
-+#include <signal.h>
- #include <stdlib.h>
- #include <stdio.h>
- #include <string.h>
-diff --git a/src/racoon/backupsa.c b/src/racoon/backupsa.c
-index 82d74ca..95307ca 100644
---- a/src/racoon/backupsa.c
-+++ b/src/racoon/backupsa.c
-@@ -276,9 +276,9 @@ do { \
- GETNEXTNUM(sa_args.a_keylen, strtoul);
- GETNEXTNUM(sa_args.flags, strtoul);
- GETNEXTNUM(sa_args.l_alloc, strtoul);
-- GETNEXTNUM(sa_args.l_bytes, strtouq);
-- GETNEXTNUM(sa_args.l_addtime, strtouq);
-- GETNEXTNUM(sa_args.l_usetime, strtouq);
-+ GETNEXTNUM(sa_args.l_bytes, strtoull);
-+ GETNEXTNUM(sa_args.l_addtime, strtoull);
-+ GETNEXTNUM(sa_args.l_usetime, strtoull);
- GETNEXTNUM(sa_args.seq, strtoul);
-
- #undef GETNEXTNUM
-diff --git a/src/racoon/cftoken.l b/src/racoon/cftoken.l
-index 1701922..787f4a9 100644
---- a/src/racoon/cftoken.l
-+++ b/src/racoon/cftoken.l
-@@ -77,6 +77,10 @@
-
- #include "cfparse.h"
-
-+#ifndef GLOB_TILDE
-+#define GLOB_TILDE 0
-+#endif
-+
- int yyerrorcount = 0;
-
- #if defined(YIPS_DEBUG)
-diff --git a/src/racoon/logger.h b/src/racoon/logger.h
-index 3fd3e94..67af5f0 100644
---- a/src/racoon/logger.h
-+++ b/src/racoon/logger.h
-@@ -34,6 +34,9 @@
- #ifndef _LOGGER_H
- #define _LOGGER_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- struct log {
- int head;
- int siz;
-diff --git a/src/racoon/misc.h b/src/racoon/misc.h
-index 3e758d9..30d9825 100644
---- a/src/racoon/misc.h
-+++ b/src/racoon/misc.h
-@@ -34,6 +34,9 @@
- #ifndef _MISC_H
- #define _MISC_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- #define BIT2STR(b) bit2str(b, sizeof(b)<<3)
-
- #ifdef HAVE_FUNC_MACRO
-diff --git a/src/racoon/missing/crypto/sha2/sha2.h b/src/racoon/missing/crypto/sha2/sha2.h
-index 42bcc2a..c043dfe 100644
---- a/src/racoon/missing/crypto/sha2/sha2.h
-+++ b/src/racoon/missing/crypto/sha2/sha2.h
-@@ -40,6 +40,9 @@
- #ifndef __SHA2_H__
- #define __SHA2_H__
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- #ifdef __cplusplus
- extern "C" {
- #endif
-diff --git a/src/racoon/netdb_dnssec.h b/src/racoon/netdb_dnssec.h
-index a11209d..98fd813 100644
---- a/src/racoon/netdb_dnssec.h
-+++ b/src/racoon/netdb_dnssec.h
-@@ -34,6 +34,9 @@
- #ifndef _NETDB_DNSSEC_H
- #define _NETDB_DNSSEC_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- #ifndef T_CERT
- #define T_CERT 37 /* defined by RFC2538 section 2 */
- #endif
-diff --git a/src/racoon/pfkey.c b/src/racoon/pfkey.c
-index 8f26c19..a06c30e 100644
---- a/src/racoon/pfkey.c
-+++ b/src/racoon/pfkey.c
-@@ -59,7 +59,6 @@
- #include <sys/param.h>
- #include <sys/socket.h>
- #include <sys/queue.h>
--#include <sys/sysctl.h>
-
- #include <net/route.h>
- #include <net/pfkeyv2.h>
-diff --git a/src/racoon/plog.h b/src/racoon/plog.h
-index ed43c8b..920c850 100644
---- a/src/racoon/plog.h
-+++ b/src/racoon/plog.h
-@@ -34,6 +34,8 @@
- #ifndef _PLOG_H
- #define _PLOG_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
- #ifdef HAVE_STDARG_H
- #include <stdarg.h>
- #else
-diff --git a/src/racoon/str2val.h b/src/racoon/str2val.h
-index 4a7cec1..d3d698e 100644
---- a/src/racoon/str2val.h
-+++ b/src/racoon/str2val.h
-@@ -34,6 +34,9 @@
- #ifndef _STR2VAL_H
- #define _STR2VAL_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- extern caddr_t val2str __P((const char *, size_t));
- extern char *str2val __P((const char *, int, size_t *));
-
-diff --git a/src/racoon/vmbuf.h b/src/racoon/vmbuf.h
-index 3f2f4ea..8287a00 100644
---- a/src/racoon/vmbuf.h
-+++ b/src/racoon/vmbuf.h
-@@ -34,6 +34,9 @@
- #ifndef _VMBUF_H
- #define _VMBUF_H
-
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-+
- /*
- * bp v
- * v v
-diff --git a/src/setkey/extern.h b/src/setkey/extern.h
-index 6f439fa..a1d9d14 100644
---- a/src/setkey/extern.h
-+++ b/src/setkey/extern.h
-@@ -1,6 +1,7 @@
- /* $NetBSD: extern.h,v 1.5 2009/03/06 11:45:03 tteras Exp $ */
-
--
-+#undef __P
-+#define __P(protos) protos /* ANSI C prototypes */
-
- void parse_init __P((void));
- int parse __P((FILE **));
-diff --git a/src/setkey/setkey.c b/src/setkey/setkey.c
-index c400faa..51f8b75 100644
---- a/src/setkey/setkey.c
-+++ b/src/setkey/setkey.c
-@@ -40,7 +40,6 @@
- #include <sys/socket.h>
- #include <sys/time.h>
- #include <sys/stat.h>
--#include <sys/sysctl.h>
- #include <err.h>
- #include <netinet/in.h>
- #include <net/pfkeyv2.h>
---
-2.12.0
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch
deleted file mode 100644
index 228274436a..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-ipsec-tools-add-openssl-1.1-support.patch
+++ /dev/null
@@ -1,1086 +0,0 @@
-From b572350a922187d43dd4629c3b43e19979fae3ef Mon Sep 17 00:00:00 2001
-From: Eneas U de Queiroz <cote2004-github@yahoo.com>
-Date: Tue, 25 Sep 2018 15:30:04 +0800
-Subject: [PATCH] ipsec-tools: add openssl 1.1 support
-
-To: equeiroz@troianet.com.br
-
-This patch updates the calls to openssl 1.1 API, and adds a
-compatibility layer so it compiles with (at least) openssl 1.0.2, I
-haven't tested it with lower versions, but all that's needed is to edit
-the openssl_compat.* files and add the missing functions there--they're
-usually trivial.
-
-Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
-
-Upstream-Status: Submitted [https://sourceforge.net/p/ipsec-tools/mailman/message/36327963/]
-https://github.com/openwrt/packages/blob/master/net/ipsec-tools/patches/015-openssl-1.1.patch
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
----
- src/racoon/Makefile.am | 10 +--
- src/racoon/algorithm.c | 6 +-
- src/racoon/crypto_openssl.c | 197 +++++++++++++++++++++-------------------
- src/racoon/crypto_openssl.h | 2 +-
- src/racoon/eaytest.c | 7 +-
- src/racoon/ipsec_doi.c | 2 +-
- src/racoon/openssl_compat.c | 213 ++++++++++++++++++++++++++++++++++++++++++++
- src/racoon/openssl_compat.h | 45 ++++++++++
- src/racoon/plainrsa-gen.c | 41 +++++----
- src/racoon/prsa_par.y | 28 ++++--
- src/racoon/rsalist.c | 5 +-
- 11 files changed, 430 insertions(+), 126 deletions(-)
- create mode 100644 src/racoon/openssl_compat.c
- create mode 100644 src/racoon/openssl_compat.h
-
-diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am
-index 0662957..272b009 100644
---- a/src/racoon/Makefile.am
-+++ b/src/racoon/Makefile.am
-@@ -4,7 +4,7 @@ sbin_PROGRAMS = racoon racoonctl plainrsa-gen
- noinst_PROGRAMS = eaytest
- include_racoon_HEADERS = racoonctl.h var.h vmbuf.h misc.h gcmalloc.h admin.h \
- schedule.h sockmisc.h isakmp_var.h isakmp.h isakmp_xauth.h \
-- isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h
-+ isakmp_cfg.h isakmp_unity.h ipsec_doi.h evt.h openssl_compat.h
- lib_LTLIBRARIES = libracoon.la
-
- adminsockdir=${localstatedir}/racoon
-@@ -32,7 +32,7 @@ racoon_SOURCES = \
- gssapi.c dnssec.c getcertsbyname.c privsep.c \
- pfkey.c admin.c evt.c ipsec_doi.c oakley.c grabmyaddr.c vendorid.c \
- policy.c localconf.c remoteconf.c crypto_openssl.c algorithm.c \
-- proposal.c sainfo.c strnames.c \
-+ openssl_compat.c proposal.c sainfo.c strnames.c \
- plog.c logger.c schedule.c str2val.c \
- safefile.c backupsa.c genlist.c rsalist.c \
- cftoken.l cfparse.y prsa_tok.l prsa_par.y
-@@ -51,12 +51,12 @@ libracoon_la_SOURCES = kmpstat.c vmbuf.c sockmisc.c misc.c
- libracoon_la_CFLAGS = -DNOUSE_PRIVSEP $(AM_CFLAGS)
-
- plainrsa_gen_SOURCES = plainrsa-gen.c plog.c \
-- crypto_openssl.c logger.c
-+ crypto_openssl.c logger.c openssl_compat.c
- EXTRA_plainrsa_gen_SOURCES = $(MISSING_ALGOS)
- plainrsa_gen_LDADD = $(CRYPTOBJS) vmbuf.o misc.o
- plainrsa_gen_DEPENDENCIES = $(CRYPTOBJS) vmbuf.o misc.o
-
--eaytest_SOURCES = eaytest.c plog.c logger.c
-+eaytest_SOURCES = eaytest.c plog.c logger.c openssl_compat.c
- EXTRA_eaytest_SOURCES = missing/crypto/sha2/sha2.c
- eaytest_LDADD = crypto_openssl_test.o vmbuf.o str2val.o misc_noplog.o \
- $(CRYPTOBJS)
-@@ -75,7 +75,7 @@ noinst_HEADERS = \
- debugrm.h isakmp.h misc.h sainfo.h \
- dhgroup.h isakmp_agg.h netdb_dnssec.h schedule.h \
- isakmp_cfg.h isakmp_xauth.h isakmp_unity.h isakmp_frag.h \
-- throttle.h privsep.h \
-+ throttle.h privsep.h openssl_compat.h \
- cfparse_proto.h cftoken_proto.h genlist.h rsalist.h \
- missing/crypto/sha2/sha2.h missing/crypto/rijndael/rijndael_local.h \
- missing/crypto/rijndael/rijndael-api-fst.h \
-diff --git a/src/racoon/algorithm.c b/src/racoon/algorithm.c
-index 3fd50f6..66c874b 100644
---- a/src/racoon/algorithm.c
-+++ b/src/racoon/algorithm.c
-@@ -128,7 +128,7 @@ static struct enc_algorithm oakley_encdef[] = {
- { "aes", algtype_aes, OAKLEY_ATTR_ENC_ALG_AES, 16,
- eay_aes_encrypt, eay_aes_decrypt,
- eay_aes_weakkey, eay_aes_keylen, },
--#ifdef HAVE_OPENSSL_CAMELLIA_H
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- { "camellia", algtype_camellia, OAKLEY_ATTR_ENC_ALG_CAMELLIA, 16,
- eay_camellia_encrypt, eay_camellia_decrypt,
- eay_camellia_weakkey, eay_camellia_keylen, },
-@@ -168,7 +168,7 @@ static struct enc_algorithm ipsec_encdef[] = {
- { "twofish", algtype_twofish, IPSECDOI_ESP_TWOFISH, 16,
- NULL, NULL,
- NULL, eay_twofish_keylen, },
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- { "3idea", algtype_3idea, IPSECDOI_ESP_3IDEA, 8,
- NULL, NULL,
- NULL, NULL, },
-@@ -179,7 +179,7 @@ static struct enc_algorithm ipsec_encdef[] = {
- { "rc4", algtype_rc4, IPSECDOI_ESP_RC4, 8,
- NULL, NULL,
- NULL, NULL, },
--#ifdef HAVE_OPENSSL_CAMELLIA_H
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- { "camellia", algtype_camellia, IPSECDOI_ESP_CAMELLIA, 16,
- NULL, NULL,
- NULL, eay_camellia_keylen, },
-diff --git a/src/racoon/crypto_openssl.c b/src/racoon/crypto_openssl.c
-index 55b076a..8fb358f 100644
---- a/src/racoon/crypto_openssl.c
-+++ b/src/racoon/crypto_openssl.c
-@@ -90,6 +90,7 @@
- #endif
- #endif
- #include "plog.h"
-+#include "openssl_compat.h"
-
- #define USE_NEW_DES_API
-
-@@ -316,9 +317,12 @@ eay_cmp_asn1dn(n1, n2)
- i = idx+1;
- goto end;
- }
-- if ((ea->value->length == 1 && ea->value->data[0] == '*') ||
-- (eb->value->length == 1 && eb->value->data[0] == '*')) {
-- if (OBJ_cmp(ea->object,eb->object)) {
-+ ASN1_STRING *sa = X509_NAME_ENTRY_get_data(ea);
-+ ASN1_STRING *sb = X509_NAME_ENTRY_get_data(eb);
-+ if ((ASN1_STRING_length(sa) == 1 && ASN1_STRING_get0_data(sa)[0] == '*') ||
-+ (ASN1_STRING_length(sb) == 1 && ASN1_STRING_get0_data(sb)[0] == '*')) {
-+ if (OBJ_cmp(X509_NAME_ENTRY_get_object(ea),
-+ X509_NAME_ENTRY_get_object(eb))) {
- i = idx+1;
- goto end;
- }
-@@ -430,7 +434,7 @@ cb_check_cert_local(ok, ctx)
-
- if (!ok) {
- X509_NAME_oneline(
-- X509_get_subject_name(ctx->current_cert),
-+ X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)),
- buf,
- 256);
- /*
-@@ -438,7 +442,8 @@ cb_check_cert_local(ok, ctx)
- * ok if they are self signed. But we should still warn
- * the user.
- */
-- switch (ctx->error) {
-+ int ctx_error = X509_STORE_CTX_get_error(ctx);
-+ switch (ctx_error) {
- case X509_V_ERR_CERT_HAS_EXPIRED:
- case X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT:
- case X509_V_ERR_INVALID_CA:
-@@ -453,9 +458,9 @@ cb_check_cert_local(ok, ctx)
- }
- plog(log_tag, LOCATION, NULL,
- "%s(%d) at depth:%d SubjectName:%s\n",
-- X509_verify_cert_error_string(ctx->error),
-- ctx->error,
-- ctx->error_depth,
-+ X509_verify_cert_error_string(ctx_error),
-+ ctx_error,
-+ X509_STORE_CTX_get_error_depth(ctx),
- buf);
- }
- ERR_clear_error();
-@@ -477,10 +482,11 @@ cb_check_cert_remote(ok, ctx)
-
- if (!ok) {
- X509_NAME_oneline(
-- X509_get_subject_name(ctx->current_cert),
-+ X509_get_subject_name(X509_STORE_CTX_get_current_cert(ctx)),
- buf,
- 256);
-- switch (ctx->error) {
-+ int ctx_error=X509_STORE_CTX_get_error(ctx);
-+ switch (ctx_error) {
- case X509_V_ERR_UNABLE_TO_GET_CRL:
- ok = 1;
- log_tag = LLV_WARNING;
-@@ -490,9 +496,9 @@ cb_check_cert_remote(ok, ctx)
- }
- plog(log_tag, LOCATION, NULL,
- "%s(%d) at depth:%d SubjectName:%s\n",
-- X509_verify_cert_error_string(ctx->error),
-- ctx->error,
-- ctx->error_depth,
-+ X509_verify_cert_error_string(ctx_error),
-+ ctx_error,
-+ X509_STORE_CTX_get_error_depth(ctx),
- buf);
- }
- ERR_clear_error();
-@@ -516,14 +522,15 @@ eay_get_x509asn1subjectname(cert)
- if (x509 == NULL)
- goto error;
-
-+ X509_NAME *subject_name = X509_get_subject_name(x509);
- /* get the length of the name */
-- len = i2d_X509_NAME(x509->cert_info->subject, NULL);
-+ len = i2d_X509_NAME(subject_name, NULL);
- name = vmalloc(len);
- if (!name)
- goto error;
- /* get the name */
- bp = (unsigned char *) name->v;
-- len = i2d_X509_NAME(x509->cert_info->subject, &bp);
-+ len = i2d_X509_NAME(subject_name, &bp);
-
- X509_free(x509);
-
-@@ -661,15 +668,16 @@ eay_get_x509asn1issuername(cert)
- if (x509 == NULL)
- goto error;
-
-+ X509_NAME *issuer_name = X509_get_issuer_name(x509);
- /* get the length of the name */
-- len = i2d_X509_NAME(x509->cert_info->issuer, NULL);
-+ len = i2d_X509_NAME(issuer_name, NULL);
- name = vmalloc(len);
- if (name == NULL)
- goto error;
-
- /* get the name */
- bp = (unsigned char *) name->v;
-- len = i2d_X509_NAME(x509->cert_info->issuer, &bp);
-+ len = i2d_X509_NAME(issuer_name, &bp);
-
- X509_free(x509);
-
-@@ -850,7 +858,7 @@ eay_check_x509sign(source, sig, cert)
- return -1;
- }
-
-- res = eay_rsa_verify(source, sig, evp->pkey.rsa);
-+ res = eay_rsa_verify(source, sig, EVP_PKEY_get0_RSA(evp));
-
- EVP_PKEY_free(evp);
- X509_free(x509);
-@@ -992,7 +1000,7 @@ eay_get_x509sign(src, privkey)
- if (evp == NULL)
- return NULL;
-
-- sig = eay_rsa_sign(src, evp->pkey.rsa);
-+ sig = eay_rsa_sign(src, EVP_PKEY_get0_RSA(evp));
-
- EVP_PKEY_free(evp);
-
-@@ -1079,7 +1087,11 @@ eay_strerror()
- int line, flags;
- unsigned long es;
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ es = 0; /* even when allowed by OPENSSL_API_COMPAT, it is defined as 0 */
-+#else
- es = CRYPTO_thread_id();
-+#endif
-
- while ((l = ERR_get_error_line_data(&file, &line, &data, &flags)) != 0){
- n = snprintf(ebuf + len, sizeof(ebuf) - len,
-@@ -1100,7 +1112,7 @@ vchar_t *
- evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc)
- {
- vchar_t *res;
-- EVP_CIPHER_CTX ctx;
-+ EVP_CIPHER_CTX *ctx;
-
- if (!e)
- return NULL;
-@@ -1111,7 +1123,7 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc
- if ((res = vmalloc(data->l)) == NULL)
- return NULL;
-
-- EVP_CIPHER_CTX_init(&ctx);
-+ ctx = EVP_CIPHER_CTX_new();
-
- switch(EVP_CIPHER_nid(e)){
- case NID_bf_cbc:
-@@ -1125,54 +1137,41 @@ evp_crypt(vchar_t *data, vchar_t *key, vchar_t *iv, const EVP_CIPHER *e, int enc
- /* XXX: can we do that also for algos with a fixed key size ?
- */
- /* init context without key/iv
-- */
-- if (!EVP_CipherInit(&ctx, e, NULL, NULL, enc))
-- {
-- OpenSSL_BUG();
-- vfree(res);
-- return NULL;
-- }
-+ */
-+ if (!EVP_CipherInit(ctx, e, NULL, NULL, enc))
-+ goto out;
-
-- /* update key size
-- */
-- if (!EVP_CIPHER_CTX_set_key_length(&ctx, key->l))
-- {
-- OpenSSL_BUG();
-- vfree(res);
-- return NULL;
-- }
--
-- /* finalize context init with desired key size
-- */
-- if (!EVP_CipherInit(&ctx, NULL, (u_char *) key->v,
-+ /* update key size
-+ */
-+ if (!EVP_CIPHER_CTX_set_key_length(ctx, key->l))
-+ goto out;
-+
-+ /* finalize context init with desired key size
-+ */
-+ if (!EVP_CipherInit(ctx, NULL, (u_char *) key->v,
- (u_char *) iv->v, enc))
-- {
-- OpenSSL_BUG();
-- vfree(res);
-- return NULL;
-- }
-+ goto out;
- break;
- default:
-- if (!EVP_CipherInit(&ctx, e, (u_char *) key->v,
-- (u_char *) iv->v, enc)) {
-- OpenSSL_BUG();
-- vfree(res);
-- return NULL;
-- }
-+ if (!EVP_CipherInit(ctx, e, (u_char *) key->v,
-+ (u_char *) iv->v, enc))
-+ goto out;
- }
-
- /* disable openssl padding */
-- EVP_CIPHER_CTX_set_padding(&ctx, 0);
-+ EVP_CIPHER_CTX_set_padding(ctx, 0);
-
-- if (!EVP_Cipher(&ctx, (u_char *) res->v, (u_char *) data->v, data->l)) {
-- OpenSSL_BUG();
-- vfree(res);
-- return NULL;
-- }
-+ if (!EVP_Cipher(ctx, (u_char *) res->v, (u_char *) data->v, data->l))
-+ goto out;
-
-- EVP_CIPHER_CTX_cleanup(&ctx);
-+ EVP_CIPHER_CTX_free(ctx);
-
- return res;
-+out:
-+ EVP_CIPHER_CTX_free(ctx);
-+ OpenSSL_BUG();
-+ vfree(res);
-+ return NULL;
- }
-
- int
-@@ -1230,7 +1229,7 @@ eay_des_keylen(len)
- return evp_keylen(len, EVP_des_cbc());
- }
-
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- /*
- * IDEA-CBC
- */
-@@ -1587,7 +1586,7 @@ eay_aes_keylen(len)
- return len;
- }
-
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- /*
- * CAMELLIA-CBC
- */
-@@ -1680,9 +1679,9 @@ eay_hmac_init(key, md)
- vchar_t *key;
- const EVP_MD *md;
- {
-- HMAC_CTX *c = racoon_malloc(sizeof(*c));
-+ HMAC_CTX *c = HMAC_CTX_new();
-
-- HMAC_Init(c, key->v, key->l, md);
-+ HMAC_Init_ex(c, key->v, key->l, md, NULL);
-
- return (caddr_t)c;
- }
-@@ -1761,8 +1760,7 @@ eay_hmacsha2_512_final(c)
-
- HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- res->l = l;
-- HMAC_cleanup((HMAC_CTX *)c);
-- (void)racoon_free(c);
-+ HMAC_CTX_free((HMAC_CTX *)c);
-
- if (SHA512_DIGEST_LENGTH != res->l) {
- plog(LLV_ERROR, LOCATION, NULL,
-@@ -1811,8 +1809,7 @@ eay_hmacsha2_384_final(c)
-
- HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- res->l = l;
-- HMAC_cleanup((HMAC_CTX *)c);
-- (void)racoon_free(c);
-+ HMAC_CTX_free((HMAC_CTX *)c);
-
- if (SHA384_DIGEST_LENGTH != res->l) {
- plog(LLV_ERROR, LOCATION, NULL,
-@@ -1861,8 +1858,7 @@ eay_hmacsha2_256_final(c)
-
- HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- res->l = l;
-- HMAC_cleanup((HMAC_CTX *)c);
-- (void)racoon_free(c);
-+ HMAC_CTX_free((HMAC_CTX *)c);
-
- if (SHA256_DIGEST_LENGTH != res->l) {
- plog(LLV_ERROR, LOCATION, NULL,
-@@ -1912,8 +1908,7 @@ eay_hmacsha1_final(c)
-
- HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- res->l = l;
-- HMAC_cleanup((HMAC_CTX *)c);
-- (void)racoon_free(c);
-+ HMAC_CTX_free((HMAC_CTX *)c);
-
- if (SHA_DIGEST_LENGTH != res->l) {
- plog(LLV_ERROR, LOCATION, NULL,
-@@ -1962,8 +1957,7 @@ eay_hmacmd5_final(c)
-
- HMAC_Final((HMAC_CTX *)c, (unsigned char *) res->v, &l);
- res->l = l;
-- HMAC_cleanup((HMAC_CTX *)c);
-- (void)racoon_free(c);
-+ HMAC_CTX_free((HMAC_CTX *)c);
-
- if (MD5_DIGEST_LENGTH != res->l) {
- plog(LLV_ERROR, LOCATION, NULL,
-@@ -2266,6 +2260,7 @@ eay_dh_generate(prime, g, publen, pub, priv)
- u_int32_t g;
- {
- BIGNUM *p = NULL;
-+ BIGNUM *BNg = NULL;
- DH *dh = NULL;
- int error = -1;
-
-@@ -2276,25 +2271,28 @@ eay_dh_generate(prime, g, publen, pub, priv)
-
- if ((dh = DH_new()) == NULL)
- goto end;
-- dh->p = p;
-- p = NULL; /* p is now part of dh structure */
-- dh->g = NULL;
-- if ((dh->g = BN_new()) == NULL)
-+ if ((BNg = BN_new()) == NULL)
- goto end;
-- if (!BN_set_word(dh->g, g))
-+ if (!BN_set_word(BNg, g))
- goto end;
-+ if (! DH_set0_pqg(dh, p, NULL, BNg))
-+ goto end;
-+ BNg = NULL;
-+ p = NULL; /* p is now part of dh structure */
-
- if (publen != 0)
-- dh->length = publen;
-+ DH_set_length(dh, publen);
-
- /* generate public and private number */
- if (!DH_generate_key(dh))
- goto end;
-
- /* copy results to buffers */
-- if (eay_bn2v(pub, dh->pub_key) < 0)
-+ BIGNUM *pub_key, *priv_key;
-+ DH_get0_key(dh, (const BIGNUM**) &pub_key, (const BIGNUM**) &priv_key);
-+ if (eay_bn2v(pub, pub_key) < 0)
- goto end;
-- if (eay_bn2v(priv, dh->priv_key) < 0) {
-+ if (eay_bn2v(priv, priv_key) < 0) {
- vfree(*pub);
- goto end;
- }
-@@ -2306,6 +2304,8 @@ end:
- DH_free(dh);
- if (p != 0)
- BN_free(p);
-+ if (BNg != 0)
-+ BN_free(BNg);
- return(error);
- }
-
-@@ -2319,6 +2319,10 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- int l;
- unsigned char *v = NULL;
- int error = -1;
-+ BIGNUM *p = BN_new();
-+ BIGNUM *BNg = BN_new();
-+ BIGNUM *pub_key = BN_new();
-+ BIGNUM *priv_key = BN_new();
-
- /* make public number to compute */
- if (eay_v2bn(&dh_pub, pub2) < 0)
-@@ -2327,19 +2331,21 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- /* make DH structure */
- if ((dh = DH_new()) == NULL)
- goto end;
-- if (eay_v2bn(&dh->p, prime) < 0)
-+ if (p == NULL || BNg == NULL || pub_key == NULL || priv_key == NULL)
- goto end;
-- if (eay_v2bn(&dh->pub_key, pub) < 0)
-+
-+ if (eay_v2bn(&p, prime) < 0)
- goto end;
-- if (eay_v2bn(&dh->priv_key, priv) < 0)
-+ if (eay_v2bn(&pub_key, pub) < 0)
- goto end;
-- dh->length = pub2->l * 8;
--
-- dh->g = NULL;
-- if ((dh->g = BN_new()) == NULL)
-+ if (eay_v2bn(&priv_key, priv) < 0)
- goto end;
-- if (!BN_set_word(dh->g, g))
-+ if (!BN_set_word(BNg, g))
- goto end;
-+ DH_set0_key(dh, pub_key, priv_key);
-+ DH_set_length(dh, pub2->l * 8);
-+ DH_set0_pqg(dh, p, NULL, BNg);
-+ pub_key = priv_key = p = BNg = NULL;
-
- if ((v = racoon_calloc(prime->l, sizeof(u_char))) == NULL)
- goto end;
-@@ -2350,6 +2356,14 @@ eay_dh_compute(prime, g, pub, priv, pub2, key)
- error = 0;
-
- end:
-+ if (p != NULL)
-+ BN_free(p);
-+ if (BNg != NULL)
-+ BN_free(BNg);
-+ if (pub_key != NULL)
-+ BN_free(pub_key);
-+ if (priv_key != NULL)
-+ BN_free(priv_key);
- if (dh_pub != NULL)
- BN_free(dh_pub);
- if (dh != NULL)
-@@ -2400,12 +2414,14 @@ eay_bn2v(var, bn)
- void
- eay_init()
- {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- OpenSSL_add_all_algorithms();
- ERR_load_crypto_strings();
- #ifdef HAVE_OPENSSL_ENGINE_H
- ENGINE_load_builtin_engines();
- ENGINE_register_all_complete();
- #endif
-+#endif
- }
-
- vchar_t *
-@@ -2504,8 +2520,7 @@ binbuf_pubkey2rsa(vchar_t *binbuf)
- goto out;
- }
-
-- rsa_pub->n = mod;
-- rsa_pub->e = exp;
-+ RSA_set0_key(rsa_pub, mod, exp, NULL);
-
- out:
- return rsa_pub;
-@@ -2582,5 +2597,5 @@ eay_random()
- const char *
- eay_version()
- {
-- return SSLeay_version(SSLEAY_VERSION);
-+ return OpenSSL_version(OPENSSL_VERSION);
- }
-diff --git a/src/racoon/crypto_openssl.h b/src/racoon/crypto_openssl.h
-index 66fac73..ee5b765 100644
---- a/src/racoon/crypto_openssl.h
-+++ b/src/racoon/crypto_openssl.h
-@@ -124,7 +124,7 @@ extern vchar_t *eay_aes_decrypt __P((vchar_t *, vchar_t *, vchar_t *));
- extern int eay_aes_weakkey __P((vchar_t *));
- extern int eay_aes_keylen __P((int));
-
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- /* Camellia */
- extern vchar_t *eay_camellia_encrypt __P((vchar_t *, vchar_t *, vchar_t *));
- extern vchar_t *eay_camellia_decrypt __P((vchar_t *, vchar_t *, vchar_t *));
-diff --git a/src/racoon/eaytest.c b/src/racoon/eaytest.c
-index d609e4f..d2d20da 100644
---- a/src/racoon/eaytest.c
-+++ b/src/racoon/eaytest.c
-@@ -62,6 +62,7 @@
- #include "dhgroup.h"
- #include "crypto_openssl.h"
- #include "gnuc.h"
-+#include "openssl_compat.h"
-
- #include "package_version.h"
-
-@@ -103,7 +104,7 @@ rsa_verify_with_pubkey(src, sig, pubkey_txt)
- printf ("PEM_read_PUBKEY(): %s\n", eay_strerror());
- return -1;
- }
-- error = eay_check_rsasign(src, sig, evp->pkey.rsa);
-+ error = eay_check_rsasign(src, sig, EVP_PKEY_get0_RSA(evp));
-
- return error;
- }
-@@ -698,7 +699,7 @@ ciphertest(ac, av)
- eay_cast_encrypt, eay_cast_decrypt) < 0)
- return -1;
-
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- if (ciphertest_1 ("IDEA",
- &data, 8,
- &key, key.l,
-@@ -715,7 +716,7 @@ ciphertest(ac, av)
- eay_rc5_encrypt, eay_rc5_decrypt) < 0)
- return -1;
- #endif
--#if defined(HAVE_OPENSSL_CAMELLIA_H)
-+#if defined(HAVE_OPENSSL_CAMELLIA_H) && ! defined(OPENSSL_NO_CAMELLIA)
- if (ciphertest_1 ("CAMELLIA",
- &data, 16,
- &key, key.l,
-diff --git a/src/racoon/ipsec_doi.c b/src/racoon/ipsec_doi.c
-index 08e4325..7b1604d 100644
---- a/src/racoon/ipsec_doi.c
-+++ b/src/racoon/ipsec_doi.c
-@@ -715,7 +715,7 @@ out:
- /* key length must not be specified on some algorithms */
- if (keylen) {
- if (sa->enctype == OAKLEY_ATTR_ENC_ALG_DES
--#ifdef HAVE_OPENSSL_IDEA_H
-+#if defined(HAVE_OPENSSL_IDEA_H) && ! defined(OPENSSL_NO_IDEA)
- || sa->enctype == OAKLEY_ATTR_ENC_ALG_IDEA
- #endif
- || sa->enctype == OAKLEY_ATTR_ENC_ALG_3DES) {
-diff --git a/src/racoon/openssl_compat.c b/src/racoon/openssl_compat.c
-new file mode 100644
-index 0000000..864b5fb
---- /dev/null
-+++ b/src/racoon/openssl_compat.c
-@@ -0,0 +1,213 @@
-+/*
-+ * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
-+ *
-+ * Licensed under the OpenSSL license (the "License"). You may not use
-+ * this file except in compliance with the License. You can obtain a copy
-+ * in the file LICENSE in the source distribution or at
-+ * https://www.openssl.org/source/license.html
-+ */
-+
-+#include "openssl_compat.h"
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+
-+#include <string.h>
-+
-+static void *OPENSSL_zalloc(size_t num)
-+{
-+ void *ret = OPENSSL_malloc(num);
-+
-+ if (ret != NULL)
-+ memset(ret, 0, num);
-+ return ret;
-+}
-+
-+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d)
-+{
-+ /* If the fields n and e in r are NULL, the corresponding input
-+ * parameters MUST be non-NULL for n and e. d may be
-+ * left NULL (in case only the public key is used).
-+ */
-+ if ((r->n == NULL && n == NULL)
-+ || (r->e == NULL && e == NULL))
-+ return 0;
-+
-+ if (n != NULL) {
-+ BN_free(r->n);
-+ r->n = n;
-+ }
-+ if (e != NULL) {
-+ BN_free(r->e);
-+ r->e = e;
-+ }
-+ if (d != NULL) {
-+ BN_free(r->d);
-+ r->d = d;
-+ }
-+
-+ return 1;
-+}
-+
-+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q)
-+{
-+ /* If the fields p and q in r are NULL, the corresponding input
-+ * parameters MUST be non-NULL.
-+ */
-+ if ((r->p == NULL && p == NULL)
-+ || (r->q == NULL && q == NULL))
-+ return 0;
-+
-+ if (p != NULL) {
-+ BN_free(r->p);
-+ r->p = p;
-+ }
-+ if (q != NULL) {
-+ BN_free(r->q);
-+ r->q = q;
-+ }
-+
-+ return 1;
-+}
-+
-+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp)
-+{
-+ /* If the fields dmp1, dmq1 and iqmp in r are NULL, the corresponding input
-+ * parameters MUST be non-NULL.
-+ */
-+ if ((r->dmp1 == NULL && dmp1 == NULL)
-+ || (r->dmq1 == NULL && dmq1 == NULL)
-+ || (r->iqmp == NULL && iqmp == NULL))
-+ return 0;
-+
-+ if (dmp1 != NULL) {
-+ BN_free(r->dmp1);
-+ r->dmp1 = dmp1;
-+ }
-+ if (dmq1 != NULL) {
-+ BN_free(r->dmq1);
-+ r->dmq1 = dmq1;
-+ }
-+ if (iqmp != NULL) {
-+ BN_free(r->iqmp);
-+ r->iqmp = iqmp;
-+ }
-+
-+ return 1;
-+}
-+
-+void RSA_get0_key(const RSA *r,
-+ const BIGNUM **n, const BIGNUM **e, const BIGNUM **d)
-+{
-+ if (n != NULL)
-+ *n = r->n;
-+ if (e != NULL)
-+ *e = r->e;
-+ if (d != NULL)
-+ *d = r->d;
-+}
-+
-+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q)
-+{
-+ if (p != NULL)
-+ *p = r->p;
-+ if (q != NULL)
-+ *q = r->q;
-+}
-+
-+void RSA_get0_crt_params(const RSA *r,
-+ const BIGNUM **dmp1, const BIGNUM **dmq1,
-+ const BIGNUM **iqmp)
-+{
-+ if (dmp1 != NULL)
-+ *dmp1 = r->dmp1;
-+ if (dmq1 != NULL)
-+ *dmq1 = r->dmq1;
-+ if (iqmp != NULL)
-+ *iqmp = r->iqmp;
-+}
-+
-+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
-+{
-+ /* If the fields p and g in d are NULL, the corresponding input
-+ * parameters MUST be non-NULL. q may remain NULL.
-+ */
-+ if ((dh->p == NULL && p == NULL)
-+ || (dh->g == NULL && g == NULL))
-+ return 0;
-+
-+ if (p != NULL) {
-+ BN_free(dh->p);
-+ dh->p = p;
-+ }
-+ if (q != NULL) {
-+ BN_free(dh->q);
-+ dh->q = q;
-+ }
-+ if (g != NULL) {
-+ BN_free(dh->g);
-+ dh->g = g;
-+ }
-+
-+ if (q != NULL) {
-+ dh->length = BN_num_bits(q);
-+ }
-+
-+ return 1;
-+}
-+
-+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key)
-+{
-+ if (pub_key != NULL)
-+ *pub_key = dh->pub_key;
-+ if (priv_key != NULL)
-+ *priv_key = dh->priv_key;
-+}
-+
-+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key)
-+{
-+ /* If the field pub_key in dh is NULL, the corresponding input
-+ * parameters MUST be non-NULL. The priv_key field may
-+ * be left NULL.
-+ */
-+ if (dh->pub_key == NULL && pub_key == NULL)
-+ return 0;
-+
-+ if (pub_key != NULL) {
-+ BN_free(dh->pub_key);
-+ dh->pub_key = pub_key;
-+ }
-+ if (priv_key != NULL) {
-+ BN_free(dh->priv_key);
-+ dh->priv_key = priv_key;
-+ }
-+
-+ return 1;
-+}
-+
-+int DH_set_length(DH *dh, long length)
-+{
-+ dh->length = length;
-+ return 1;
-+}
-+
-+HMAC_CTX *HMAC_CTX_new(void)
-+{
-+ return OPENSSL_zalloc(sizeof(HMAC_CTX));
-+}
-+
-+void HMAC_CTX_free(HMAC_CTX *ctx)
-+{
-+ HMAC_CTX_cleanup(ctx);
-+ OPENSSL_free(ctx);
-+}
-+
-+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey)
-+{
-+ if (pkey->type != EVP_PKEY_RSA) {
-+ return NULL;
-+ }
-+ return pkey->pkey.rsa;
-+}
-+
-+
-+#endif /* OPENSSL_VERSION_NUMBER */
-diff --git a/src/racoon/openssl_compat.h b/src/racoon/openssl_compat.h
-new file mode 100644
-index 0000000..9e152c2
---- /dev/null
-+++ b/src/racoon/openssl_compat.h
-@@ -0,0 +1,45 @@
-+#ifndef OPENSSL_COMPAT_H
-+#define OPENSSL_COMPAT_H
-+
-+#include <openssl/opensslv.h>
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+
-+#include <openssl/rsa.h>
-+#include <openssl/dh.h>
-+#include <openssl/evp.h>
-+#include <openssl/hmac.h>
-+
-+int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d);
-+int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q);
-+int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp);
-+void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d);
-+void RSA_get0_factors(const RSA *r, const BIGNUM **p, const BIGNUM **q);
-+void RSA_get0_crt_params(const RSA *r, const BIGNUM **dmp1, const BIGNUM **dmq1, const BIGNUM **iqmp);
-+
-+int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g);
-+void DH_get0_key(const DH *dh, const BIGNUM **pub_key, const BIGNUM **priv_key);
-+int DH_set0_key(DH *dh, BIGNUM *pub_key, BIGNUM *priv_key);
-+int DH_set_length(DH *dh, long length);
-+
-+HMAC_CTX *HMAC_CTX_new(void);
-+void HMAC_CTX_free(HMAC_CTX* ctx);
-+
-+RSA *EVP_PKEY_get0_RSA(EVP_PKEY *pkey);
-+
-+#define ASN1_STRING_length(s) s->length
-+#define ASN1_STRING_get0_data(s) s->data
-+
-+#define X509_get_subject_name(x) x->cert_info->subject
-+#define X509_get_issuer_name(x) x->cert_info->issuer
-+#define X509_NAME_ENTRY_get_data(n) n->value
-+#define X509_NAME_ENTRY_get_object(n) n->object
-+#define X509_STORE_CTX_get_current_cert(ctx) ctx->current_cert
-+#define X509_STORE_CTX_get_error(ctx) ctx->error
-+#define X509_STORE_CTX_get_error_depth(ctx) ctx->error_depth
-+
-+#define OPENSSL_VERSION SSLEAY_VERSION
-+#define OpenSSL_version SSLeay_version
-+
-+#endif /* OPENSSL_VERSION_NUMBER */
-+
-+#endif /* OPENSSL_COMPAT_H */
-diff --git a/src/racoon/plainrsa-gen.c b/src/racoon/plainrsa-gen.c
-index cad1861..b949b08 100644
---- a/src/racoon/plainrsa-gen.c
-+++ b/src/racoon/plainrsa-gen.c
-@@ -60,6 +60,7 @@
- #include "vmbuf.h"
- #include "plog.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
-
- #include "package_version.h"
-
-@@ -90,12 +91,14 @@ mix_b64_pubkey(const RSA *key)
- char *binbuf;
- long binlen, ret;
- vchar_t *res;
--
-- binlen = 1 + BN_num_bytes(key->e) + BN_num_bytes(key->n);
-+ const BIGNUM *e, *n;
-+
-+ RSA_get0_key(key, &n, &e, NULL);
-+ binlen = 1 + BN_num_bytes(e) + BN_num_bytes(n);
- binbuf = malloc(binlen);
- memset(binbuf, 0, binlen);
-- binbuf[0] = BN_bn2bin(key->e, (unsigned char *) &binbuf[1]);
-- ret = BN_bn2bin(key->n, (unsigned char *) (&binbuf[binbuf[0] + 1]));
-+ binbuf[0] = BN_bn2bin(e, (unsigned char *) &binbuf[1]);
-+ ret = BN_bn2bin(n, (unsigned char *) (&binbuf[binbuf[0] + 1]));
- if (1 + binbuf[0] + ret != binlen) {
- plog(LLV_ERROR, LOCATION, NULL,
- "Pubkey generation failed. This is really strange...\n");
-@@ -131,16 +134,20 @@ print_rsa_key(FILE *fp, const RSA *key)
-
- fprintf(fp, "# : PUB 0s%s\n", pubkey64->v);
- fprintf(fp, ": RSA\t{\n");
-- fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(key->n));
-+ const BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp;
-+ RSA_get0_key(key, &n, &e, &d);
-+ RSA_get0_factors(key, &p, &q);
-+ RSA_get0_crt_params(key, &dmp1, &dmq1, &iqmp);
-+ fprintf(fp, "\t# RSA %d bits\n", BN_num_bits(n));
- fprintf(fp, "\t# pubkey=0s%s\n", pubkey64->v);
-- fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(key->n)));
-- fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(key->e)));
-- fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(key->d)));
-- fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(key->p)));
-- fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(key->q)));
-- fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(key->dmp1)));
-- fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(key->dmq1)));
-- fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(key->iqmp)));
-+ fprintf(fp, "\tModulus: 0x%s\n", lowercase(BN_bn2hex(n)));
-+ fprintf(fp, "\tPublicExponent: 0x%s\n", lowercase(BN_bn2hex(e)));
-+ fprintf(fp, "\tPrivateExponent: 0x%s\n", lowercase(BN_bn2hex(d)));
-+ fprintf(fp, "\tPrime1: 0x%s\n", lowercase(BN_bn2hex(p)));
-+ fprintf(fp, "\tPrime2: 0x%s\n", lowercase(BN_bn2hex(q)));
-+ fprintf(fp, "\tExponent1: 0x%s\n", lowercase(BN_bn2hex(dmp1)));
-+ fprintf(fp, "\tExponent2: 0x%s\n", lowercase(BN_bn2hex(dmq1)));
-+ fprintf(fp, "\tCoefficient: 0x%s\n", lowercase(BN_bn2hex(iqmp)));
- fprintf(fp, " }\n");
-
- vfree(pubkey64);
-@@ -203,11 +210,13 @@ int
- gen_rsa_key(FILE *fp, size_t bits, unsigned long exp)
- {
- int ret;
-- RSA *key;
-+ RSA *key = RSA_new();
-+ BIGNUM *e = BN_new();
-
-- key = RSA_generate_key(bits, exp, NULL, NULL);
-- if (!key) {
-+ BN_set_word(e, exp);
-+ if (! RSA_generate_key_ex(key, bits, e, NULL)) {
- fprintf(stderr, "RSA_generate_key(): %s\n", eay_strerror());
-+ RSA_free(key);
- return -1;
- }
-
-diff --git a/src/racoon/prsa_par.y b/src/racoon/prsa_par.y
-index 1987e4d..27ce4c6 100644
---- a/src/racoon/prsa_par.y
-+++ b/src/racoon/prsa_par.y
-@@ -68,6 +68,7 @@
- #include "isakmp_var.h"
- #include "handler.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
- #include "sockmisc.h"
- #include "rsalist.h"
-
-@@ -85,7 +86,18 @@ char *prsa_cur_fname = NULL;
- struct genlist *prsa_cur_list = NULL;
- enum rsa_key_type prsa_cur_type = RSA_TYPE_ANY;
-
--static RSA *rsa_cur;
-+struct my_rsa_st {
-+ BIGNUM *n;
-+ BIGNUM *e;
-+ BIGNUM *d;
-+ BIGNUM *p;
-+ BIGNUM *q;
-+ BIGNUM *dmp1;
-+ BIGNUM *dmq1;
-+ BIGNUM *iqmp;
-+};
-+
-+static struct my_rsa_st *rsa_cur;
-
- void
- prsaerror(const char *s, ...)
-@@ -201,8 +213,12 @@ rsa_statement:
- rsa_cur->iqmp = NULL;
- }
- }
-- $$ = rsa_cur;
-- rsa_cur = RSA_new();
-+ RSA * rsa_tmp = RSA_new();
-+ RSA_set0_key(rsa_tmp, rsa_cur->n, rsa_cur->e, rsa_cur->d);
-+ RSA_set0_factors(rsa_tmp, rsa_cur->p, rsa_cur->q);
-+ RSA_set0_crt_params(rsa_tmp, rsa_cur->dmp1, rsa_cur->dmq1, rsa_cur->iqmp);
-+ $$ = rsa_tmp;
-+ memset(rsa_cur, 0, sizeof(struct my_rsa_st));
- }
- | TAG_PUB BASE64
- {
-@@ -351,10 +367,12 @@ prsa_parse_file(struct genlist *list, char *fname, enum rsa_key_type type)
- prsa_cur_fname = fname;
- prsa_cur_list = list;
- prsa_cur_type = type;
-- rsa_cur = RSA_new();
-+ rsa_cur = malloc(sizeof(struct my_rsa_st));
-+ memset(rsa_cur, 0, sizeof(struct my_rsa_st));
- ret = prsaparse();
- if (rsa_cur) {
-- RSA_free(rsa_cur);
-+ memset(rsa_cur, 0, sizeof(struct my_rsa_st));
-+ free(rsa_cur);
- rsa_cur = NULL;
- }
- fclose (fp);
-diff --git a/src/racoon/rsalist.c b/src/racoon/rsalist.c
-index f152c82..96e8363 100644
---- a/src/racoon/rsalist.c
-+++ b/src/racoon/rsalist.c
-@@ -52,6 +52,7 @@
- #include "genlist.h"
- #include "remoteconf.h"
- #include "crypto_openssl.h"
-+#include "openssl_compat.h"
-
- #ifndef LIST_FIRST
- #define LIST_FIRST(head) ((head)->lh_first)
-@@ -98,7 +99,9 @@ rsa_key_dup(struct rsa_key *key)
- return NULL;
-
- if (key->rsa) {
-- new->rsa = key->rsa->d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa);
-+ const BIGNUM *d;
-+ RSA_get0_key(key->rsa, NULL, NULL, &d);
-+ new->rsa = (d != NULL ? RSAPrivateKey_dup(key->rsa) : RSAPublicKey_dup(key->rsa));
- if (new->rsa == NULL)
- goto dup_error;
- }
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch
deleted file mode 100644
index d5602c03db..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 738a9857be9c92ad2f70be88ccee238e3154a936 Mon Sep 17 00:00:00 2001
-From: Joe MacDonald <joe.macdonald@windriver.com>
-Date: Wed, 2 Oct 2013 14:20:37 -0400
-Subject: [PATCH] racoon/pfkey: avoid potential null-pointer dereference
-
-Building with -Werror=maybe-uninitialized revealed that 'remote' from
-pk_recvmigrate() could be used with uninitialized data in
-migrate_sp_ike_addresses(). Ensure it is always at a minimum assigned
-NULL.
-
-Upstream-Status: Pending
-
-Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com>
----
- src/racoon/pfkey.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/racoon/pfkey.c b/src/racoon/pfkey.c
-index d00b166..e0dc1db 100644
---- a/src/racoon/pfkey.c
-+++ b/src/racoon/pfkey.c
-@@ -3352,7 +3352,7 @@ pk_recvmigrate(mhp)
- struct sockaddr *old_saddr, *new_saddr;
- struct sockaddr *old_daddr, *new_daddr;
- struct sockaddr *old_local, *old_remote;
-- struct sockaddr *local, *remote;
-+ struct sockaddr *local, *remote = NULL;
- struct sadb_x_kmaddress *kmaddr;
- struct sadb_x_policy *xpl;
- struct sadb_x_ipsecrequest *xisr_list;
---
-1.7.9.5
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch
deleted file mode 100644
index 13e9d73fc4..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-Don-t-link-against-libfl.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From e48b9097dce7bc2bfbb9e9c542124d3b5cebab39 Mon Sep 17 00:00:00 2001
-From: Paul Barker <paul@paulbarker.me.uk>
-Date: Wed, 5 Mar 2014 13:39:14 +0000
-Subject: [PATCH] Don't link against libfl
-
-We can remove all references to yywrap by adding "%option noyywrap" statements
-to each flex source file that doesn't override yywrap. After this, we no longer
-need to link against libfl and so no longer get errors about undefined
-references to yylex.
-
-Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
-Upstream-status: Submitted 2014-03-11
- see http://sourceforge.net/p/ipsec-tools/mailman/ipsec-tools-devel/thread/CANyK_8ewmxGA3vBVJW6s1APXPmxPR%2BDFWZ61EL8pCt288aKQ6w%40mail.gmail.com/#msg32088797
----
- src/libipsec/Makefile.am | 1 -
- src/racoon/Makefile.am | 2 +-
- src/racoon/cftoken.l | 2 ++
- src/setkey/Makefile.am | 1 -
- src/setkey/token.l | 2 ++
- 5 files changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/src/libipsec/Makefile.am b/src/libipsec/Makefile.am
-index 6a4e3b3..df1e106 100644
---- a/src/libipsec/Makefile.am
-+++ b/src/libipsec/Makefile.am
-@@ -26,7 +26,6 @@ libipsec_la_SOURCES = \
- # version is current:revision:age.
- # See: http://www.gnu.org/manual/libtool-1.4.2/html_chapter/libtool_6.html#SEC32
- libipsec_la_LDFLAGS = -version-info 0:1:0
--libipsec_la_LIBADD = $(LEXLIB)
-
- noinst_HEADERS = ipsec_strerror.h
-
-diff --git a/src/racoon/Makefile.am b/src/racoon/Makefile.am
-index dbaded9..0662957 100644
---- a/src/racoon/Makefile.am
-+++ b/src/racoon/Makefile.am
-@@ -38,7 +38,7 @@ racoon_SOURCES = \
- cftoken.l cfparse.y prsa_tok.l prsa_par.y
- EXTRA_racoon_SOURCES = isakmp_xauth.c isakmp_cfg.c isakmp_unity.c throttle.c \
- isakmp_frag.c nattraversal.c security.c $(MISSING_ALGOS)
--racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(LEXLIB) \
-+racoon_LDADD = $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) \
- $(SECCTX_OBJS) vmbuf.o sockmisc.o misc.o ../libipsec/libipsec.la
- racoon_DEPENDENCIES = \
- $(CRYPTOBJS) $(HYBRID_OBJS) $(NATT_OBJS) $(FRAG_OBJS) $(SECCTX_OBJS) \
-diff --git a/src/racoon/cftoken.l b/src/racoon/cftoken.l
-index 490242c..1701922 100644
---- a/src/racoon/cftoken.l
-+++ b/src/racoon/cftoken.l
-@@ -106,6 +106,8 @@ static int incstackp = 0;
- static int yy_first_time = 1;
- %}
-
-+%option noyywrap
-+
- /* common seciton */
- nl \n
- ws [ \t]+
-diff --git a/src/setkey/Makefile.am b/src/setkey/Makefile.am
-index 746c1f1..389e6cf 100644
---- a/src/setkey/Makefile.am
-+++ b/src/setkey/Makefile.am
-@@ -13,7 +13,6 @@ setkey_SOURCES = \
-
- setkey_LDFLAGS = ../libipsec/libipsec.la
- setkey_DEPENDENCIES = ../libipsec/libipsec.la
--setkey_LDADD = $(LEXLIB)
-
- noinst_HEADERS = vchar.h extern.h
- man8_MANS = setkey.8
-diff --git a/src/setkey/token.l b/src/setkey/token.l
-index ad3d843..eb23b76 100644
---- a/src/setkey/token.l
-+++ b/src/setkey/token.l
-@@ -88,6 +88,8 @@
- #endif
- %}
-
-+%option noyywrap
-+
- /* common section */
- nl \n
- ws [ \t]+
---
-1.9.0
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch
deleted file mode 100644
index e9dd84aaa9..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/0002-cfparse-clear-memory-equal-to-size-of-array.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From a5c59f6a1479947d33dba5191724cc5fc88a614b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 22 Apr 2017 10:39:57 -0700
-Subject: [PATCH 2/2] cfparse: clear memory equal to size of array
-
-Fixes compiler error
-cfparse.y: In function 'set_isakmp_proposal':
-cfparse.y:2567:3: error: 'memset' used with length equal to number of elements without multiplication by element size [-Werror=memset-elt-size]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/racoon/cfparse.y | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/racoon/cfparse.y b/src/racoon/cfparse.y
-index 0d9bd67..5d9c67b 100644
---- a/src/racoon/cfparse.y
-+++ b/src/racoon/cfparse.y
-@@ -2564,7 +2564,7 @@ set_isakmp_proposal(rmconf)
- plog(LLV_DEBUG2, LOCATION, NULL,
- "encklen=%d\n", s->encklen);
-
-- memset(types, 0, ARRAYLEN(types));
-+ memset(types, 0, sizeof(types));
- types[algclass_isakmp_enc] = s->algclass[algclass_isakmp_enc];
- types[algclass_isakmp_hash] = s->algclass[algclass_isakmp_hash];
- types[algclass_isakmp_dh] = s->algclass[algclass_isakmp_dh];
---
-2.12.2
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch
deleted file mode 100644
index 8d270a62b9..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: ipsec-tools-0.8.1/configure.ac
-===================================================================
---- ipsec-tools-0.8.1.orig/configure.ac 2013-01-08 12:43:29.000000000 +0000
-+++ ipsec-tools-0.8.1/configure.ac 2014-07-18 07:51:30.045555880 +0000
-@@ -6,7 +6,7 @@
- AC_CONFIG_SRCDIR([configure.ac])
- AC_CONFIG_HEADERS(config.h)
-
--AM_INIT_AUTOMAKE(dist-bzip2)
-+AM_INIT_AUTOMAKE([foreign dist-bzip2])
-
- AC_ENABLE_SHARED(no)
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch
deleted file mode 100644
index 5286376ac6..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2015-4047.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-[PATCH] fix CVE-2015-4047
-
-Upstream-Status: Backport
-
-http://www.openwall.com/lists/oss-security/2015/05/20/1
-
-racoon/gssapi.c in IPsec-Tools 0.8.2 allows remote attackers to cause
-a denial of service (NULL pointer dereference and IKE daemon crash) via
-a series of crafted UDP requests.
-
-https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-4047
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
----
- src/racoon/gssapi.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/racoon/gssapi.c b/src/racoon/gssapi.c
-index e64b201..1ad3b42 100644
---- a/src/racoon/gssapi.c
-+++ b/src/racoon/gssapi.c
-@@ -192,6 +192,11 @@ gssapi_init(struct ph1handle *iph1)
- gss_name_t princ, canon_princ;
- OM_uint32 maj_stat, min_stat;
-
-+ if (iph1->rmconf == NULL) {
-+ plog(LLV_ERROR, LOCATION, NULL, "no remote config\n");
-+ return -1;
-+ }
-+
- gps = racoon_calloc(1, sizeof (struct gssapi_ph1_state));
- if (gps == NULL) {
- plog(LLV_ERROR, LOCATION, NULL, "racoon_calloc failed\n");
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch
deleted file mode 100644
index bd07965543..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/fix-CVE-2016-10396.patch
+++ /dev/null
@@ -1,207 +0,0 @@
-Upstream-Status: Backport [https://anonscm.debian.org/cgit/pkg-ipsec-tools/pkg-ipsec-tools.git/plain/debian/patches/CVE-2016-10396.patch?id=62ac12648a4eb7c5ba5dba0f81998d1acf310d8b]
-
-Fix CVE-2016-10396.
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
----
-Description: Fix remotely exploitable DoS. http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10396
-Source: vendor; https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51682
-Bug-debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867986
-
-Index: pkg-ipsec-tools/src/racoon/isakmp_frag.c
-===================================================================
---- pkg-ipsec-tools.orig/src/racoon/isakmp_frag.c
-+++ pkg-ipsec-tools/src/racoon/isakmp_frag.c
-@@ -1,4 +1,4 @@
--/* $NetBSD: isakmp_frag.c,v 1.5 2009/04/22 11:24:20 tteras Exp $ */
-+/* $NetBSD: isakmp_frag.c,v 1.5.36.1 2017/04/21 16:50:42 bouyer Exp $ */
-
- /* Id: isakmp_frag.c,v 1.4 2004/11/13 17:31:36 manubsd Exp */
-
-@@ -173,6 +173,43 @@ vendorid_frag_cap(gen)
- return ntohl(hp[MD5_DIGEST_LENGTH / sizeof(*hp)]);
- }
-
-+static int
-+isakmp_frag_insert(struct ph1handle *iph1, struct isakmp_frag_item *item)
-+{
-+ struct isakmp_frag_item *pitem = NULL;
-+ struct isakmp_frag_item *citem = iph1->frag_chain;
-+
-+ /* no frag yet, just insert at beginning of list */
-+ if (iph1->frag_chain == NULL) {
-+ iph1->frag_chain = item;
-+ return 0;
-+ }
-+
-+ do {
-+ /* duplicate fragment number, abort (CVE-2016-10396) */
-+ if (citem->frag_num == item->frag_num)
-+ return -1;
-+
-+ /* need to insert before current item */
-+ if (citem->frag_num > item->frag_num) {
-+ if (pitem != NULL)
-+ pitem->frag_next = item;
-+ else
-+ /* insert at the beginning of the list */
-+ iph1->frag_chain = item;
-+ item->frag_next = citem;
-+ return 0;
-+ }
-+
-+ pitem = citem;
-+ citem = citem->frag_next;
-+ } while (citem != NULL);
-+
-+ /* we reached the end of the list, insert */
-+ pitem->frag_next = item;
-+ return 0;
-+}
-+
- int
- isakmp_frag_extract(iph1, msg)
- struct ph1handle *iph1;
-@@ -224,39 +261,43 @@ isakmp_frag_extract(iph1, msg)
- item->frag_next = NULL;
- item->frag_packet = buf;
-
-- /* Look for the last frag while inserting the new item in the chain */
-- if (item->frag_last)
-- last_frag = item->frag_num;
-+ /* Check for the last frag before inserting the new item in the chain */
-+ if (item->frag_last) {
-+ /* if we have the last fragment, indices must match */
-+ if (iph1->frag_last_index != 0 &&
-+ item->frag_last != iph1->frag_last_index) {
-+ plog(LLV_ERROR, LOCATION, NULL,
-+ "Repeated last fragment index mismatch\n");
-+ racoon_free(item);
-+ vfree(buf);
-+ return -1;
-+ }
-
-- if (iph1->frag_chain == NULL) {
-- iph1->frag_chain = item;
-- } else {
-- struct isakmp_frag_item *current;
-+ last_frag = iph1->frag_last_index = item->frag_num;
-+ }
-
-- current = iph1->frag_chain;
-- while (current->frag_next) {
-- if (current->frag_last)
-- last_frag = item->frag_num;
-- current = current->frag_next;
-- }
-- current->frag_next = item;
-+ /* insert fragment into chain */
-+ if (isakmp_frag_insert(iph1, item) == -1) {
-+ plog(LLV_ERROR, LOCATION, NULL,
-+ "Repeated fragment index mismatch\n");
-+ racoon_free(item);
-+ vfree(buf);
-+ return -1;
- }
-
-- /* If we saw the last frag, check if the chain is complete */
-+ /* If we saw the last frag, check if the chain is complete
-+ * we have a sorted list now, so just walk through */
- if (last_frag != 0) {
-+ item = iph1->frag_chain;
- for (i = 1; i <= last_frag; i++) {
-- item = iph1->frag_chain;
-- do {
-- if (item->frag_num == i)
-- break;
-- item = item->frag_next;
-- } while (item != NULL);
--
-+ if (item->frag_num != i)
-+ break;
-+ item = item->frag_next;
- if (item == NULL) /* Not found */
- break;
- }
-
-- if (item != NULL) /* It is complete */
-+ if (i > last_frag) /* It is complete */
- return 1;
- }
-
-@@ -291,15 +332,9 @@ isakmp_frag_reassembly(iph1)
- }
- data = buf->v;
-
-+ item = iph1->frag_chain;
- for (i = 1; i <= frag_count; i++) {
-- item = iph1->frag_chain;
-- do {
-- if (item->frag_num == i)
-- break;
-- item = item->frag_next;
-- } while (item != NULL);
--
-- if (item == NULL) {
-+ if (item->frag_num != i) {
- plog(LLV_ERROR, LOCATION, NULL,
- "Missing fragment #%d\n", i);
- vfree(buf);
-@@ -308,6 +343,7 @@ isakmp_frag_reassembly(iph1)
- }
- memcpy(data, item->frag_packet->v, item->frag_packet->l);
- data += item->frag_packet->l;
-+ item = item->frag_next;
- }
-
- out:
-Index: pkg-ipsec-tools/src/racoon/isakmp_inf.c
-===================================================================
---- pkg-ipsec-tools.orig/src/racoon/isakmp_inf.c
-+++ pkg-ipsec-tools/src/racoon/isakmp_inf.c
-@@ -720,6 +720,7 @@ isakmp_info_send_nx(isakmp, remote, loca
- #endif
- #ifdef ENABLE_FRAG
- iph1->frag = 0;
-+ iph1->frag_last_index = 0;
- iph1->frag_chain = NULL;
- #endif
-
-Index: pkg-ipsec-tools/src/racoon/isakmp.c
-===================================================================
---- pkg-ipsec-tools.orig/src/racoon/isakmp.c
-+++ pkg-ipsec-tools/src/racoon/isakmp.c
-@@ -1072,6 +1072,7 @@ isakmp_ph1begin_i(rmconf, remote, local)
- iph1->frag = 1;
- else
- iph1->frag = 0;
-+ iph1->frag_last_index = 0;
- iph1->frag_chain = NULL;
- #endif
- iph1->approval = NULL;
-@@ -1176,6 +1177,7 @@ isakmp_ph1begin_r(msg, remote, local, et
- #endif
- #ifdef ENABLE_FRAG
- iph1->frag = 0;
-+ iph1->frag_last_index = 0;
- iph1->frag_chain = NULL;
- #endif
- iph1->approval = NULL;
-Index: pkg-ipsec-tools/src/racoon/handler.h
-===================================================================
---- pkg-ipsec-tools.orig/src/racoon/handler.h
-+++ pkg-ipsec-tools/src/racoon/handler.h
-@@ -1,4 +1,4 @@
--/* $NetBSD: handler.h,v 1.25 2010/11/17 10:40:41 tteras Exp $ */
-+/* $NetBSD: handler.h,v 1.26 2017/01/24 19:23:56 christos Exp $ */
-
- /* Id: handler.h,v 1.19 2006/02/25 08:25:12 manubsd Exp */
-
-@@ -141,6 +141,7 @@ struct ph1handle {
- #endif
- #ifdef ENABLE_FRAG
- int frag; /* IKE phase 1 fragmentation */
-+ int frag_last_index;
- struct isakmp_frag_item *frag_chain; /* Received fragments */
- #endif
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch
deleted file mode 100644
index 36efc49179..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/glibc-2.20.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-squahes below warning
- warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
-
-Seen with glibc 2.20
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Pending
-Index: ipsec-tools-0.8.2/src/include-glibc/glibc-bugs.h
-===================================================================
---- ipsec-tools-0.8.2.orig/src/include-glibc/glibc-bugs.h 2006-09-09 09:22:08.000000000 -0700
-+++ ipsec-tools-0.8.2/src/include-glibc/glibc-bugs.h 2014-09-03 22:27:22.551563888 -0700
-@@ -4,7 +4,11 @@
- #define __GLIBC_BUGS_H__ 1
-
- #define _XOPEN_SOURCE 500
-+/* Legacy feature macro.*/
- #define _BSD_SOURCE
-+/* New feature macro that provides everything _BSD_SOURCE and
-+ * _SVID_SOURCE provided and possibly more. */
-+#define _DEFAULT_SOURCE
-
- #include <features.h>
- #include <sys/types.h>
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch
deleted file mode 100644
index e82db087c5..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-Resend-UPDATE-message-when-received-EINTR-message.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-racoon: Resend UPDATE message when received EINTR message
-
-Upstream-Status: Pending
-
-While kernel is processing the UPDATE message which is sent from racoon,
-it maybe interrupted by system signal and if this case happens,
-kernel responds with an EINTR message to racoon and kernel fails to
-establish the corresponding SA.
-Fix this problem by resend the UPDATE message when EINTR(Interrupted
-system call) error happens.
-
-Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com>
----
---- a/src/libipsec/libpfkey.h
-+++ b/src/libipsec/libpfkey.h
-@@ -92,6 +92,12 @@
- u_int16_t ctxstrlen; /* length of security context string */
- };
-
-+struct update_msg_info {
-+ struct sadb_msg *update_msg;
-+ int so;
-+ int len;
-+};
-+
- /* The options built into libipsec */
- extern int libipsec_opt;
- #define LIBIPSEC_OPT_NATT 0x01
---- a/src/libipsec/pfkey.c
-+++ b/src/libipsec/pfkey.c
-@@ -1219,7 +1219,8 @@
- }
- #endif
-
--
-+struct update_msg_info update_msg_send = {NULL, 0, 0};
-+
- /* sending SADB_ADD or SADB_UPDATE message to the kernel */
- static int
- pfkey_send_x1(struct pfkey_send_sa_args *sa_parms)
-@@ -1483,10 +1484,24 @@
-
- /* send message */
- len = pfkey_send(sa_parms->so, newmsg, len);
-- free(newmsg);
-
-- if (len < 0)
-- return -1;
-+ if (newmsg->sadb_msg_type == SADB_UPDATE) {
-+ if (update_msg_send.update_msg)
-+ free(update_msg_send.update_msg);
-+ update_msg_send.update_msg = newmsg;
-+ update_msg_send.so = sa_parms->so;
-+ update_msg_send.len = len;
-+
-+ if (len < 0) {
-+ free(update_msg_send.update_msg);
-+ update_msg_send.update_msg = NULL;
-+ return -1;
-+ }
-+ } else {
-+ free(newmsg);
-+ if (len < 0)
-+ return -1;
-+ }
-
- __ipsec_errcode = EIPSEC_NO_ERROR;
- return len;
---- a/src/racoon/session.c
-+++ b/src/racoon/session.c
-@@ -100,6 +100,8 @@
-
- #include "sainfo.h"
-
-+extern struct update_msg_info update_msg_send;
-+
- struct fd_monitor {
- int (*callback)(void *ctx, int fd);
- void *ctx;
-@@ -348,6 +350,11 @@
- close_sockets();
- backupsa_clean();
-
-+ if (update_msg_send.update_msg) {
-+ free(update_msg_send.update_msg);
-+ update_msg_send.update_msg = NULL;
-+ }
-+
- plog(LLV_INFO, LOCATION, NULL, "racoon process %d shutdown\n", getpid());
-
- exit(0);
---- a/src/racoon/pfkey.c
-+++ b/src/racoon/pfkey.c
-@@ -103,10 +103,12 @@
- #include "crypto_openssl.h"
- #include "grabmyaddr.h"
-+#include "../libipsec/libpfkey.h"
-
- #if defined(SADB_X_EALG_RIJNDAELCBC) && !defined(SADB_X_EALG_AESCBC)
- #define SADB_X_EALG_AESCBC SADB_X_EALG_RIJNDAELCBC
- #endif
-
-+extern struct update_msg_info update_msg_send;
- /* prototype */
- static u_int ipsecdoi2pfkey_aalg __P((u_int));
- static u_int ipsecdoi2pfkey_ealg __P((u_int));
-@@ -253,6 +255,13 @@
- s_pfkey_type(msg->sadb_msg_type),
- strerror(msg->sadb_msg_errno));
-
-+ if (msg->sadb_msg_errno == EINTR &&
-+ update_msg_send.update_msg) {
-+ plog(LLV_DEBUG, LOCATION, NULL,
-+ "pfkey update resend\n");
-+ send(update_msg_send.so, (void *)update_msg_send.update_msg, (socklen_t)update_msg_send.len, 0);
-+ }
-+
- goto end;
- }
-
-@@ -498,6 +507,11 @@
- {
- flushsp();
-
-+ if (update_msg_send.update_msg) {
-+ free(update_msg_send.update_msg);
-+ update_msg_send.update_msg = NULL;
-+ }
-+
- if (pfkey_send_spddump(lcconf->sock_pfkey) < 0) {
- plog(LLV_ERROR, LOCATION, NULL,
- "libipsec sending spddump failed: %s\n",
-@@ -1295,6 +1309,8 @@
- return 0;
- }
-
-+int update_received = 0;
-+
- static int
- pk_recvupdate(mhp)
- caddr_t *mhp;
-@@ -1307,6 +1323,13 @@
- int incomplete = 0;
- struct saproto *pr;
-
-+ update_received = 1;
-+
-+ if (update_msg_send.update_msg) {
-+ free(update_msg_send.update_msg);
-+ update_msg_send.update_msg = NULL;
-+ }
-+
- /* ignore this message because of local test mode. */
- if (f_local)
- return 0;
-@@ -4163,3 +4186,8 @@
-
- return buf;
- }
-+
-+int receive_from_isakmp()
-+{
-+ return pfkey_handler(NULL, lcconf->sock_pfkey);
-+}
---- a/src/racoon/pfkey.h
-+++ b/src/racoon/pfkey.h
-@@ -71,5 +71,6 @@
- extern u_int32_t pk_getseq __P((void));
- extern const char *sadbsecas2str
- __P((struct sockaddr *, struct sockaddr *, int, u_int32_t, int));
-+extern int receive_from_isakmp __P((void));
-
- #endif /* _PFKEY_H */
---- a/src/racoon/isakmp_quick.c
-+++ b/src/racoon/isakmp_quick.c
-@@ -774,6 +774,8 @@
- return error;
- }
-
-+extern int update_received;
-+
- /*
- * send to responder
- * HDR*, HASH(3)
-@@ -892,6 +894,11 @@
- }
- plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n");
-
-+ while (!update_received)
-+ receive_from_isakmp();
-+
-+ update_received = 0;
-+
- /* Do ADD for responder */
- if (pk_sendadd(iph2) < 0) {
- plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n");
-@@ -1035,6 +1042,11 @@
- }
- plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n");
-
-+ while (!update_received)
-+ receive_from_isakmp();
-+
-+ update_received = 0;
-+
- /* Do ADD for responder */
- if (pk_sendadd(iph2) < 0) {
- plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n");
-@@ -1989,6 +2001,11 @@
- }
- plog(LLV_DEBUG, LOCATION, NULL, "pfkey update sent.\n");
-
-+ while (!update_received)
-+ receive_from_isakmp();
-+
-+ update_received = 0;
-+
- /* Do ADD for responder */
- if (pk_sendadd(iph2) < 0) {
- plog(LLV_ERROR, LOCATION, NULL, "pfkey add failed.\n");
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch
deleted file mode 100644
index e272bc20fa..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-ivm.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Subject: [PATCH] ipsec-tools: racoon: check several invalid ivm
-
-Upstream-Status: Pending
-
-Add checking for invalid ivm, or it will crash racoon.
-
-Signed-off-by: Ming Liu <ming.liu@windriver.com>
----
- isakmp_cfg.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff -urpN a/src/racoon/isakmp_cfg.c b/src/racoon/isakmp_cfg.c
---- a/src/racoon/isakmp_cfg.c
-+++ b/src/racoon/isakmp_cfg.c
-@@ -171,6 +171,11 @@ isakmp_cfg_r(iph1, msg)
- iph1->mode_cfg->last_msgid != packet->msgid )
- iph1->mode_cfg->ivm =
- isakmp_cfg_newiv(iph1, packet->msgid);
-+ if(iph1->mode_cfg->ivm == NULL) {
-+ plog(LLV_ERROR, LOCATION, NULL,
-+ "failed to create new IV\n");
-+ return;
-+ }
- ivm = iph1->mode_cfg->ivm;
-
- dmsg = oakley_do_decrypt(iph1, msg, ivm->iv, ivm->ive);
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch
deleted file mode 100644
index de1bdb4077..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon-check-invalid-pointers.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-Subject: [PATCH] ipsec-tools: racoon: check several invalid pointers
-
-Upstream-Status: Pending
-
-Add checking for invalid pointers, or it will crash racoon.
-
-Signed-off-by: Ming Liu <ming.liu@windriver.com>
----
- ipsec_doi.c | 5 +++--
- isakmp_cfg.c | 7 +++++++
- isakmp_quick.c | 6 ++++--
- 3 files changed, 14 insertions(+), 4 deletions(-)
-
-diff -urpN a/src/racoon/ipsec_doi.c b/src/racoon/ipsec_doi.c
---- a/src/racoon/ipsec_doi.c
-+++ b/src/racoon/ipsec_doi.c
-@@ -3374,8 +3374,9 @@ ipsecdoi_chkcmpids( idt, ids, exact )
-
- /* handle wildcard IDs */
-
-- if (idt == NULL || ids == NULL)
-- {
-+ if (idt == NULL || ids == NULL ||
-+ idt->v == NULL || idt->l == 0 ||
-+ ids->v == NULL || ids->l == 0) {
- if( !exact )
- {
- plog(LLV_DEBUG, LOCATION, NULL,
-diff -urpN a/src/racoon/isakmp_cfg.c b/src/racoon/isakmp_cfg.c
---- a/src/racoon/isakmp_cfg.c
-+++ b/src/racoon/isakmp_cfg.c
-@@ -1138,6 +1138,13 @@ isakmp_cfg_newiv(iph1, msgid)
- return NULL;
- }
-
-+ if (iph1->ivm == NULL || iph1->ivm->iv == NULL ||
-+ iph1->ivm->iv->v == NULL || iph1->ivm->iv->l == 0) {
-+ plog(LLV_ERROR, LOCATION, NULL,
-+ "isakmp_cfg_newiv called with invalid IV management\n");
-+ return NULL;
-+ }
-+
- if (ics->ivm != NULL)
- oakley_delivm(ics->ivm);
-
-diff -urpN a/src/racoon/isakmp_quick.c b/src/racoon/isakmp_quick.c
---- a/src/racoon/isakmp_quick.c
-+++ b/src/racoon/isakmp_quick.c
-@@ -2243,8 +2243,10 @@ get_proposal_r(iph2)
- int error = ISAKMP_INTERNAL_ERROR;
-
- /* check the existence of ID payload */
-- if ((iph2->id_p != NULL && iph2->id == NULL)
-- || (iph2->id_p == NULL && iph2->id != NULL)) {
-+ if ((iph2->id_p != NULL &&
-+ (iph2->id == NULL || iph2->id->v == NULL || iph2->id->l == 0)) ||
-+ (iph2->id != NULL &&
-+ (iph2->id_p == NULL || iph2->id_p->v == NULL || iph2->id_p->l == 0))) {
- plog(LLV_ERROR, LOCATION, NULL,
- "Both IDs wasn't found in payload.\n");
- return ISAKMP_NTYPE_INVALID_ID_INFORMATION;
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf
deleted file mode 100644
index 6b507508b1..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-# Defaults for racoon service
-# sourced by racoon.service
-# installed at /etc/default/racoon by the maintainer scripts
-#
-# This is a POSIX shell fragment
-#
-# Arguments to pass to racoon
-RACOON_ARGS=""
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample
deleted file mode 100644
index 2948a4a35b..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.conf.sample
+++ /dev/null
@@ -1,40 +0,0 @@
-#
-# NOTE: This file will not be used if you use racoon-tool(8) to manage your
-# IPsec connections. racoon-tool will process racoon-tool.conf(5) and
-# generate a configuration (/var/lib/racoon/racoon.conf) and use it, instead
-# of this file.
-#
-# Simple racoon.conf
-#
-#
-# Please look in /usr/share/doc/racoon/examples for
-# examples that come with the source.
-#
-# Please read racoon.conf(5) for details, and alsoread setkey(8).
-#
-#
-# Also read the Linux IPSEC Howto up at
-# http://www.ipsec-howto.org/t1.html
-#
-log notify;
-path pre_shared_key "/etc/racoon/psk.txt";
-path certificate "/etc/racoon/certs";
-
-#remote 172.31.1.1 {
-# exchange_mode main,aggressive;
-# proposal {
-# encryption_algorithm 3des;
-# hash_algorithm sha1;
-# authentication_method pre_shared_key;
-# dh_group modp1024;
-# }
-# generate_policy off;
-#}
-#
-#sainfo address 192.168.203.10[any] any address 192.168.22.0/24[any] any {
-# pfs_group modp768;
-# encryption_algorithm 3des;
-# authentication_algorithm hmac_md5;
-# compression_algorithm deflate;
-#}
-
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service b/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service
deleted file mode 100644
index a10e770279..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools/racoon.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Racoon IKEv1 key management daemon for IPSEC
-After=syslog.target network.target
-
-[Service]
-Type=forking
-EnvironmentFile=-@SYSCONFDIR@/default/racoon
-ExecStart=@SBINDIR@/racoon $RACOON_ARGS
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb b/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb
deleted file mode 100644
index a6d473b594..0000000000
--- a/meta-networking/recipes-support/ipsec-tools/ipsec-tools_0.8.2.bb
+++ /dev/null
@@ -1,98 +0,0 @@
-DESCRIPTION = "IPsec-Tools is a port of KAME's IPsec utilities to the \
-Linux-2.6 IPsec implementation."
-HOMEPAGE = "http://ipsec-tools.sourceforge.net/"
-SECTION = "net"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://src/libipsec/pfkey.c;beginline=6;endline=31;md5=bc9b7ff40beff19fe6bc6aef26bd2b24"
-
-DEPENDS = "virtual/kernel openssl readline flex-native bison-native"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-SRC_URI = "http://ftp.netbsd.org/pub/NetBSD/misc/ipsec-tools/0.8/ipsec-tools-${PV}.tar.bz2 \
- file://0002-Don-t-link-against-libfl.patch \
- file://configure.patch \
- file://0001-racoon-pfkey-avoid-potential-null-pointer-dereferenc.patch \
- file://racoon-check-invalid-pointers.patch \
- file://racoon-check-invalid-ivm.patch \
- file://glibc-2.20.patch \
- file://racoon-Resend-UPDATE-message-when-received-EINTR-message.patch \
- file://racoon.conf.sample \
- file://racoon.conf \
- file://racoon.service \
- file://fix-CVE-2015-4047.patch \
- file://0001-Fix-build-with-clang.patch \
- file://0001-Fix-header-issues-found-with-musl-libc.patch \
- file://0002-cfparse-clear-memory-equal-to-size-of-array.patch \
- file://fix-CVE-2016-10396.patch \
- file://0001-Disable-gcc8-specific-warnings.patch \
- file://0001-ipsec-tools-add-openssl-1.1-support.patch \
- "
-SRC_URI[md5sum] = "d53ec14a0a3ece64e09e5e34b3350b41"
-SRC_URI[sha256sum] = "8eb6b38716e2f3a8a72f1f549c9444c2bc28d52c9536792690564c74fe722f2d"
-
-inherit autotools systemd
-
-# Options:
-# --enable-adminport enable admin port
-# --enable-rc5 enable RC5 encryption (patented)
-# --enable-idea enable IDEA encryption (patented)
-# --enable-gssapi enable GSS-API authentication
-# --enable-hybrid enable hybrid, both mode-cfg and xauth support
-# --enable-frag enable IKE fragmentation payload support
-# --enable-stats enable statistics logging function
-# --enable-dpd enable dead peer detection
-# --enable-samode-unspec enable to use unspecified a mode of SA
-# --disable-ipv6 disable ipv6 support
-# --enable-natt enable NAT-Traversal (yes/no/kernel)
-# --enable-natt-versions=list list of supported NAT-T versions delimited by coma.
-# --with-kernel-headers=/lib/modules/<uname>/build/include
-# where your Linux Kernel headers are installed
-# --with-readline support readline input (yes by default)
-# --with-flex use directiory (default: no)
-# --with-flexlib=<LIB> specify flex library.
-# --with-openssl=DIR specify OpenSSL directory
-# --with-libradius=DIR specify libradius path (like/usr/pkg)
-# --with-libpam=DIR specify libpam path (like/usr/pkg)
-#
-# Note: if you give it the actual kernel headers it won't build, it actually
-# needs to point at the linux-libc-headers version of the kernel headers.
-#
-EXTRA_OECONF = "--with-kernel-headers=${STAGING_INCDIR} \
- --with-readline \
- --with-openssl=${STAGING_LIBDIR}/.. \
- --without-libradius \
- --disable-security-context \
- --enable-shared \
- --enable-dpd \
- --enable-natt=yes \
- --sysconfdir=${sysconfdir}/racoon \
- ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '--enable-ipv6=yes', '', d)}"
-
-# See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=530527
-CFLAGS += "-fno-strict-aliasing"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[pam] = "--with-libpam,--without-libpam,libpam,"
-PACKAGECONFIG[selinux] = "--enable-security-context,--disable-security-context,libselinux,"
-
-SYSTEMD_SERVICE_${PN} = "racoon.service"
-
-do_install_append() {
- install -d ${D}${sysconfdir}/racoon
- install -m 0644 ${WORKDIR}/racoon.conf.sample ${D}${sysconfdir}/racoon/racoon.conf
-
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/racoon.service ${D}${systemd_unitdir}/system
-
- sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/racoon.service
- sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/racoon.service
-
- install -d ${D}${sysconfdir}/default/
- install -m 0644 ${WORKDIR}/racoon.conf ${D}${sysconfdir}/default/racoon
- fi
-}
-
-FILES_${PN} += "${sysconfdir}/racoon/racoon.conf \
- ${sysconfdir}/default/racoon"
diff --git a/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-Add-CCFLAGS-to-cflags.patch b/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-Add-CCFLAGS-to-cflags.patch
new file mode 100644
index 0000000000..a2923088e8
--- /dev/null
+++ b/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-Add-CCFLAGS-to-cflags.patch
@@ -0,0 +1,36 @@
+From 1bc180ec333d90e1a11deff46b5639ab5d40408d Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 May 2023 09:29:23 -0700
+Subject: [PATCH] Add CCFLAGS to cflags
+
+This is to append the flags from build environment.
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile | 1 +
+ libipvs/Makefile | 3 +++
+ 2 files changed, 4 insertions(+)
+
+--- a/Makefile
++++ b/Makefile
+@@ -50,6 +50,7 @@ else
+ CFLAGS = -Wall -Wunused -Wstrict-prototypes -g
+ endif
+
++CFLAGS += $(CCFLAGS)
+
+ #####################################
+ # No servicable parts below this line
+--- a/libipvs/Makefile
++++ b/libipvs/Makefile
+@@ -1,6 +1,9 @@
+ # Makefile for libipvs
+
+ CFLAGS = -Wall -Wunused -Wstrict-prototypes -g -fPIC
++
++CFLAGS += $(CCFLAGS)
++
+ ifneq (0,$(HAVE_NL))
+ CFLAGS += -DLIBIPVS_USE_NL
+ CFLAGS += $(shell \
diff --git a/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-libipvs-Include-missing-sys-types.h.patch b/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-libipvs-Include-missing-sys-types.h.patch
new file mode 100644
index 0000000000..8b08482be7
--- /dev/null
+++ b/meta-networking/recipes-support/ipvsadm/ipvsadm/0001-libipvs-Include-missing-sys-types.h.patch
@@ -0,0 +1,28 @@
+From 4fc59f5733d187941e9a7ce5e9ea33714d85285c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 26 May 2023 09:30:59 -0700
+Subject: [PATCH] libipvs: Include missing sys/types.h
+
+Its needed for u_intXX_t types
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libipvs/ip_vs.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/libipvs/ip_vs.h b/libipvs/ip_vs.h
+index 2670c23..625b6cd 100644
+--- a/libipvs/ip_vs.h
++++ b/libipvs/ip_vs.h
+@@ -8,6 +8,7 @@
+
+ #include <netinet/in.h>
+ #include <sys/socket.h>
++#include <sys/types.h>
+ #include <arpa/inet.h>
+ #include <linux/types.h> /* For __beXX types in userland */
+
+--
+2.40.1
+
diff --git a/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb b/meta-networking/recipes-support/ipvsadm/ipvsadm_1.31.bb
index 4f3c16dc37..442e231ad4 100644
--- a/meta-networking/recipes-support/ipvsadm/ipvsadm_1.29.bb
+++ b/meta-networking/recipes-support/ipvsadm/ipvsadm_1.31.bb
@@ -11,30 +11,34 @@ methods (NAT, tunneling, and direct routing), and eight load balancing algorithm
locality-based least-connection, locality-based least-connection with replication, \
destination-hashing, and source-hashing)."
SECTION = "net"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://README;beginline=40;endline=56;md5=b4e40069f15598d0e3fe2aa177e5ec77"
DEPENDS += "libnl popt"
-SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.gz \
+SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/utils/kernel/ipvsadm/${BP}.tar.xz \
file://0001-Modify-the-Makefile-for-cross-compile.patch \
file://0003-ipvsadm-remove-dependency-on-bash.patch \
file://makefile-add-ldflags.patch \
+ file://0001-Add-CCFLAGS-to-cflags.patch \
+ file://0001-libipvs-Include-missing-sys-types.h.patch \
"
-SRC_URI[md5sum] = "88b35030b4766b3e44ad15aacdef65c4"
-SRC_URI[sha256sum] = "297f5cd459c3eef81ed0ca32e53bf320ed6b132fe7ed6ea5e44aa6b1fbd2a7de"
+SRC_URI[md5sum] = "f6d1707c5baf684b58fd33682d67871f"
+SRC_URI[sha256sum] = "1a0a5e25b5a1226435d2fb76341656f83a710183aebb0d204db39c0ec3bedfdb"
UPSTREAM_CHECK_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/ipvsadm"
+EXTRA_OEMAKE += "CCFLAGS='${CFLAGS}'"
+
do_compile() {
- oe_runmake \
- CC="${CC} -I${STAGING_INCDIR} -I${STAGING_INCDIR}/libnl3 -L${STAGING_LIBDIR}" \
- all
+ oe_runmake all
}
do_install() {
- sed -i -e "s;SBIN\t\t= \$(BUILD_ROOT)/sbin;SBIN\t\t= \$(BUILD_ROOT)/$base_sbindir;" ${S}/Makefile
+ sed -i -e "s;SBIN\t\t= \$(BUILD_ROOT)/sbin;SBIN\t\t= \$(BUILD_ROOT)$base_sbindir;" \
+ -e "s;INIT\t\t= \$(BUILD_ROOT)/etc/rc.d/init.d;INIT\t\t= \$(BUILD_ROOT)${sysconfdir}/init.d;" \
+ ${S}/Makefile
oe_runmake 'BUILD_ROOT=${D}' install
}
diff --git a/meta-networking/recipes-support/libconfuse/libconfuse_3.3.bb b/meta-networking/recipes-support/libconfuse/libconfuse_3.3.bb
new file mode 100644
index 0000000000..b8d0536eb3
--- /dev/null
+++ b/meta-networking/recipes-support/libconfuse/libconfuse_3.3.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "libConfuse is a configuration file parser library"
+LICENSE = "ISC"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=42fa47330d4051cd219f7d99d023de3a"
+
+SRCREV = "a42aebf13db33afd575da6e63f55163d371f776d"
+SRC_URI = "git://github.com/libconfuse/libconfuse.git;branch=master;protocol=https"
+
+inherit autotools-brokensep pkgconfig gettext
+
+S = "${WORKDIR}/git"
+
+do_configure:prepend(){
+ (cd ${S} && ${S}/autogen.sh)
+}
diff --git a/meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb b/meta-networking/recipes-support/libcpr/libcpr_1.10.5.bb
new file mode 100644
index 0000000000..93fdb78eba
--- /dev/null
+++ b/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-networking/recipes-support/libesmtp/libesmtp/0001-Add-build-option-for-NTLM-support.patch b/meta-networking/recipes-support/libesmtp/libesmtp/0001-Add-build-option-for-NTLM-support.patch
new file mode 100644
index 0000000000..dbdd644830
--- /dev/null
+++ b/meta-networking/recipes-support/libesmtp/libesmtp/0001-Add-build-option-for-NTLM-support.patch
@@ -0,0 +1,85 @@
+From 1c304e7886a08fb56485e41614ff3f8685afb59d Mon Sep 17 00:00:00 2001
+From: Jiaqing Zhao <jiaqing.zhao@intel.com>
+Date: Tue, 8 Mar 2022 15:05:32 +0000
+Subject: [PATCH] Add build option for NTLM support
+
+Currently, NTLM plugin is built by default when openssl is available
+and STARTTLS is enabled. But in libesmtp 1.0.6, there is a separate
+build option. This commits adds the 'ntlm' option back. It's also
+disabled by default.
+
+Like 1.0.6, it will check openssl MD4 algorithm support as MD4 is
+insecure and modern systems may drop MD4 support.
+
+Upstream-Status: Backport [https://github.com/libesmtp/libESMTP/commit/1c304e7886a08fb56485e41614ff3f8685afb59d]
+Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
+---
+ meson.build | 13 ++++++++++---
+ meson_options.txt | 1 +
+ ntlm/meson.build | 2 +-
+ 3 files changed, 12 insertions(+), 4 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 11d6ed8..d2a0e06 100644
+--- a/meson.build
++++ b/meson.build
+@@ -61,6 +61,7 @@ add_project_arguments(cc.get_supported_arguments(cflags), language: 'c')
+ ################################################################################
+ dldep = cc.find_library('dl')
+ ssldep = dependency('openssl', version : '>=1.1.0', required : get_option('tls'))
++ntlmdep = dependency('openssl', version : '>=1.1.0', required : get_option('ntlm'))
+ threaddep = dependency('threads', required : get_option('pthreads'))
+
+ #XXX add test for libbind9.so
+@@ -69,6 +70,7 @@ lwresdep = cc.find_library('lwres', required : get_option('lwres'))
+ deps = [
+ dldep,
+ ssldep,
++ ntlmdep,
+ threaddep,
+ lwresdep,
+ ]
+@@ -237,8 +239,12 @@ include_dir = include_directories('.')
+ subdir('login')
+ subdir('plain')
+ subdir('crammd5')
+-if ssldep.found()
+- subdir('ntlm')
++if ntlmdep.found()
++ if cc.has_header('openssl/md4.h') and cc.has_function('MD4_Init', dependencies : ntlmdep)
++ subdir('ntlm')
++ else
++ error('MD4 is not supported in current openssl, unable to build NTLM plugin')
++ endif
+ endif
+
+ ################################################################################
+@@ -264,4 +270,5 @@ summary({'current:revision:age': libesmtp_cra,
+ 'STARTTLS': ssldep.found(),
+ 'CHUNKING': get_option('bdat'),
+ 'ETRN': get_option('etrn'),
+- 'XUSR': get_option('xusr')})
++ 'XUSR': get_option('xusr'),
++ 'NTLM': ntlmdep.found()})
+diff --git a/meson_options.txt b/meson_options.txt
+index 8375e2c..158f38f 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -5,3 +5,4 @@ option('lwres', type : 'feature', value : 'disabled', description : 'use lwres l
+ option('bdat', type : 'boolean', value : 'true', description : 'enable SMTP BDAT extension')
+ option('etrn', type : 'boolean', value : 'true', description : 'enable SMTP ETRN extension')
+ option('xusr', type : 'boolean', value : 'true', description : 'enable sendmail XUSR extension')
++option('ntlm', type : 'feature', value : 'disabled', description : 'build with support for NTLM authentication')
+diff --git a/ntlm/meson.build b/ntlm/meson.build
+index e0eef58..11d7f58 100644
+--- a/ntlm/meson.build
++++ b/ntlm/meson.build
+@@ -5,7 +5,7 @@ sasl_ntlm_sources = [
+ 'ntlmstruct.c',
+ ]
+
+-ntlm_deps = [ ssldep, ]
++ntlm_deps = [ ntlmdep, ]
+
+ sasl_ntlm = shared_module('ntlm', sasl_ntlm_sources,
+ name_prefix : 'sasl-',
diff --git a/meta-networking/recipes-support/libesmtp/libesmtp/include-topdir.patch b/meta-networking/recipes-support/libesmtp/libesmtp/include-topdir.patch
deleted file mode 100644
index 90c4ce75e1..0000000000
--- a/meta-networking/recipes-support/libesmtp/libesmtp/include-topdir.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff -Nurp libesmtp-1.0.6.org/crammd5/Makefile.am libesmtp-1.0.6/crammd5/Makefile.am
---- libesmtp-1.0.6.org/crammd5/Makefile.am 2010-08-08 23:45:57.000000000 +0800
-+++ libesmtp-1.0.6/crammd5/Makefile.am 2014-11-17 11:17:21.663624295 +0800
-@@ -2,7 +2,7 @@
-
- libdir = @plugindir@
-
--INCLUDES = -I@srcdir@
-+INCLUDES = -I@srcdir@ -I@srcdir@/../
- AM_CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-
- lib_LTLIBRARIES = sasl-cram-md5.la
-diff -Nurp libesmtp-1.0.6.org/login/Makefile.am libesmtp-1.0.6/login/Makefile.am
---- libesmtp-1.0.6.org/login/Makefile.am 2010-08-08 23:45:56.000000000 +0800
-+++ libesmtp-1.0.6/login/Makefile.am 2014-11-17 11:17:54.339623018 +0800
-@@ -2,7 +2,7 @@
-
- libdir = @plugindir@
-
--INCLUDES = -I@srcdir@
-+INCLUDES = -I@srcdir@ -I@srcdir@/../
-
- lib_LTLIBRARIES = sasl-login.la
- AM_CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-diff -Nurp libesmtp-1.0.6.org/ntlm/Makefile.am libesmtp-1.0.6/ntlm/Makefile.am
---- libesmtp-1.0.6.org/ntlm/Makefile.am 2010-08-08 23:45:56.000000000 +0800
-+++ libesmtp-1.0.6/ntlm/Makefile.am 2014-11-17 11:18:10.551622385 +0800
-@@ -2,7 +2,7 @@
-
- libdir = @plugindir@
-
--INCLUDES = -I@srcdir@
-+INCLUDES = -I@srcdir@ -I@srcdir@/../
- AM_CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-
- lib_LTLIBRARIES = sasl-ntlm.la
-diff -Nurp libesmtp-1.0.6.org/plain/Makefile.am libesmtp-1.0.6/plain/Makefile.am
---- libesmtp-1.0.6.org/plain/Makefile.am 2010-08-08 23:45:54.000000000 +0800
-+++ libesmtp-1.0.6/plain/Makefile.am 2014-11-17 11:18:33.355621494 +0800
-@@ -2,7 +2,7 @@
-
- libdir = @plugindir@
-
--INCLUDES = -I@srcdir@
-+INCLUDES = -I@srcdir@ -I@srcdir@/../
- AM_CFLAGS = @CFLAGS@ @EXTRA_CFLAGS@
-
- lib_LTLIBRARIES = sasl-plain.la
diff --git a/meta-networking/recipes-support/libesmtp/libesmtp/snprintf.patch b/meta-networking/recipes-support/libesmtp/libesmtp/snprintf.patch
deleted file mode 100644
index d0d203eadb..0000000000
--- a/meta-networking/recipes-support/libesmtp/libesmtp/snprintf.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Use HAVE_WORKING_SNPRINTF to check for snprintf()
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: libesmtp-1.0.6/missing.h
-===================================================================
---- libesmtp-1.0.6.orig/missing.h
-+++ libesmtp-1.0.6/missing.h
-@@ -43,7 +43,7 @@ int strncasecmp (const char *a, const ch
- void *memrchr (const void *a, int c, size_t len);
- #endif
-
--#ifndef HAVE_SNPRINTF
-+#ifndef HAVE_WORKING_SNPRINTF
- #include <sys/types.h>
- int snprintf(char *s, size_t n, const char *format, ...);
- #endif
diff --git a/meta-networking/recipes-support/libesmtp/libesmtp_1.0.6.bb b/meta-networking/recipes-support/libesmtp/libesmtp_1.0.6.bb
deleted file mode 100644
index 71c5d940b7..0000000000
--- a/meta-networking/recipes-support/libesmtp/libesmtp_1.0.6.bb
+++ /dev/null
@@ -1,38 +0,0 @@
-SUMMARY = "SMTP client library"
-DESCRIPTION = "LibESMTP is a library to manage posting \
-(or submission of) electronic mail using SMTP to a \
-preconfigured Mail Transport Agent (MTA) such as Exim or PostFix."
-HOMEPAGE = "http://www.stafford.uklinux.net/libesmtp/"
-LICENSE = "LGPLv2+"
-SECTION = "libs"
-
-DEPENDS = "openssl"
-
-SRC_URI = "http://www.stafford.uklinux.net/libesmtp/libesmtp-${PV}.tar.bz2 \
- file://include-topdir.patch \
- file://snprintf.patch \
- "
-SRC_URI[md5sum] = "bf3915e627fd8f35524a8fdfeed979c8"
-SRC_URI[sha256sum] = "d0a61a5c52d99fa7ce7d00ed0a07e341dbda67101dbed1ab0cdae3f37db4eb0b"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
- file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
-
-inherit autotools binconfig
-
-EXTRA_OECONF = " \
- --with-auth-plugin-dir=${libdir}/esmtp-plugins \
- --enable-pthreads \
- --enable-debug \
- --enable-etrn \
- --disable-isoc \
- --disable-more-warnings \
- --disable-static \
-"
-
-FILES_${PN} = "${libdir}/lib*${SOLIBS} \
- ${libdir}/esmtp-plugins/*${SOLIBSDEV}"
-
-FILES_${PN}-dev += "${libdir}/esmtp-plugins/*.la"
-FILES_${PN}-static += "${libdir}/esmtp-plugins/*.a"
-FILES_${PN}-dbg += "${libdir}/esmtp-plugins/.debug/"
diff --git a/meta-networking/recipes-support/libesmtp/libesmtp_1.1.0.bb b/meta-networking/recipes-support/libesmtp/libesmtp_1.1.0.bb
new file mode 100644
index 0000000000..3d0764a3b9
--- /dev/null
+++ b/meta-networking/recipes-support/libesmtp/libesmtp_1.1.0.bb
@@ -0,0 +1,40 @@
+SUMMARY = "SMTP client library"
+DESCRIPTION = "LibESMTP is a library to manage posting \
+(or submission of) electronic mail using SMTP to a \
+preconfigured Mail Transport Agent (MTA) such as Exim or PostFix."
+HOMEPAGE = "https://libesmtp.github.io/"
+LICENSE = "LGPL-2.0-or-later"
+SECTION = "libs"
+
+DEPENDS = "openssl"
+
+SRC_URI = "git://github.com/libesmtp/libESMTP.git;branch=master;protocol=https \
+ file://0001-Add-build-option-for-NTLM-support.patch"
+SRCREV = "1d0af244310a66943ab400be56b15a9087f181eb"
+
+S = "${WORKDIR}/git"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1803fa9c2c3ce8cb06b4861d75310742 \
+ file://COPYING.GPL;md5=393a5ca445f6965873eca0259a17f833"
+
+inherit meson pkgconfig
+
+EXTRA_OEMESON = " \
+ -Dpthreads=enabled \
+ -Dtls=enabled \
+ -Dxdg=false \
+ -Dlwres=disabled \
+ -Dbdat=true \
+ -Detrn=true \
+ -Dxusr=true \
+ -Dntlm=disabled \
+"
+
+CFLAGS += "-D_GNU_SOURCE"
+
+do_configure:prepend:libc-glibc() {
+ sed -i -e "s/conf.set('HAVE_WORKING_STRERROR_R', 0)/conf.set('HAVE_WORKING_STRERROR_R', 1)/g" ${S}/meson.build
+}
+
+FILES:${PN} = "${libdir}/lib*${SOLIBS} \
+ ${libdir}/esmtp-plugins-6.2.0/*${SOLIBSDEV}"
diff --git a/meta-networking/recipes-support/libexosip2/libexosip2_5.3.0.bb b/meta-networking/recipes-support/libexosip2/libexosip2_5.3.0.bb
new file mode 100644
index 0000000000..541b2edce1
--- /dev/null
+++ b/meta-networking/recipes-support/libexosip2/libexosip2_5.3.0.bb
@@ -0,0 +1,22 @@
+SUMMARY = "Extend the capability of the oSIP library"
+DESCRIPTION = "eXosip is a GPL library that extend the capability of \
+the oSIP library. It aims to implement a simple high \
+layer API to control SIP (rfc3261) for sessions establishements \
+and common extensions."
+HOMEPAGE = "http://savannah.gnu.org/projects/exosip"
+SECTION = "libs"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://src/eXosip.c;beginline=1;endline=32;md5=db3c08b79afd8f4d5e5dc8f0a5dc687e"
+DEPENDS = "libosip2"
+
+SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/exosip/${BPN}-${PV}.tar.gz"
+SRC_URI[sha256sum] = "5b7823986431ea5cedc9f095d6964ace966f093b2ae7d0b08404788bfcebc9c2"
+
+inherit autotools pkgconfig
+
+PACKAGECONFIG = "c-ares openssl"
+PACKAGECONFIG[c-ares] = ",,c-ares"
+PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
+
+PACKAGES =+ "${PN}-tools"
+FILES:${PN}-tools += "${bindir}"
diff --git a/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch b/meta-networking/recipes-support/libldb/libldb/0001-do-not-import-target-module-while-cross-compile.patch
index ee4936a5aa..09c84b4405 100644
--- a/meta-networking/recipes-support/libldb/libldb/do-not-import-target-module-while-cross-compile.patch
+++ b/meta-networking/recipes-support/libldb/libldb/0001-do-not-import-target-module-while-cross-compile.patch
@@ -1,30 +1,36 @@
-From f4cda3a71311e4496b725bc5f46af93413ec7a1c Mon Sep 17 00:00:00 2001
-From: Bian Naimeng <biannm@cn.fujitsu.com>
-Date: Fri, 17 Jul 2015 11:58:49 +0800
-Subject: [PATCH] libldb: add new recipe
+From 6a2f229e74804f70f4419b2a1e6843aab059e098 Mon Sep 17 00:00:00 2001
+From: Changqing Li <changqing.li@windriver.com>
+Date: Tue, 25 Jun 2019 14:25:08 +0800
+Subject: [PATCH] do not import target module while cross compile
-Some modules such as dynamic library maybe cann't be imported while cross compile,
-we just check whether does the module exist.
+Some modules such as dynamic library maybe cann't be imported
+while cross compile, we just check whether does the module exist.
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
+update to version 4.10.5, and switch to python3
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
- buildtools/wafsamba/samba_bundled.py | 32 ++++++++++++++++++++++++--------
- 1 file changed, 24 insertions(+), 8 deletions(-)
+ buildtools/wafsamba/samba_bundled.py | 27 +++++++++++++++++++--------
+ 1 file changed, 19 insertions(+), 8 deletions(-)
diff --git a/buildtools/wafsamba/samba_bundled.py b/buildtools/wafsamba/samba_bundled.py
-index 253d604..398cc6a 100644
+index 2300565..26d9e8c 100644
--- a/buildtools/wafsamba/samba_bundled.py
+++ b/buildtools/wafsamba/samba_bundled.py
-@@ -2,6 +2,7 @@
-
- import sys
- import Build, Options, Logs
-+import imp, os
- from Configure import conf
- from samba_utils import TO_LIST
+@@ -4,6 +4,7 @@ import sys
+ from waflib import Build, Options, Logs
+ from waflib.Configure import conf
+ from wafsamba import samba_utils
++import importlib.util, os
-@@ -249,17 +250,32 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'):
+ def PRIVATE_NAME(bld, name):
+ '''possibly rename a library to include a bundled extension'''
+@@ -245,17 +246,27 @@ def CHECK_BUNDLED_SYSTEM_PYTHON(conf, libname, modulename, minversion='0.0.0'):
# versions
minversion = minimum_library_version(conf, libname, minversion)
@@ -34,34 +40,32 @@ index 253d604..398cc6a 100644
- found = False
- else:
+ # Find module in PYTHONPATH
-+ stuff = imp.find_module(modulename, [os.environ["PYTHONPATH"]])
-+ if stuff:
++ spec = importlib.util._find_spec_from_path(modulename, [os.environ["PYTHONPATH"]])
++ if spec:
try:
- version = m.__version__
- except AttributeError:
-+ m = imp.load_module(modulename, stuff[0], stuff[1], stuff[2])
++ module = importlib.util.module_from_spec(spec)
++ spec.loader.load_module(module)
+ except ImportError:
found = False
+
+ if conf.env.CROSS_COMPILE:
+ # Some modules such as dynamic library maybe cann't be imported
+ # while cross compile, we just check whether the module exist
-+ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (stuff[1]))
++ Logs.warn('Cross module[%s] has been found, but can not be loaded.' % (spec.name))
+ found = True
else:
- found = tuplize_version(version) >= tuplize_version(minversion)
+ try:
-+ version = m.__version__
++ version = module.__version__
+ except AttributeError:
+ found = False
+ else:
+ found = tuplize_version(version) >= tuplize_version(minversion)
-+ finally:
-+ if stuff[0]:
-+ stuff[0].close()
-+ else:
-+ found = False
-+
if not found and not conf.LIB_MAY_BE_BUNDLED(libname):
Logs.error('ERROR: Python module %s of version %s not found, and bundling disabled' % (libname, minversion))
sys.exit(1)
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch b/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch
deleted file mode 100644
index 5818d57f72..0000000000
--- a/meta-networking/recipes-support/libldb/libldb/0001-libldb-fix-config-error.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From bc4ff7e37ce120c257e52a81fe3475499dfd2573 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 10:10:24 +0800
-Subject: [PATCH] libldb: fix config error
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- wscript | 58 +++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 29 insertions(+), 29 deletions(-)
-
-diff --git a/wscript b/wscript
-index b0af7b6..8ad9f96 100644
---- a/wscript
-+++ b/wscript
-@@ -115,40 +115,40 @@ def configure(conf):
- onlyif='talloc tdb tevent pyldb-util',
- implied_deps='replace talloc tdb tevent'):
- conf.define('USING_SYSTEM_LDB', 1)
-+ if not Options.options.without_ldb_lmdb:
-+ if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)',
-+ "HAVE_64_BIT_SIZE_T_FOR_LMDB",
-+ execute=True,
-+ msg='Checking for a 64-bit host to '
-+ 'support lmdb'):
-+ Logs.warn("--without-ldb-lmdb implied as this "
-+ "host is not 64-bit")
-+
-+ if not conf.env.standalone_ldb and \
-+ not Options.options.without_ad_dc and \
-+ conf.CONFIG_GET('ENABLE_SELFTEST'):
-+ Logs.warn("NOTE: Some AD DC parts of selftest will fail")
-
-- if not conf.CHECK_CODE('return !(sizeof(size_t) >= 8)',
-- "HAVE_64_BIT_SIZE_T_FOR_LMDB",
-- execute=True,
-- msg='Checking for a 64-bit host to '
-- 'support lmdb'):
-- Logs.warn("--without-ldb-lmdb implied as this "
-- "host is not 64-bit")
--
-- if not conf.env.standalone_ldb and \
-- not Options.options.without_ad_dc and \
-- conf.CONFIG_GET('ENABLE_SELFTEST'):
-- Logs.warn("NOTE: Some AD DC parts of selftest will fail")
--
-- conf.env.REQUIRE_LMDB = False
-- else:
-- if conf.env.standalone_ldb:
-- if Options.options.without_ldb_lmdb:
-- conf.env.REQUIRE_LMDB = False
-- else:
-- conf.env.REQUIRE_LMDB = True
-- elif Options.options.without_ad_dc:
- conf.env.REQUIRE_LMDB = False
- else:
-- if Options.options.without_ldb_lmdb:
-- if not Options.options.without_ad_dc and \
-- conf.CONFIG_GET('ENABLE_SELFTEST'):
-- raise Utils.WafError('--without-ldb-lmdb conflicts '
-- 'with --enable-selftest while '
-- 'building the AD DC')
--
-+ if conf.env.standalone_ldb:
-+ if Options.options.without_ldb_lmdb:
-+ conf.env.REQUIRE_LMDB = False
-+ else:
-+ conf.env.REQUIRE_LMDB = True
-+ elif Options.options.without_ad_dc:
- conf.env.REQUIRE_LMDB = False
- else:
-- conf.env.REQUIRE_LMDB = True
-+ if Options.options.without_ldb_lmdb:
-+ if not Options.options.without_ad_dc and \
-+ conf.CONFIG_GET('ENABLE_SELFTEST'):
-+ raise Utils.WafError('--without-ldb-lmdb conflicts '
-+ 'with --enable-selftest while '
-+ 'building the AD DC')
-+
-+ conf.env.REQUIRE_LMDB = False
-+ else:
-+ conf.env.REQUIRE_LMDB = True
-
-
- if conf.CONFIG_SET('USING_SYSTEM_LDB'):
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libldb/libldb/0002-ldb-Add-configure-options-for-packages.patch
index 365b92da25..15e093fd68 100644
--- a/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
+++ b/meta-networking/recipes-support/libldb/libldb/0002-ldb-Add-configure-options-for-packages.patch
@@ -1,12 +1,11 @@
-From 6de1affddde4003a956523c330ecf24e22e094ac Mon Sep 17 00:00:00 2001
+From e949da7cb100c571631cd9bc7532e528c1f74820 Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 19 Jul 2018 16:20:32 +0800
-Subject: [PATCH] tdb: Add configure options for packages
+Date: Mon, 1 Jul 2019 16:14:16 +0800
+Subject: [PATCH] ldb: Add configure options for packages
Add configure options for the following packages:
- acl
- attr
- - libaio
- libbsd
- libcap
- valgrind
@@ -15,22 +14,24 @@ Upstream-Status: Inappropriate [oe deterministic build specific]
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
-Update for libtdb_1.3.14.
+upgrade to version 1.5.4
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
-Signed-off-by: Huang Qiyu <huangqy.fnst@cn.fujitsu.com>
+Rebase to 2.3.0
-Update for libtdb_1.3.16
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
+Rebase to 2.8.0
+Remove libaio option
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
- lib/replace/wscript | 89 +++++++++++++++++++++++++++++++++++++++++------------
- wscript | 6 ++++
- 2 files changed, 75 insertions(+), 20 deletions(-)
+ lib/replace/wscript | 80 +++++++++++++++++++++++++++++++++------------
+ wscript | 8 +++++
+ 2 files changed, 68 insertions(+), 20 deletions(-)
diff --git a/lib/replace/wscript b/lib/replace/wscript
-index fd00a42..2df83cd 100644
+index 37d7759..d0d6bb0 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
-@@ -23,6 +23,41 @@ def set_options(opt):
+@@ -25,6 +25,34 @@ def options(opt):
opt.PRIVATE_EXTENSION_DEFAULT('')
opt.RECURSE('buildtools/wafsamba')
@@ -48,13 +49,6 @@ index fd00a42..2df83cd 100644
+ help=("Disable use of attr"),
+ action="store_false", dest='enable_attr', default=False)
+
-+ opt.add_option('--with-libaio',
-+ help=("Enable use of libaio"),
-+ action="store_true", dest='enable_libaio')
-+ opt.add_option('--without-libaio',
-+ help=("Disable use of libaio"),
-+ action="store_false", dest='enable_libaio', default=False)
-+
+ opt.add_option('--with-libbsd',
+ help=("Enable use of libbsd"),
+ action="store_true", dest='enable_libbsd')
@@ -72,19 +66,18 @@ index fd00a42..2df83cd 100644
@Utils.run_once
def configure(conf):
conf.RECURSE('buildtools/wafsamba')
-@@ -32,12 +67,25 @@ def configure(conf):
+@@ -38,12 +66,22 @@ def configure(conf):
conf.DEFINE('HAVE_LIBREPLACE', 1)
conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
- conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
- conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
-+ conf.CHECK_HEADERS('attr/xattr.h compat.h ctype.h dustat.h')
++ conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
-- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
- conf.CHECK_HEADERS('shadow.h sys/acl.h')
- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
-+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('shadow.h')
+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
+
@@ -94,27 +87,25 @@ index fd00a42..2df83cd 100644
+ if Options.options.enable_attr:
+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
+
-+ if Options.options.enable_libaio:
-+ conf.CHECK_HEADERS('libaio.h')
-+
+ if Options.options.enable_libcap:
+ conf.CHECK_HEADERS('sys/capability.h')
+
- conf.CHECK_HEADERS('port.h')
- conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+ conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -108,7 +156,9 @@ def configure(conf):
+ conf.CHECK_HEADERS('sys/resource.h sys/security.h sys/shm.h sys/statfs.h sys/statvfs.h sys/termio.h')
+@@ -113,8 +151,9 @@ def configure(conf):
conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
-- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
+ if Options.options.enable_valgrind:
-+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
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')
-@@ -342,20 +392,19 @@ def configure(conf):
+@@ -443,20 +482,21 @@ def configure(conf):
strlcpy_in_bsd = False
@@ -135,26 +126,28 @@ index fd00a42..2df83cd 100644
+ if Options.options.enable_libbsd:
+ # libbsd on some platforms provides strlcpy and strlcat
+ if not conf.CHECK_FUNCS('strlcpy strlcat'):
-+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
-+ checklibc=True)
++ if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
++ checklibc=True):
++ strlcpy_in_bsd = True
+ 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'):
+ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
++ if not conf.CHECK_FUNCS('setproctitle_init'):
++ conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
+
+ if not conf.CHECK_FUNCS('closefrom'):
+ conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
-+
conf.CHECK_CODE('''
struct ucred cred;
diff --git a/wscript b/wscript
-index 6505648..6608481 100644
+index ed5d45f..6bb0b37 100644
--- a/wscript
+++ b/wscript
-@@ -63,6 +63,12 @@ def set_options(opt):
- action="store_true", dest='disable_tdb_mutex_locking',
- default=False)
+@@ -40,6 +40,14 @@ def options(opt):
+ help='disable new LMDB backend for LDB',
+ action='store_true', dest='without_ldb_lmdb', default=False)
+ opt.add_option('--with-valgrind',
+ help=("enable use of valgrind"),
@@ -162,9 +155,11 @@ index 6505648..6608481 100644
+ opt.add_option('--without-valgrind',
+ help=("disable use of valgrind"),
+ action="store_false", dest='enable_valgrind', default=False)
++
++
def configure(conf):
- conf.env.disable_tdb_mutex_locking = getattr(Options.options,
+ conf.RECURSE('lib/tdb')
--
-2.7.4
+2.25.1
diff --git a/meta-networking/recipes-support/libldb/libldb/0003-Fix-pyext_PATTERN-for-cross-compilation.patch b/meta-networking/recipes-support/libldb/libldb/0003-Fix-pyext_PATTERN-for-cross-compilation.patch
new file mode 100644
index 0000000000..71934795b1
--- /dev/null
+++ b/meta-networking/recipes-support/libldb/libldb/0003-Fix-pyext_PATTERN-for-cross-compilation.patch
@@ -0,0 +1,59 @@
+From 989addc0ca7be8233b413d42704c5dc900e85d81 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Nov 2021 13:33:35 +0800
+Subject: [PATCH] Fix pyext_PATTERN for cross compilation
+
+The pyext_PATTERN will add native arch as suffix when cross compiling.
+For example, on qemuarm64, it is expanded to:
+pyext_PATTERN ='%s.cpython-310-x86_64-linux-gnu.so'
+which will result in the incorrect library name.
+
+root@qemuarm64:~# find /usr/lib/ -name \*ldb\*
+/usr/lib/pkgconfig/pyldb-util.cpython-310-x86_64-linux-gnu.pc
+/usr/lib/pkgconfig/ldb.pc
+/usr/lib/libpyldb-util.cpython-310-x86-64-linux-gnu.so.2.3.2
+/usr/lib/libldb.so.2.3.2
+/usr/lib/libpyldb-util.cpython-310-x86-64-linux-gnu.so.2
+/usr/lib/libldb.so
+/usr/lib/libldb.so.2
+/usr/lib/python3.10/site-packages/_ldb_text.py
+/usr/lib/python3.10/site-packages/ldb.cpython-310-x86_64-linux-gnu.so
+/usr/lib/libpyldb-util.cpython-310-x86-64-linux-gnu.so
+
+Set pyext_PATTERN to '%s.so' to remove the suffix.
+After the patch:
+root@qemuarm64:~# find /usr/lib/ -name \*ldb\*
+/usr/lib/pkgconfig/pyldb-util.pc
+/usr/lib/pkgconfig/ldb.pc
+/usr/lib/libpyldb-util.so.2.3.2
+/usr/lib/libldb.so.2.3.2
+/usr/lib/libpyldb-util.so.2
+/usr/lib/libldb.so
+/usr/lib/libldb.so.2
+/usr/lib/python3.10/site-packages/_ldb_text.py
+/usr/lib/python3.10/site-packages/ldb.so
+/usr/lib/libpyldb-util.so
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ third_party/waf/waflib/Tools/python.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/waf/waflib/Tools/python.py b/third_party/waf/waflib/Tools/python.py
+index b2dd1a9..2bd3545 100644
+--- a/third_party/waf/waflib/Tools/python.py
++++ b/third_party/waf/waflib/Tools/python.py
+@@ -339,7 +339,7 @@ def check_python_headers(conf, features='pyembed pyext'):
+ x = 'MACOSX_DEPLOYMENT_TARGET'
+ if dct[x]:
+ env[x] = conf.environ[x] = str(dct[x])
+- env.pyext_PATTERN = '%s' + (dct['EXT_SUFFIX'] or dct['SO']) # SO is deprecated in 3.5 and removed in 3.11
++ env.pyext_PATTERN = '%s.so'
+
+
+ # Try to get pythonX.Y-config
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch b/meta-networking/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch
index b30afeee20..7e60b53051 100644
--- a/meta-networking/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch
+++ b/meta-networking/recipes-support/libldb/libldb/avoid-openldap-unless-wanted.patch
@@ -1,16 +1,21 @@
-From 63570b98ef63c91d8508478fcbe6b89c90c8398f Mon Sep 17 00:00:00 2001
+From 226b75a0e9654fb3c0435256af5fed0178dc0d69 Mon Sep 17 00:00:00 2001
From: Jens Rehsack <rehsack@gmail.com>
Date: Thu, 19 Nov 2015 20:45:56 +0100
+Subject: [PATCH] avoid openldap unless wanted
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Jens Rehsack <rehsack@gmail.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
wscript | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/wscript b/wscript
-index e7c05d2..1633593 100644
+index 6bb0b37..8ee25b1 100644
--- a/wscript
+++ b/wscript
-@@ -161,9 +161,7 @@ def configure(conf):
+@@ -154,9 +154,7 @@ def configure(conf):
if conf.env.standalone_ldb:
conf.CHECK_XSLTPROC_MANPAGES()
@@ -21,3 +26,6 @@ index e7c05d2..1633593 100644
# we don't want any libraries or modules to rely on runtime
# resolution of symbols
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-conflict-type-error.patch b/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-conflict-type-error.patch
deleted file mode 100644
index 444fa3ff12..0000000000
--- a/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-conflict-type-error.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 5bd7b5d04435bd593349825973ce32290f5f604d Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Wed, 25 Jul 2018 09:55:25 +0800
-Subject: [PATCH] libldb: fix musl libc conflicting types error
-
-/third_party/cmocka/cmocka.h:126:28: error: conflicting types for 'uintptr_t'
- typedef unsigned int uintptr_t;
- ^~~~~~~~~
-use __DEFINED_uintptr_t in alltypes.h to check if uintptr already defined
-
-Upstream-Status: Pending
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- third_party/cmocka/cmocka.h | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/third_party/cmocka/cmocka.h b/third_party/cmocka/cmocka.h
-index 4fd82a9..5443a08 100644
---- a/third_party/cmocka/cmocka.h
-+++ b/third_party/cmocka/cmocka.h
-@@ -110,7 +110,7 @@ typedef uintmax_t LargestIntegralType;
- ((LargestIntegralType)(value))
-
- /* Smallest integral type capable of holding a pointer. */
--#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED)
-+#if !defined(__DEFINED_uintptr_t)
- # if defined(_WIN32)
- /* WIN32 is an ILP32 platform */
- typedef unsigned int uintptr_t;
-@@ -134,9 +134,8 @@ typedef uintmax_t LargestIntegralType;
- # endif /* __WORDSIZE */
- # endif /* _WIN32 */
-
--# define _UINTPTR_T
--# define _UINTPTR_T_DEFINED
--#endif /* !defined(_UINTPTR_T) || !defined(_UINTPTR_T_DEFINED) */
-+# define __DEFINED_uintptr_t
-+#endif /* !defined(__DEFINED_uintptr_t)
-
- /* Perform an unsigned cast to uintptr_t. */
- #define cast_to_pointer_integral_type(value) \
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-unkown-type-error.patch b/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-unkown-type-error.patch
deleted file mode 100644
index c0e7e8907d..0000000000
--- a/meta-networking/recipes-support/libldb/libldb/libldb-fix-musl-libc-unkown-type-error.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From d90534469c5c43bf2a97e5698a5ddb4b7471f92a Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 10:53:16 +0800
-Subject: [PATCH] libldb: fix musl libc unkoown type error
-
-tevent.h:1440:8: error: unknown type name 'pid_t'; did you mean 'div_t'?
- pid_t *pid,
- ^~~~~
- div_t
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- lib/tevent/tevent.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/lib/tevent/tevent.h b/lib/tevent/tevent.h
-index aa6fe0d..2572696 100644
---- a/lib/tevent/tevent.h
-+++ b/lib/tevent/tevent.h
-@@ -32,6 +32,8 @@
- #include <talloc.h>
- #include <sys/time.h>
- #include <stdbool.h>
-+#include <sys/stat.h>
-+#include <sys/types.h>
-
- struct tevent_context;
- struct tevent_ops;
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/libldb/libldb/run-ptest b/meta-networking/recipes-support/libldb/libldb/run-ptest
new file mode 100644
index 0000000000..f0de0578c4
--- /dev/null
+++ b/meta-networking/recipes-support/libldb/libldb/run-ptest
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+ptestdir=$(dirname "$(readlink -f "$0")")
+cd "$ptestdir"/tests || exit
+
+tests="test_ldb_dn test_ldb_qsort"
+
+for f in $tests
+do
+ if test -x ./"$f"; then
+ if ./"$f" > ./"$f".out 2> ./"$f".err; then
+ echo "PASS: $f"
+ else
+ echo "FAIL: $f"
+ fi
+ fi
+done
diff --git a/meta-networking/recipes-support/libldb/libldb_1.4.1.bb b/meta-networking/recipes-support/libldb/libldb_2.8.0.bb
index 3c7e5455e9..bdd87993d7 100644
--- a/meta-networking/recipes-support/libldb/libldb_1.4.1.bb
+++ b/meta-networking/recipes-support/libldb/libldb_2.8.0.bb
@@ -1,17 +1,19 @@
SUMMARY = "Hierarchical, reference counted memory pool system with destructors"
-HOMEPAGE = "http://ldb.samba.org"
+HOMEPAGE = "https://ldb.samba.org"
SECTION = "libs"
-LICENSE = "LGPL-3.0+ & LGPL-2.1+ & GPL-3.0+"
+LICENSE = "LGPL-3.0-or-later & LGPL-2.1-or-later & GPL-3.0-or-later"
-DEPENDS += "libtdb libtalloc libtevent popt"
-RDEPENDS_pyldb += "python samba"
+DEPENDS += "libtdb libtalloc libtevent popt cmocka"
+RDEPENDS:pyldb += "python3"
+
+export PYTHONHASHSEED="1"
+export PYTHONARCHDIR = "${PYTHON_SITEPACKAGES_DIR}"
SRC_URI = "http://samba.org/ftp/ldb/ldb-${PV}.tar.gz \
- file://do-not-import-target-module-while-cross-compile.patch \
- file://options-1.4.1.patch \
- file://0001-libldb-fix-config-error.patch \
- file://libldb-fix-musl-libc-unkown-type-error.patch \
- file://libldb-fix-musl-libc-conflict-type-error.patch \
+ file://0001-do-not-import-target-module-while-cross-compile.patch \
+ file://0002-ldb-Add-configure-options-for-packages.patch \
+ file://0003-Fix-pyext_PATTERN-for-cross-compilation.patch \
+ file://run-ptest \
"
PACKAGECONFIG ??= "\
@@ -21,10 +23,10 @@ PACKAGECONFIG ??= "\
PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
PACKAGECONFIG[ldap] = ",,openldap"
-PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio"
PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
+PACKAGECONFIG[lmdb] = ",--without-ldb-lmdb,lmdb,"
SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'ldap', '', 'file://avoid-openldap-unless-wanted.patch', d)}"
@@ -32,37 +34,54 @@ LIC_FILES_CHKSUM = "file://pyldb.h;endline=24;md5=dfbd238cecad76957f7f860fbe9ada
file://man/ldb.3.xml;beginline=261;endline=262;md5=137f9fd61040c1505d1aa1019663fd08 \
file://tools/ldbdump.c;endline=19;md5=a7d4fc5d1f75676b49df491575a86a42"
-SRC_URI[md5sum] = "159a1b1a56dcccf410d1bba911be6076"
-SRC_URI[sha256sum] = "2df13aa25b376b314ce24182c37691959019523de3cc5356c40c1a333b0890a2"
+SRC_URI[sha256sum] = "358dca10fcd27207ac857a0d7f435a46dbc6cd1f7c10dbb840c1931bf1965f08"
-inherit waf-samba distro_features_check
-REQUIRED_DISTRO_FEATURES = "pam"
+inherit pkgconfig waf-samba ptest
S = "${WORKDIR}/ldb-${PV}"
+# Cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+# to cross Popen
+export WAF_NO_PREFORK="yes"
+
EXTRA_OECONF += "--disable-rpath \
--disable-rpath-install \
- --bundled-libraries=cmocka \
+ --bundled-libraries=NONE \
--builtin-libraries=replace \
--with-modulesdir=${libdir}/ldb/modules \
--with-privatelibdir=${libdir}/ldb \
--with-libiconv=${STAGING_DIR_HOST}${prefix}\
- --without-ldb-lmdb \
"
PACKAGES =+ "pyldb pyldb-dbg pyldb-dev"
NOAUTOPACKAGEDEBUG = "1"
-FILES_${PN} += "${libdir}/ldb/*"
-FILES_${PN}-dbg += "${bindir}/.debug/* \
+FILES:${PN} += "${libdir}/ldb/*"
+FILES:${PN}-dbg += "${bindir}/.debug/* \
${libdir}/.debug/* \
${libdir}/ldb/.debug/* \
${libdir}/ldb/modules/ldb/.debug/*"
-FILES_pyldb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \
- ${libdir}/libpyldb-util.so.* \
+FILES:pyldb = "${PYTHON_SITEPACKAGES_DIR}/* \
+ ${libdir}/libpyldb-util.*.so.* \
"
-FILES_pyldb-dbg = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/.debug \
- ${libdir}/.debug/libpyldb-util.so.*"
-FILES_pyldb-dev = "${libdir}/libpyldb-util.so"
+FILES:pyldb-dbg = "${PYTHON_SITEPACKAGES_DIR}/.debug \
+ ${libdir}/.debug/libpyldb-util.*.so.*"
+FILES:pyldb-dev = "${libdir}/libpyldb-util.*.so"
+
+# Prevent third_party/waf/waflib/Configure.py checking host's path which is
+# incorrect for cross building.
+export PREFIX = "/"
+export LIBDIR = "${libdir}"
+export BINDIR = "${bindir}"
+
+do_configure:prepend() {
+ # For a clean rebuild
+ rm -fr bin/
+}
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ install -m 0755 ${B}/bin/test_ldb_* ${D}${PTEST_PATH}/tests/
+}
diff --git a/meta-networking/recipes-support/libmaxminddb/libmaxminddb_1.4.3.bb b/meta-networking/recipes-support/libmaxminddb/libmaxminddb_1.4.3.bb
new file mode 100644
index 0000000000..204148e638
--- /dev/null
+++ b/meta-networking/recipes-support/libmaxminddb/libmaxminddb_1.4.3.bb
@@ -0,0 +1,18 @@
+SUMMARY = "C library for the MaxMind DB file format"
+DESCRIPTION = "The libmaxminddb library provides a C library for reading MaxMind DB files, \
+ncluding the GeoIP2 databases from MaxMind. This is a custom binary \
+format designed to facilitate fast lookups of IP addresses while allowing \
+for great flexibility in the type of data associated with an address."
+
+HOMEPAGE = "https://github.com/maxmind/libmaxminddb"
+SECTION = "libs"
+LICENSE = " Apache-2.0"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+"
+SRC_URI = "https://github.com/maxmind/libmaxminddb/releases/download/${PV}/${BPN}-${PV}.tar.gz \
+"
+SRC_URI[sha256sum] = "a5fdf6c7b4880fdc7620f8ace5bd5cbe9f65650c9493034b5b9fc7d83551a439"
+
+inherit autotools-brokensep
+
diff --git a/meta-networking/recipes-support/libmemcached/files/0001-Fix-comparison-types.patch b/meta-networking/recipes-support/libmemcached/files/0001-Fix-comparison-types.patch
index 26b5e250cb..9e5121fed7 100644
--- a/meta-networking/recipes-support/libmemcached/files/0001-Fix-comparison-types.patch
+++ b/meta-networking/recipes-support/libmemcached/files/0001-Fix-comparison-types.patch
@@ -8,6 +8,8 @@ error: comparison between pointer and integer ('char *' and 'int')
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
clients/memflush.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta-networking/recipes-support/libmemcached/files/0001-configure.ac-Do-not-configure-build-aux.patch b/meta-networking/recipes-support/libmemcached/files/0001-configure.ac-Do-not-configure-build-aux.patch
index 06febc5b13..1c1d814b50 100644
--- a/meta-networking/recipes-support/libmemcached/files/0001-configure.ac-Do-not-configure-build-aux.patch
+++ b/meta-networking/recipes-support/libmemcached/files/0001-configure.ac-Do-not-configure-build-aux.patch
@@ -8,6 +8,8 @@ configure: error: cannot find install-sh, install.sh, or shtool
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
configure.ac | 1 -
1 file changed, 1 deletion(-)
diff --git a/meta-networking/recipes-support/libmemcached/files/0002-POSIX_SPAWN_USEVFORK-is-not-linux-specific-but-glibc.patch b/meta-networking/recipes-support/libmemcached/files/0002-POSIX_SPAWN_USEVFORK-is-not-linux-specific-but-glibc.patch
index e1e1be8c68..4d38fe452e 100644
--- a/meta-networking/recipes-support/libmemcached/files/0002-POSIX_SPAWN_USEVFORK-is-not-linux-specific-but-glibc.patch
+++ b/meta-networking/recipes-support/libmemcached/files/0002-POSIX_SPAWN_USEVFORK-is-not-linux-specific-but-glibc.patch
@@ -9,6 +9,8 @@ cmdline.cc:206:12: error: use of undeclared identifier 'POSIX_SPAWN_USEVFORK'
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
libtest/cmdline.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta-networking/recipes-support/libmemcached/files/crosscompile.patch b/meta-networking/recipes-support/libmemcached/files/crosscompile.patch
index 63511bff5f..441b8d4177 100644
--- a/meta-networking/recipes-support/libmemcached/files/crosscompile.patch
+++ b/meta-networking/recipes-support/libmemcached/files/crosscompile.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Pending
+
libmemcached/backtrace.cc | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/meta-networking/recipes-support/libmemcached/libmemcached.inc b/meta-networking/recipes-support/libmemcached/libmemcached.inc
index e86f832f8d..319ab29ce7 100644
--- a/meta-networking/recipes-support/libmemcached/libmemcached.inc
+++ b/meta-networking/recipes-support/libmemcached/libmemcached.inc
@@ -1,11 +1,13 @@
DESCRIPTION = "open source C/C++ client library and tools for the memcached server"
DEPENDS = "libevent util-linux"
SECTION = "libdevel"
-LICENSE = "BSD"
+LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=865490941c91ba790f0ea78dec93bd60"
SRC_URI = "http://launchpad.net/libmemcached/1.0/${PV}/+download/libmemcached-${PV}.tar.gz"
+UPSTREAM_CHECK_URI = "https://launchpad.net/libmemcached"
+
TARGET_LDFLAGS += "-luuid"
TARGET_CFLAGS += "-D__USE_GNU -D_GNU_SOURCE"
diff --git a/meta-networking/recipes-support/libosip2/libosip2_5.3.1.bb b/meta-networking/recipes-support/libosip2/libosip2_5.3.1.bb
new file mode 100644
index 0000000000..fa99d33e1c
--- /dev/null
+++ b/meta-networking/recipes-support/libosip2/libosip2_5.3.1.bb
@@ -0,0 +1,15 @@
+SUMMARY = "The GNU oSIP library is an implementation of SIP - rfc3261"
+DESCRIPTION = "SIP stands for the Session Initiation Protocol and is described \
+by the rfc3261 (wich deprecates rfc2543). This library aims to provide multimedia \
+and telecom software developers an easy and powerful interface to initiate and \
+control SIP based sessions in their applications. SIP is a open standard \
+replacement from IETF for H323."
+HOMEPAGE = "http://www.gnu.org/software/osip/osip.html"
+SECTION = "libs"
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://src/osip2/osip.c;beginline=1;endline=19;md5=22ca0da0e41276c50c81b733953c208d"
+
+SRC_URI = "${GNU_MIRROR}/osip/${BPN}-${PV}.tar.gz"
+SRC_URI[sha256sum] = "fe82fe841608266ac15a5c1118216da00c554d5006e2875a8ac3752b1e6adc79"
+
+inherit autotools
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch b/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch
index df45d36e96..6c92beb30b 100644
--- a/meta-networking/recipes-support/libtalloc/libtalloc/options-2.1.14.patch
+++ b/meta-networking/recipes-support/libtalloc/libtalloc/0001-talloc-Add-configure-options-for-packages.patch
@@ -1,12 +1,11 @@
-From 319a2a1bb46ae35fa9d66878cb08285035f0bd5f Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Thu, 19 Jul 2018 15:41:31 +0800
+From 18e3d62f5c8f957acc45695cb99c24510d23b457 Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@cn.fujitsu.com>
+Date: Fri, 25 Dec 2020 14:14:08 +0900
Subject: [PATCH] talloc: Add configure options for packages
Add configure options for the following packages:
- acl
- attr
- - libaio
- libbsd
- libcap
- valgrind
@@ -19,22 +18,28 @@ Modified to apply to version 2.1.10.
Signed-off-by: Joe Slater <joe.slater@windriver.com>
-Modified tp apply to version 2.1.14
+Modified tp apply to version 2.2.0
Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+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 | 90 +++++++++++++++++++++++++++++++++++++++++------------
- wscript | 7 +++++
- 2 files changed, 77 insertions(+), 20 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 fd00a42..a77c058 100644
+index 77e655b..2fd7dfb 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
-@@ -22,6 +22,41 @@ def set_options(opt):
- opt.BUILTIN_DEFAULT('NONE')
+@@ -25,6 +25,34 @@ def options(opt):
opt.PRIVATE_EXTENSION_DEFAULT('')
opt.RECURSE('buildtools/wafsamba')
-+
+
+ opt.add_option('--with-acl',
+ help=("Enable use of acl"),
+ action="store_true", dest='enable_acl')
@@ -49,13 +54,6 @@ index fd00a42..a77c058 100644
+ help=("Disable use of attr"),
+ action="store_false", dest='enable_attr', default=False)
+
-+ opt.add_option('--with-libaio',
-+ help=("Enable use of libaio"),
-+ action="store_true", dest='enable_libaio')
-+ opt.add_option('--without-libaio',
-+ help=("Disable use of libaio"),
-+ action="store_false", dest='enable_libaio', default=False)
-+
+ opt.add_option('--with-libbsd',
+ help=("Enable use of libbsd"),
+ action="store_true", dest='enable_libbsd')
@@ -69,52 +67,55 @@ index fd00a42..a77c058 100644
+ opt.add_option('--without-libcap',
+ help=("Disable use of libcap"),
+ action="store_false", dest='enable_libcap', default=False)
-
++
@Utils.run_once
def configure(conf):
-@@ -32,12 +67,25 @@ def configure(conf):
+ conf.RECURSE('buildtools/wafsamba')
+@@ -38,18 +66,27 @@ def configure(conf):
conf.DEFINE('HAVE_LIBREPLACE', 1)
conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
- conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
- conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
-+ conf.CHECK_HEADERS('attr/xattr.h compat.h ctype.h dustat.h')
++ conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
-- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
- conf.CHECK_HEADERS('shadow.h sys/acl.h')
- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
-+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('shadow.h')
+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
-+
+ conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
+ conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+ conf.CHECK_HEADERS('sys/resource.h sys/security.h sys/shm.h sys/statfs.h sys/statvfs.h sys/termio.h')
+ conf.CHECK_HEADERS('sys/vfs.h sys/xattr.h termio.h termios.h sys/file.h')
+ conf.CHECK_HEADERS('sys/ucontext.h sys/wait.h sys/stat.h')
+
+ if Options.options.enable_acl:
+ conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
+
+ if Options.options.enable_attr:
+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
+
-+ if Options.options.enable_libaio:
-+ conf.CHECK_HEADERS('libaio.h')
-+
+ if Options.options.enable_libcap:
+ conf.CHECK_HEADERS('sys/capability.h')
+
- conf.CHECK_HEADERS('port.h')
- conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
- conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -108,7 +156,9 @@ def configure(conf):
+ if not conf.CHECK_DECLS('malloc', headers='stdlib.h'):
+ conf.CHECK_HEADERS('malloc.h')
+
+@@ -113,8 +150,9 @@ def configure(conf):
conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
-- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
+ if Options.options.enable_valgrind:
-+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
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')
-@@ -342,20 +392,20 @@ def configure(conf):
+@@ -443,31 +481,31 @@ def configure(conf):
strlcpy_in_bsd = False
@@ -123,6 +124,17 @@ index fd00a42..a77c058 100644
- 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'):
@@ -138,6 +150,17 @@ index fd00a42..a77c058 100644
+ 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'):
@@ -150,23 +173,23 @@ index fd00a42..a77c058 100644
conf.CHECK_CODE('''
struct ucred cred;
diff --git a/wscript b/wscript
-index 18f726e..fed8ab9 100644
+index 8b5e02d..b6e2614 100644
--- a/wscript
+++ b/wscript
-@@ -32,6 +32,13 @@ def set_options(opt):
+@@ -31,7 +31,12 @@ def options(opt):
opt.add_option('--enable-talloc-compat1',
help=("Build talloc 1.x.x compat library [False]"),
action="store_true", dest='TALLOC_COMPAT1', default=False)
+-
+ opt.add_option('--with-valgrind',
+ help=("enable use of valgrind"),
+ action="store_true", dest='enable_valgrind')
+ opt.add_option('--without-valgrind',
+ help=("disable use of valgrind"),
+ action="store_false", dest='enable_valgrind', default=False)
-+
-
def configure(conf):
+ conf.RECURSE('lib/replace')
--
-2.7.4
+2.34.1
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/0002-Fix-pyext_PATTERN-for-cross-compilation.patch b/meta-networking/recipes-support/libtalloc/libtalloc/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
new file mode 100644
index 0000000000..59461412a6
--- /dev/null
+++ b/meta-networking/recipes-support/libtalloc/libtalloc/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
@@ -0,0 +1,57 @@
+From 843d1dc810efc61275b1121d6b35649d00570851 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Nov 2021 13:33:35 +0800
+Subject: [PATCH] Fix pyext_PATTERN for cross compilation
+
+The pyext_PATTERN will add native arch as suffix when cross compiling.
+For example, on qemuarm64, it is expanded to:
+pyext_PATTERN ='%s.cpython-310-x86_64-linux-gnu.so'
+which will result in the incorrect library name.
+
+root@qemuarm64:~# find /usr/lib -name \*talloc\*
+/usr/lib/pkgconfig/talloc.pc
+/usr/lib/pkgconfig/pytalloc-util.cpython-310-x86_64-linux-gnu.pc
+/usr/lib/libpytalloc-util.cpython-310-x86-64-linux-gnu.so.2.3.3
+/usr/lib/libtalloc.so.2
+/usr/lib/libpytalloc-util.cpython-310-x86-64-linux-gnu.so.2
+/usr/lib/libpytalloc-util.cpython-310-x86-64-linux-gnu.so
+/usr/lib/libtalloc.so
+/usr/lib/libtalloc.so.2.3.3
+/usr/lib/python3.10/site-packages/talloc.cpython-310-x86_64-linux-gnu.so
+
+Set pyext_PATTERN to '%s.so' to remove the suffix.
+After the patch:
+root@qemuarm64:~# find /usr/lib -name \*talloc\*
+/usr/lib/pkgconfig/talloc.pc
+/usr/lib/pkgconfig/pytalloc-util.pc
+/usr/lib/libpytalloc-util.so.2.3.3
+/usr/lib/libtalloc.so.2
+/usr/lib/libpytalloc-util.so.2
+/usr/lib/libpytalloc-util.so
+/usr/lib/libtalloc.so
+/usr/lib/libtalloc.so.2.3.3
+/usr/lib/python3.10/site-packages/talloc.so
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ third_party/waf/waflib/Tools/python.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/waf/waflib/Tools/python.py b/third_party/waf/waflib/Tools/python.py
+index b2dd1a9..2bd3545 100644
+--- a/third_party/waf/waflib/Tools/python.py
++++ b/third_party/waf/waflib/Tools/python.py
+@@ -339,7 +339,7 @@ def check_python_headers(conf, features='pyembed pyext'):
+ x = 'MACOSX_DEPLOYMENT_TARGET'
+ if dct[x]:
+ env[x] = conf.environ[x] = str(dct[x])
+- env.pyext_PATTERN = '%s' + (dct['EXT_SUFFIX'] or dct['SO']) # SO is deprecated in 3.5 and removed in 3.11
++ env.pyext_PATTERN = '%s.so'
+
+
+ # Try to get pythonX.Y-config
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/avoid-attr-unless-wanted.patch b/meta-networking/recipes-support/libtalloc/libtalloc/avoid-attr-unless-wanted.patch
index db3ddce2c1..93c8a1e846 100644
--- a/meta-networking/recipes-support/libtalloc/libtalloc/avoid-attr-unless-wanted.patch
+++ b/meta-networking/recipes-support/libtalloc/libtalloc/avoid-attr-unless-wanted.patch
@@ -1,6 +1,18 @@
---- a/lib/replace/wscript 2015-11-13 16:04:04.000000000 +0100
-+++ b/lib/replace/wscript 2015-11-13 16:23:20.000000000 +0100
-@@ -837,8 +837,6 @@ def build(bld):
+From 9130d340c37861a59e812e334e2b13577e705a6c Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@cn.fujitsu.com>
+Date: Fri, 25 Dec 2020 15:10:58 +0900
+Subject: [PATCH] avoid attr unless wanted
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ lib/replace/wscript | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index 3593eaf..504a1cb 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -968,8 +968,6 @@ def build(bld):
if not bld.CONFIG_SET('HAVE_INET_ATON'): REPLACE_SOURCE += ' inet_aton.c'
if not bld.CONFIG_SET('HAVE_INET_NTOP'): REPLACE_SOURCE += ' inet_ntop.c'
if not bld.CONFIG_SET('HAVE_INET_PTON'): REPLACE_SOURCE += ' inet_pton.c'
@@ -9,12 +21,15 @@
if not bld.CONFIG_SET('HAVE_CLOSEFROM'):
REPLACE_SOURCE += ' closefrom.c'
-@@ -852,7 +850,7 @@ def build(bld):
- # at the moment:
+@@ -984,7 +982,7 @@ def build(bld):
# hide_symbols=bld.BUILTIN_LIBRARY('replace'),
private_library=True,
-- deps='crypt dl nsl socket rt attr' + extra_libs)
-+ deps='crypt dl nsl socket rt ' + extra_libs)
+ provide_builtin_linking=True,
+- deps='dl attr' + extra_libs)
++ deps='dl' + extra_libs)
- replace_test_cflags="-Wno-format-zero-length"
+ replace_test_cflags = ''
if bld.CONFIG_SET('HAVE_WNO_FORMAT_TRUNCATION'):
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/run-ptest b/meta-networking/recipes-support/libtalloc/libtalloc/run-ptest
new file mode 100644
index 0000000000..84e5381501
--- /dev/null
+++ b/meta-networking/recipes-support/libtalloc/libtalloc/run-ptest
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+ptestdir=$(dirname "$(readlink -f "$0")")
+cd "$ptestdir"/tests || exit
+
+tests="replace_testsuite talloc_testsuite"
+
+for f in $tests
+do
+ if test -x ./"$f"; then
+ if ./"$f" > ./"$f".out 2> ./"$f".err; then
+ echo "PASS: $f"
+ else
+ echo "FAIL: $f"
+ fi
+ fi
+done
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb b/meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb
index 9a463a6dcf..b617f097cf 100644
--- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.14.bb
+++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.4.2.bb
@@ -1,18 +1,22 @@
SUMMARY = "Hierarchical, reference counted memory pool system with destructors"
-HOMEPAGE = "http://talloc.samba.org"
+HOMEPAGE = "https://talloc.samba.org"
SECTION = "libs"
-LICENSE = "LGPL-3.0+ & GPL-3.0+"
+LICENSE = "LGPL-3.0-or-later & GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://talloc.h;beginline=3;endline=27;md5=a301712782cad6dd6d5228bfa7825249 \
- file://pytalloc.h;beginline=1;endline=18;md5=2c498cc6f2263672483237b20f46b43d"
+ file://pytalloc.h;beginline=1;endline=18;md5=21ab13bd853679d7d47a1739cb3b7db6 \
+ "
+export PYTHONHASHSEED="1"
+export PYTHONARCHDIR = "${PYTHON_SITEPACKAGES_DIR}"
-SRC_URI = "https://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
- file://options-2.1.14.patch \
+SRC_URI = "https://www.samba.org/ftp/talloc/talloc-${PV}.tar.gz \
+ file://0001-talloc-Add-configure-options-for-packages.patch \
+ file://0002-Fix-pyext_PATTERN-for-cross-compilation.patch \
+ file://run-ptest \
"
-SRC_URI[md5sum] = "7478da02e309316231a497a9f17a980d"
-SRC_URI[sha256sum] = "b185602756a628bac507fa8af8b9df92ace69d27c0add5dab93190ad7c3367ce"
+SRC_URI[sha256sum] = "85ecf9e465e20f98f9950a52e9a411e14320bc555fa257d87697b7e7a9b1d8a6"
-inherit waf-samba
+inherit waf-samba pkgconfig ptest
PACKAGECONFIG ??= "\
${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
@@ -20,7 +24,6 @@ PACKAGECONFIG ??= "\
"
PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
-PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio"
PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
@@ -29,6 +32,10 @@ SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr
S = "${WORKDIR}/talloc-${PV}"
+# Cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+# to cross Popen
+export WAF_NO_PREFORK="yes"
+
EXTRA_OECONF += "--disable-rpath \
--disable-rpath-install \
--bundled-libraries=NONE \
@@ -37,13 +44,18 @@ EXTRA_OECONF += "--disable-rpath \
--with-libiconv=${STAGING_DIR_HOST}${prefix}\
"
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ install -m 0755 ${B}/bin/*_testsuite ${D}${PTEST_PATH}/tests/
+}
+
PACKAGES += "pytalloc pytalloc-dev"
-RPROVIDES_${PN}-dbg += "pytalloc-dbg"
+RPROVIDES:${PN}-dbg += "pytalloc-dbg"
-FILES_pytalloc = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/* \
+FILES:pytalloc = "${PYTHON_SITEPACKAGES_DIR}/* \
${libdir}/libpytalloc-util.so.2 \
${libdir}/libpytalloc-util.so.2.1.1 \
"
-FILES_pytalloc-dev = "${libdir}/libpytalloc-util.so"
-RDEPENDS_pytalloc = "python"
+FILES:pytalloc-dev = "${libdir}/libpytalloc-util.so"
+RDEPENDS:pytalloc = "python3"
diff --git a/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch b/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch
index 357afbea5b..5c811c4686 100644
--- a/meta-networking/recipes-support/libldb/libldb/options-1.4.1.patch
+++ b/meta-networking/recipes-support/libtdb/libtdb/0001-tdb-Add-configure-options-for-packages.patch
@@ -1,12 +1,11 @@
-From ffffd29bc6303d60b3d77048fbbf6776f6fbbe01 Mon Sep 17 00:00:00 2001
+From 613cfb43622f0138edfcf3ad7a8fecc568e17db4 Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 19 Jul 2018 16:40:31 +0800
-Subject: [PATCH] ldb: Add configure options for packages
+Date: Wed, 19 Jun 2019 17:53:34 +0800
+Subject: [PATCH] tdb: Add configure options for packages
Add configure options for the following packages:
- acl
- attr
- - libaio
- libbsd
- libcap
- valgrind
@@ -15,24 +14,26 @@ Upstream-Status: Inappropriate [oe deterministic build specific]
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
-Update to version 1.4.1, and fix one configure error
+Update to 1.4.0
-Cross answers file cross-answers-i586.txt is incomplete with
-"Checking for a 64-bit host to support lmdb: UNKNOWN"
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
-we don't support lmdb, so only check when lmdb is support
+Rebase to 1.4.9
+Remove libaio option
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
+Rebase to 1.4.10
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
---
- lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++-------------
- wscript | 6 ++++
- 2 files changed, 77 insertions(+), 23 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 fd00a42..434192e 100644
+index 77e655b..e6d50b3 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
-@@ -23,6 +23,41 @@ def set_options(opt):
+@@ -25,6 +25,34 @@ def options(opt):
opt.PRIVATE_EXTENSION_DEFAULT('')
opt.RECURSE('buildtools/wafsamba')
@@ -50,13 +51,6 @@ index fd00a42..434192e 100644
+ help=("Disable use of attr"),
+ action="store_false", dest='enable_attr', default=False)
+
-+ opt.add_option('--with-libaio',
-+ help=("Enable use of libaio"),
-+ action="store_true", dest='enable_libaio')
-+ opt.add_option('--without-libaio',
-+ help=("Disable use of libaio"),
-+ action="store_false", dest='enable_libaio', default=False)
-+
+ opt.add_option('--with-libbsd',
+ help=("Enable use of libbsd"),
+ action="store_true", dest='enable_libbsd')
@@ -74,7 +68,7 @@ index fd00a42..434192e 100644
@Utils.run_once
def configure(conf):
conf.RECURSE('buildtools/wafsamba')
-@@ -32,12 +67,25 @@ def configure(conf):
+@@ -38,12 +66,21 @@ def configure(conf):
conf.DEFINE('HAVE_LIBREPLACE', 1)
conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
@@ -83,50 +77,55 @@ index fd00a42..434192e 100644
+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
+ conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
-- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
- conf.CHECK_HEADERS('shadow.h sys/acl.h')
- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
-+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('shadow.h')
+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
-+
+ if Options.options.enable_acl:
+ conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
+
+ if Options.options.enable_attr:
+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
+
-+ if Options.options.enable_libaio:
-+ conf.CHECK_HEADERS('libaio.h')
-+
+ if Options.options.enable_libcap:
+ conf.CHECK_HEADERS('sys/capability.h')
+
- conf.CHECK_HEADERS('port.h')
- conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+ conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -108,7 +156,9 @@ def configure(conf):
+ conf.CHECK_HEADERS('sys/resource.h sys/security.h sys/shm.h sys/statfs.h sys/statvfs.h sys/termio.h')
+@@ -113,8 +150,9 @@ def configure(conf):
conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
-- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
+ if Options.options.enable_valgrind:
-+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
-+
++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
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')
-@@ -340,22 +390,20 @@ def configure(conf):
+@@ -443,31 +481,32 @@ def configure(conf):
- conf.CHECK_FUNCS('prctl dirname basename')
+ strlcpy_in_bsd = False
-- strlcpy_in_bsd = False
--
- # libbsd on some platforms provides strlcpy and strlcat
- if not conf.CHECK_FUNCS('strlcpy strlcat'):
- 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'):
@@ -139,8 +138,20 @@ index fd00a42..434192e 100644
+ if Options.options.enable_libbsd:
+ # libbsd on some platforms provides strlcpy and strlcat
+ if not conf.CHECK_FUNCS('strlcpy strlcat'):
-+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
-+ checklibc=True)
++ 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'):
@@ -153,22 +164,13 @@ index fd00a42..434192e 100644
conf.CHECK_CODE('''
struct ucred cred;
-@@ -699,7 +747,7 @@ def configure(conf):
- # look for a method of finding the list of network interfaces
- for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']:
- bsd_for_strlcpy = ''
-- if strlcpy_in_bsd:
-+ if Options.options.enable_libbsd:
- bsd_for_strlcpy = ' bsd'
- if conf.CHECK_CODE('''
- #define %s 1
diff --git a/wscript b/wscript
-index ad91bc6..2d20fee 100644
+index 2c587fb..b2164b2 100644
--- a/wscript
+++ b/wscript
-@@ -36,6 +36,12 @@ def set_options(opt):
- help='disable new LMDB backend for LDB',
- action='store_true', dest='without_ldb_lmdb', default=False)
+@@ -69,6 +69,12 @@ def options(opt):
+ action="store_true", dest='disable_tdb_mutex_locking',
+ default=False)
+ opt.add_option('--with-valgrind',
+ help=("enable use of valgrind"),
@@ -178,7 +180,7 @@ index ad91bc6..2d20fee 100644
+ action="store_false", dest='enable_valgrind', default=False)
def configure(conf):
- conf.RECURSE('lib/tdb')
+ conf.env.disable_tdb_mutex_locking = getattr(Options.options,
--
-2.7.4
+2.34.1
diff --git a/meta-networking/recipes-support/libtdb/libtdb/0002-Fix-pyext_PATTERN-for-cross-compilation.patch b/meta-networking/recipes-support/libtdb/libtdb/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
new file mode 100644
index 0000000000..00ec8a4775
--- /dev/null
+++ b/meta-networking/recipes-support/libtdb/libtdb/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
@@ -0,0 +1,42 @@
+From de39c696a62894fd9c6626d3e2931e42e3407be5 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Nov 2021 13:33:35 +0800
+Subject: [PATCH] Fix pyext_PATTERN for cross compilation
+
+The pyext_PATTERN will add native arch as suffix when cross compiling.
+For example, on qemuarm64, it is expanded to:
+pyext_PATTERN ='%s.cpython-310-x86_64-linux-gnu.so'
+which will result in the incorrect library name.
+
+root@qemuarm64:~# find /usr/lib/python3.10/ -name tdb\*
+/usr/lib/python3.10/site-packages/tdb.so
+/usr/lib/python3.10/site-packages/tdb.cpython-310-x86_64-linux-gnu.so
+
+Set pyext_PATTERN to '%s.so' to remove the suffix.
+After the patch:
+root@qemuarm64:~# find /usr/lib/python3.10/ -name tdb\*
+/usr/lib/python3.10/site-packages/tdb.so
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ third_party/waf/waflib/Tools/python.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/waf/waflib/Tools/python.py b/third_party/waf/waflib/Tools/python.py
+index b2dd1a9..2bd3545 100644
+--- a/third_party/waf/waflib/Tools/python.py
++++ b/third_party/waf/waflib/Tools/python.py
+@@ -339,7 +339,7 @@ def check_python_headers(conf, features='pyembed pyext'):
+ x = 'MACOSX_DEPLOYMENT_TARGET'
+ if dct[x]:
+ env[x] = conf.environ[x] = str(dct[x])
+- env.pyext_PATTERN = '%s' + (dct['EXT_SUFFIX'] or dct['SO']) # SO is deprecated in 3.5 and removed in 3.11
++ env.pyext_PATTERN = '%s.so'
+
+
+ # Try to get pythonX.Y-config
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch b/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch
deleted file mode 100644
index bcc45c9fc3..0000000000
--- a/meta-networking/recipes-support/libtdb/libtdb/do-not-check-xsltproc-manpages.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Don't check manpages for xsltproc.
-
-Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
-
---- tdb-1.3.0.orig/wscript 2015-04-22 09:52:32.366000222 +0900
-+++ tdb-1.3.0/wscript 2015-04-22 09:51:57.720000205 +0900
-@@ -90,7 +90,7 @@ def configure(conf):
- not conf.env.disable_tdb_mutex_locking):
- conf.define('USE_TDB_MUTEX_LOCKING', 1)
-
-- conf.CHECK_XSLTPROC_MANPAGES()
-+ conf.find_program('xsltproc', var='XSLTPROC')
-
- if not conf.env.disable_python:
- # also disable if we don't have the python libs installed
diff --git a/meta-networking/recipes-support/libtdb/libtdb/run-ptest b/meta-networking/recipes-support/libtdb/libtdb/run-ptest
new file mode 100644
index 0000000000..7bc56f77c0
--- /dev/null
+++ b/meta-networking/recipes-support/libtdb/libtdb/run-ptest
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+ptestdir=$(dirname "$(readlink -f "$0")")
+cd "$ptestdir"/tests || exit
+
+tests=$(find * -type f -name 'tdb1-*')
+
+for f in replace_testsuite $tests
+do
+ if test -x ./"$f"; then
+ if ./"$f" > ./"$f".out 2> ./"$f".err; then
+ echo "PASS: $f"
+ else
+ echo "FAIL: $f"
+ fi
+ fi
+done
diff --git a/meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb b/meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb
deleted file mode 100644
index 0579ed6e3b..0000000000
--- a/meta-networking/recipes-support/libtdb/libtdb_1.3.16.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-SUMMARY = "The tdb library"
-HOMEPAGE = "http://tdb.samba.org/"
-SECTION = "libs"
-LICENSE = "LGPL-3.0+ & GPL-3.0+"
-
-LIC_FILES_CHKSUM = "file://tools/tdbdump.c;endline=18;md5=b59cd45aa8624578126a8c98f48018c4 \
- file://include/tdb.h;endline=27;md5=f5bb544641d3081821bcc1dd58310be6"
-
-SRC_URI = "https://samba.org/ftp/tdb/tdb-${PV}.tar.gz \
- file://do-not-check-xsltproc-manpages.patch \
- file://tdb-Add-configure-options-for-packages.patch \
-"
-
-SRC_URI[md5sum] = "7d06d8709188e07df853d9e91db88927"
-SRC_URI[sha256sum] = "6a3fc2616567f23993984ada3cea97d953a27669ffd1bfbbe961f26e0cf96cc5"
-
-PACKAGECONFIG ??= "\
- ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
-"
-PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
-PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
-PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio"
-PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
-PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
-PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
-
-S = "${WORKDIR}/tdb-${PV}"
-
-inherit waf-samba
-
-EXTRA_OECONF += "--disable-rpath \
- --bundled-libraries=NONE \
- --builtin-libraries=replace \
- --with-libiconv=${STAGING_DIR_HOST}${prefix}\
- "
-
-PACKAGES += "tdb-tools python-tdb"
-
-RPROVIDES_${PN}-dbg += "python-tdb-dbg"
-
-FILES_${PN} = "${libdir}/*.so.*"
-FILES_tdb-tools = "${bindir}/*"
-FILES_python-tdb = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
-RDEPENDS_python-tdb = "python"
diff --git a/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb b/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb
new file mode 100644
index 0000000000..bd3f9f63a9
--- /dev/null
+++ b/meta-networking/recipes-support/libtdb/libtdb_1.4.10.bb
@@ -0,0 +1,63 @@
+SUMMARY = "The tdb library"
+HOMEPAGE = "https://tdb.samba.org/"
+SECTION = "libs"
+LICENSE = "LGPL-3.0-or-later & GPL-3.0-or-later"
+
+LIC_FILES_CHKSUM = "file://tools/tdbdump.c;endline=18;md5=b59cd45aa8624578126a8c98f48018c4 \
+ file://include/tdb.h;endline=27;md5=f5bb544641d3081821bcc1dd58310be6"
+
+export PYTHONHASHSEED="1"
+export PYTHONARCHDIR = "${PYTHON_SITEPACKAGES_DIR}"
+
+SRC_URI = "https://samba.org/ftp/tdb/tdb-${PV}.tar.gz \
+ file://0001-tdb-Add-configure-options-for-packages.patch \
+ file://0002-Fix-pyext_PATTERN-for-cross-compilation.patch \
+ file://run-ptest \
+"
+
+SRC_URI[sha256sum] = "02338e33c16c21c9e29571cef523e76b2b708636254f6f30c6cf195d48c62daf"
+
+PACKAGECONFIG ??= "\
+ ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+
+PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
+PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
+PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
+PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
+PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
+
+S = "${WORKDIR}/tdb-${PV}"
+
+inherit waf-samba pkgconfig ptest
+
+# Cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+# to cross Popen
+export WAF_NO_PREFORK="yes"
+
+EXTRA_OECONF += "--disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=NONE \
+ --builtin-libraries=replace \
+ --with-libiconv=${STAGING_DIR_HOST}${prefix}\
+ "
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ install -m 0755 ${B}/bin/tdb1-* ${D}${PTEST_PATH}/tests/
+ install -m 0755 ${B}/bin/replace_testsuite ${D}${PTEST_PATH}/tests/
+ install -d ${D}${PTEST_PATH}/tests/test
+ install -m 0644 ${B}/test/*.tdb ${D}${PTEST_PATH}/tests/test/
+ install -m 0644 ${B}/test/*.corrupt ${D}${PTEST_PATH}/tests/test/
+}
+
+PACKAGES += "tdb-tools python3-tdb"
+
+RPROVIDES:${PN}-dbg += "python3-tdb-dbg"
+
+FILES:${PN} = "${libdir}/*.so.*"
+FILES:tdb-tools = "${bindir}/*"
+FILES:python3-tdb = "${PYTHON_SITEPACKAGES_DIR}/*"
+RDEPENDS:python3-tdb = "python3"
+INSANE_SKIP:${MLPREFIX}python3-tdb = "dev-so"
diff --git a/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch b/meta-networking/recipes-support/libtevent/libtevent/0001-Add-configure-options-for-packages.patch
index 363c5867cc..7fdeec61f4 100644
--- a/meta-networking/recipes-support/libtevent/libtevent/options-0.9.36.patch
+++ b/meta-networking/recipes-support/libtevent/libtevent/0001-Add-configure-options-for-packages.patch
@@ -1,12 +1,11 @@
-From c3e2e4f89cf37b27609fd02ad67eb02d0015cc1e Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Wed, 21 Sep 2016 09:57:49 +0800
-Subject: [PATCH 1/1] tevent: Add configure options for packages
+From c2241d7a1371ece3b89dfdad4861dcf0a152d5d4 Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@cn.fujitsu.com>
+Date: Fri, 25 Dec 2020 15:03:17 +0900
+Subject: [PATCH] Add configure options for packages
Add configure options for the following packages:
- acl
- attr
- - libaio
- libbsd
- libcap
- valgrind
@@ -18,16 +17,26 @@ Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Modified to apply to version 0.9.33.
Signed-off-by: Joe Slater <joe.slater@windriver.com>
+
+Update patch to version 0.10.0
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
+Update patch to version 0.14.1
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
+
+Rebase to 0.16.0
+Remove libaio option
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
- lib/replace/wscript | 89 ++++++++++++++++++++++++++++++++++++++++-------------
- wscript | 7 ++++-
- 2 files changed, 73 insertions(+), 23 deletions(-)
+ lib/replace/wscript | 100 +++++++++++++++++++++++++++++++-------------
+ wscript | 6 +++
+ 2 files changed, 77 insertions(+), 29 deletions(-)
diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 2c638b7..079761d 100644
+index 77e655b..452c741 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
-@@ -23,6 +23,41 @@ def set_options(opt):
+@@ -25,6 +25,34 @@ def options(opt):
opt.PRIVATE_EXTENSION_DEFAULT('')
opt.RECURSE('buildtools/wafsamba')
@@ -45,13 +54,6 @@ index 2c638b7..079761d 100644
+ help=("Disable use of attr"),
+ action="store_false", dest='enable_attr', default=False)
+
-+ opt.add_option('--with-libaio',
-+ help=("Enable use of libaio"),
-+ action="store_true", dest='enable_libaio')
-+ opt.add_option('--without-libaio',
-+ help=("Disable use of libaio"),
-+ action="store_false", dest='enable_libaio', default=False)
-+
+ opt.add_option('--with-libbsd',
+ help=("Enable use of libbsd"),
+ action="store_true", dest='enable_libbsd')
@@ -69,7 +71,7 @@ index 2c638b7..079761d 100644
@Utils.run_once
def configure(conf):
conf.RECURSE('buildtools/wafsamba')
-@@ -32,12 +67,25 @@ def configure(conf):
+@@ -38,12 +66,24 @@ def configure(conf):
conf.DEFINE('HAVE_LIBREPLACE', 1)
conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
@@ -78,10 +80,9 @@ index 2c638b7..079761d 100644
+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
+ conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
-- conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
-- conf.CHECK_HEADERS('shadow.h sys/acl.h')
-- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
-+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
+ conf.CHECK_HEADERS('shadow.h sys/acl.h')
+ conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
+ conf.CHECK_HEADERS('shadow.h')
+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
+
@@ -91,77 +92,90 @@ index 2c638b7..079761d 100644
+ if Options.options.enable_attr:
+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
+
-+ if Options.options.enable_libaio:
-+ conf.CHECK_HEADERS('libaio.h')
-+
+ if Options.options.enable_libcap:
+ conf.CHECK_HEADERS('sys/capability.h')
+
- conf.CHECK_HEADERS('port.h')
- conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+ conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h')
conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
-@@ -101,7 +149,8 @@ def configure(conf):
+ conf.CHECK_HEADERS('sys/resource.h sys/security.h sys/shm.h sys/statfs.h sys/statvfs.h sys/termio.h')
+@@ -113,8 +153,9 @@ def configure(conf):
conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h')
conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h')
-- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
+- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
+- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
+ if Options.options.enable_valgrind:
-+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h')
++ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h valgrind/callgrind.h')
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')
-@@ -294,22 +343,18 @@ def configure(conf):
+@@ -443,31 +484,32 @@ def configure(conf):
- conf.CHECK_FUNCS('prctl dirname basename')
+ strlcpy_in_bsd = False
-- strlcpy_in_bsd = False
--
- # libbsd on some platforms provides strlcpy and strlcat
- if not conf.CHECK_FUNCS('strlcpy strlcat'):
- 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'):
- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
- if not conf.CHECK_FUNCS('setproctitle_init'):
- conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
+-
+- if not conf.CHECK_FUNCS('closefrom'):
+- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
+ if Options.options.enable_libbsd:
+ # libbsd on some platforms provides strlcpy and strlcat
+ if not conf.CHECK_FUNCS('strlcpy strlcat'):
-+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h',
-+ checklibc=True)
++ 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'):
+ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h')
-
-- if not conf.CHECK_FUNCS('closefrom'):
-- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
++ if not conf.CHECK_FUNCS('setproctitle_init'):
++ conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h')
++
+ if not conf.CHECK_FUNCS('closefrom'):
+ conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h')
conf.CHECK_CODE('''
struct ucred cred;
-@@ -660,7 +705,7 @@ removeea setea
- # look for a method of finding the list of network interfaces
- for method in ['HAVE_IFACE_GETIFADDRS', 'HAVE_IFACE_AIX', 'HAVE_IFACE_IFCONF', 'HAVE_IFACE_IFREQ']:
- bsd_for_strlcpy = ''
-- if strlcpy_in_bsd:
-+ if Options.options.enable_libbsd:
- bsd_for_strlcpy = ' bsd'
- if conf.CHECK_CODE('''
- #define %s 1
diff --git a/wscript b/wscript
-index 94d190f..742f779 100644
+index d912a8a..484a6fa 100644
--- a/wscript
+++ b/wscript
-@@ -22,7 +22,12 @@ def set_options(opt):
- opt.PRIVATE_EXTENSION_DEFAULT('tevent', noextension='tevent')
+@@ -28,6 +28,12 @@ def options(opt):
opt.RECURSE('lib/replace')
opt.RECURSE('lib/talloc')
--
+
+ opt.add_option('--with-valgrind',
+ help=("enable use of valgrind"),
+ action="store_true", dest='enable_valgrind')
@@ -172,5 +186,5 @@ index 94d190f..742f779 100644
def configure(conf):
conf.RECURSE('lib/replace')
--
-2.16.2
+2.25.1
diff --git a/meta-networking/recipes-support/libtevent/libtevent/0001-libtevent-fix-musl-libc-compile-error.patch b/meta-networking/recipes-support/libtevent/libtevent/0001-libtevent-fix-musl-libc-compile-error.patch
deleted file mode 100644
index e3aeda9c33..0000000000
--- a/meta-networking/recipes-support/libtevent/libtevent/0001-libtevent-fix-musl-libc-compile-error.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 7ba1de909c587b6773a39ba9f6f9890987f35b24 Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Tue, 24 Jul 2018 11:30:53 +0800
-Subject: [PATCH] libtevent: fix musl libc compile error
-
-libldb depend on libtevent, build libldb with musl libc,
-will report error:
-tevent.h:1440:8: error: unknown type name 'pid_t'; did you mean 'div_t'?
-
-add missing headers to fix it.
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- tevent.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/tevent.h b/tevent.h
-index aa6fe0d..2572696 100644
---- a/tevent.h
-+++ b/tevent.h
-@@ -32,6 +32,8 @@
- #include <talloc.h>
- #include <sys/time.h>
- #include <stdbool.h>
-+#include <sys/stat.h>
-+#include <sys/types.h>
-
- struct tevent_context;
- struct tevent_ops;
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/libtevent/libtevent/0002-Fix-pyext_PATTERN-for-cross-compilation.patch b/meta-networking/recipes-support/libtevent/libtevent/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
new file mode 100644
index 0000000000..f1b8f8e9b1
--- /dev/null
+++ b/meta-networking/recipes-support/libtevent/libtevent/0002-Fix-pyext_PATTERN-for-cross-compilation.patch
@@ -0,0 +1,42 @@
+From 2bb7bf2d945d4ea0dafe3858adc6b8faae18b1e8 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Wed, 24 Nov 2021 13:33:35 +0800
+Subject: [PATCH] Fix pyext_PATTERN for cross compilation
+
+The pyext_PATTERN will add native arch as suffix when cross compiling.
+For example, on qemuarm64, it is expanded to:
+pyext_PATTERN ='%s.cpython-310-x86_64-linux-gnu.so'
+which will result in the incorrect library name.
+
+root@qemuarm64:~# find /usr/lib/python3.10/ -name \*tevent\*.so
+/usr/lib/python3.10/site-packages/_tevent.cpython-310-x86_64-linux-gnu.so
+/usr/lib/python3.10/site-packages/_tevent.so
+
+Set pyext_PATTERN to '%s.so' to remove the suffix.
+After the patch:
+root@qemuarm64:~# find /usr/lib/python3.10/ -name \*tevent\*.so
+/usr/lib/python3.10/site-packages/_tevent.so
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ third_party/waf/waflib/Tools/python.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/third_party/waf/waflib/Tools/python.py b/third_party/waf/waflib/Tools/python.py
+index b2dd1a9..2bd3545 100644
+--- a/third_party/waf/waflib/Tools/python.py
++++ b/third_party/waf/waflib/Tools/python.py
+@@ -339,7 +339,7 @@ def check_python_headers(conf, features='pyembed pyext'):
+ x = 'MACOSX_DEPLOYMENT_TARGET'
+ if dct[x]:
+ env[x] = conf.environ[x] = str(dct[x])
+- env.pyext_PATTERN = '%s' + (dct['EXT_SUFFIX'] or dct['SO']) # SO is deprecated in 3.5 and removed in 3.11
++ env.pyext_PATTERN = '%s.so'
+
+
+ # Try to get pythonX.Y-config
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libtevent/libtevent/avoid-attr-unless-wanted.patch b/meta-networking/recipes-support/libtevent/libtevent/avoid-attr-unless-wanted.patch
index 35890335a3..a8cddcd045 100644
--- a/meta-networking/recipes-support/libtevent/libtevent/avoid-attr-unless-wanted.patch
+++ b/meta-networking/recipes-support/libtevent/libtevent/avoid-attr-unless-wanted.patch
@@ -1,8 +1,18 @@
+From ace8fed037ec3d03f65f861b4da217faff94015b Mon Sep 17 00:00:00 2001
+From: Wang Mingyu <wangmy@cn.fujitsu.com>
+Date: Fri, 25 Dec 2020 15:10:58 +0900
+Subject: [PATCH] avoid attr unless wanted
+
+Upstream-Status: Inappropriate [embedded specific]
+---
+ lib/replace/wscript | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
diff --git a/lib/replace/wscript b/lib/replace/wscript
-index 079761d..07e0104 100644
+index 452c741..61fcde0 100644
--- a/lib/replace/wscript
+++ b/lib/replace/wscript
-@@ -793,8 +793,6 @@ def build(bld):
+@@ -983,8 +983,6 @@ def build(bld):
if not bld.CONFIG_SET('HAVE_INET_ATON'): REPLACE_SOURCE += ' inet_aton.c'
if not bld.CONFIG_SET('HAVE_INET_NTOP'): REPLACE_SOURCE += ' inet_ntop.c'
if not bld.CONFIG_SET('HAVE_INET_PTON'): REPLACE_SOURCE += ' inet_pton.c'
@@ -11,12 +21,15 @@ index 079761d..07e0104 100644
if not bld.CONFIG_SET('HAVE_CLOSEFROM'):
REPLACE_SOURCE += ' closefrom.c'
-@@ -808,7 +806,7 @@ def build(bld):
- # at the moment:
+@@ -999,7 +997,7 @@ def build(bld):
# hide_symbols=bld.BUILTIN_LIBRARY('replace'),
private_library=True,
-- deps='crypt dl nsl socket rt attr' + extra_libs)
-+ deps='crypt dl nsl socket rt ' + extra_libs)
+ provide_builtin_linking=True,
+- deps='dl attr' + extra_libs)
++ deps='dl' + extra_libs)
- replace_test_cflags="-Wno-format-zero-length"
+ replace_test_cflags = ''
if bld.CONFIG_SET('HAVE_WNO_FORMAT_TRUNCATION'):
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/libtevent/libtevent/run-ptest b/meta-networking/recipes-support/libtevent/libtevent/run-ptest
new file mode 100644
index 0000000000..19f7a4a3a6
--- /dev/null
+++ b/meta-networking/recipes-support/libtevent/libtevent/run-ptest
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+ptestdir=$(dirname "$(readlink -f "$0")")
+cd "$ptestdir"/tests || exit
+
+tests="replace_testsuite test_tevent_tag test_tevent_trace"
+
+for f in $tests
+do
+ if test -x ./"$f"; then
+ if ./"$f" > ./"$f".out 2> ./"$f".err; then
+ echo "PASS: $f"
+ else
+ echo "FAIL: $f"
+ fi
+ fi
+done
diff --git a/meta-networking/recipes-support/libtevent/libtevent_0.16.1.bb b/meta-networking/recipes-support/libtevent/libtevent_0.16.1.bb
new file mode 100644
index 0000000000..0a37d7977d
--- /dev/null
+++ b/meta-networking/recipes-support/libtevent/libtevent_0.16.1.bb
@@ -0,0 +1,62 @@
+SUMMARY = "Hierarchical, reference counted memory pool system with destructors"
+HOMEPAGE = "https://tevent.samba.org"
+SECTION = "libs"
+LICENSE = "LGPL-3.0-or-later"
+
+DEPENDS += "libtalloc libtirpc cmocka"
+RDEPENDS:python3-tevent = "python3"
+
+export PYTHONHASHSEED="1"
+export PYTHONARCHDIR = "${PYTHON_SITEPACKAGES_DIR}"
+
+SRC_URI = "https://samba.org/ftp/tevent/tevent-${PV}.tar.gz \
+ file://0001-Add-configure-options-for-packages.patch \
+ file://0002-Fix-pyext_PATTERN-for-cross-compilation.patch \
+ file://run-ptest \
+ "
+
+LIC_FILES_CHKSUM = "file://tevent.h;endline=26;md5=47386b7c539bf2706b7ce52dc9341681"
+
+SRC_URI[sha256sum] = "362971e0f32dc1905f6fe4736319c4b8348c22dc85aa6c3f690a28efe548029e"
+
+inherit pkgconfig ptest waf-samba
+
+PACKAGECONFIG ??= "\
+ ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
+PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
+PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
+PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
+PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
+
+SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-wanted.patch', d)}"
+
+S = "${WORKDIR}/tevent-${PV}"
+
+# Cross_compile cannot use preforked process, since fork process earlier than point subproces.popen
+# to cross Popen
+export WAF_NO_PREFORK="yes"
+
+EXTRA_OECONF += "--disable-rpath \
+ --disable-rpath-install \
+ --bundled-libraries=NONE \
+ --builtin-libraries=replace \
+ --with-libiconv=${STAGING_DIR_HOST}${prefix}\
+ --without-gettext \
+ "
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ install -m 0755 ${B}/bin/test_tevent_* ${D}${PTEST_PATH}/tests/
+ install -m 0755 ${B}/bin/replace_testsuite ${D}${PTEST_PATH}/tests/
+}
+
+PACKAGES += "python3-tevent"
+
+RPROVIDES:${PN}-dbg += "python3-tevent-dbg"
+
+FILES:python3-tevent = "${PYTHON_SITEPACKAGES_DIR}/*"
+
+INSANE_SKIP:${MLPREFIX}python3-tevent = "dev-so"
diff --git a/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb b/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb
deleted file mode 100644
index 4df251c7f3..0000000000
--- a/meta-networking/recipes-support/libtevent/libtevent_0.9.37.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "Hierarchical, reference counted memory pool system with destructors"
-HOMEPAGE = "http://tevent.samba.org"
-SECTION = "libs"
-LICENSE = "LGPLv3+"
-
-DEPENDS += "libtalloc libtirpc"
-RDEPENDS_python-tevent = "python"
-
-SRC_URI = "https://samba.org/ftp/tevent/tevent-${PV}.tar.gz \
- file://options-0.9.36.patch \
- file://0001-libtevent-fix-musl-libc-compile-error.patch \
-"
-LIC_FILES_CHKSUM = "file://tevent.h;endline=26;md5=4e458d658cb25e21efc16f720e78b85a"
-
-SRC_URI[md5sum] = "6859cd4081fdb2a76b1cb4bf1c803a59"
-SRC_URI[sha256sum] = "168345ed65eac03785cf77b95238e7dc66cbb473a42811693a6b0916e5dae7e0"
-
-inherit waf-samba
-
-PACKAGECONFIG ??= "\
- ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)} \
- ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
-"
-PACKAGECONFIG[acl] = "--with-acl,--without-acl,acl"
-PACKAGECONFIG[attr] = "--with-attr,--without-attr,attr"
-PACKAGECONFIG[libaio] = "--with-libaio,--without-libaio,libaio"
-PACKAGECONFIG[libbsd] = "--with-libbsd,--without-libbsd,libbsd"
-PACKAGECONFIG[libcap] = "--with-libcap,--without-libcap,libcap"
-PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind"
-
-SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-wanted.patch', d)}"
-
-S = "${WORKDIR}/tevent-${PV}"
-
-EXTRA_OECONF += "--disable-rpath \
- --bundled-libraries=NONE \
- --builtin-libraries=replace \
- --with-libiconv=${STAGING_DIR_HOST}${prefix}\
- --without-gettext \
- "
-
-PACKAGES += "python-tevent"
-
-RPROVIDES_${PN}-dbg += "python-tevent-dbg"
-
-FILES_python-tevent = "${libdir}/python${PYTHON_BASEVERSION}/site-packages/*"
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch
new file mode 100644
index 0000000000..a7c7093e09
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-IFNAMSIZ-is-defined-in-net-if.h.patch
@@ -0,0 +1,48 @@
+From 29b37e45577c0921846c1709a190f08a3b032666 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 8 Mar 2019 09:08:38 -0800
+Subject: [PATCH] IFNAMSIZ is defined in net/if.h
+
+Fixes
+/mnt/a/yoe/build/tmp/work/qemuriscv64-yoe-linux-musl/linux-atm/2.5.2-r0/recipe-sysroot/usr/include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function)
+| char arp_dev[IFNAMSIZ];
+| ^~~~~~~~
+In file included from ../../../linux-atm-2.5.2/src/arpd/itf.c:17:
+/mnt/a/yoe/build/tmp/work/qemuriscv64-yoe-linux-musl/linux-atm/2.5.2-r0/recipe-sysroot/usr/include/linux/if_arp.h:121:16: error: 'IFNAMSIZ' undeclared here (not in a function)
+| char arp_dev[IFNAMSIZ];
+| ^~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/arpd/arp.c | 1 +
+ src/arpd/itf.c | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/arpd/arp.c b/src/arpd/arp.c
+index 92d3787..ff1574c 100644
+--- a/src/arpd/arp.c
++++ b/src/arpd/arp.c
+@@ -17,6 +17,7 @@
+ #include <netinet/in.h> /* for ntohs, etc. */
+ #define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */
+ #include <linux/types.h>
++#include <net/if.h>
+ #include <linux/if_arp.h>
+ #include <linux/if_ether.h>
+ #include <atm.h>
+diff --git a/src/arpd/itf.c b/src/arpd/itf.c
+index 92f0951..d285e3b 100644
+--- a/src/arpd/itf.c
++++ b/src/arpd/itf.c
+@@ -14,6 +14,7 @@
+ #include <sys/socket.h>
+ #define _LINUX_NETDEVICE_H /* glibc2 */
+ #include <linux/types.h>
++#include <net/if.h>
+ #include <linux/if_arp.h>
+
+ #include "atmd.h"
+--
+2.21.0
+
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-configure-Check-for-symbol-from-libresolv-instead-of.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-configure-Check-for-symbol-from-libresolv-instead-of.patch
new file mode 100644
index 0000000000..abae366d28
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-configure-Check-for-symbol-from-libresolv-instead-of.patch
@@ -0,0 +1,28 @@
+From a2a2e1b7a3f4f90e32912b5ba9b79e1a02275775 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 1 Sep 2022 11:17:13 -0700
+Subject: [PATCH] configure: Check for symbol from libresolv instead of main
+
+This checks will fail with modern autoconf and compilers
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/configure.in
++++ b/configure.in
+@@ -45,12 +45,7 @@ AC_CHECK_HEADER(linux/atmsap.h, ,
+ )
+
+ dnl Check for libraries
+-dnl libresolv is required
+-AC_CHECK_LIB(resolv, main, ,
+- AC_MSG_ERROR([*** Unable to find libresolv!!!])
+-)
+
+-dnl We don't want libresolv everywhere, just with libatm
+ LIBS=""
+
+ INCLUDES="-I\$(top_srcdir)/src/include"
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-fix-compile-error-with-linux-kernel-v4.8.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-fix-compile-error-with-linux-kernel-v4.8.patch
index 583a6ca60b..403146e603 100644
--- a/meta-networking/recipes-support/linux-atm/linux-atm/0001-fix-compile-error-with-linux-kernel-v4.8.patch
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-fix-compile-error-with-linux-kernel-v4.8.patch
@@ -13,7 +13,7 @@ We should exclude the linux time.h by disable linux/atm_zatm.h and
move some useful definition in linux/atm_zatm.h to zntune.c to resolve
it.
-Upstream-status: Pending
+Upstream-Status: Pending
Signed-off-by: Dengke Du <dengke.du@windriver.com>
---
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-include-string-h-from-memcpy-and-strcpy-function-pro.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-include-string-h-from-memcpy-and-strcpy-function-pro.patch
new file mode 100644
index 0000000000..81c5efd173
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-include-string-h-from-memcpy-and-strcpy-function-pro.patch
@@ -0,0 +1,87 @@
+From 5217cb7c829cf87771096c4ce41fd4648dca47cb Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 29 Aug 2022 16:36:21 -0700
+Subject: [PATCH] include string,h from memcpy and strcpy function prototype
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/led/address.c | 1 +
+ src/led/display.c | 1 +
+ src/lib/unix.c | 1 +
+ src/maint/hediag.c | 1 +
+ src/sigd/kernel.c | 1 +
+ src/sigd/policy.c | 1 +
+ 6 files changed, 6 insertions(+)
+
+diff --git a/src/led/address.c b/src/led/address.c
+index 574e881..b5c5fbb 100644
+--- a/src/led/address.c
++++ b/src/led/address.c
+@@ -31,6 +31,7 @@
+ #endif
+
+ #include <sys/ioctl.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <errno.h>
+
+diff --git a/src/led/display.c b/src/led/display.c
+index d78a15d..b835e89 100644
+--- a/src/led/display.c
++++ b/src/led/display.c
+@@ -5,6 +5,7 @@
+ #if HAVE_CONFIG_H
+ #include <config.h>
+ #endif
++#include <string.h>
+
+ #include <atm.h>
+ #include <atmd.h>
+diff --git a/src/lib/unix.c b/src/lib/unix.c
+index 34aa465..d5bef54 100644
+--- a/src/lib/unix.c
++++ b/src/lib/unix.c
+@@ -8,6 +8,7 @@
+
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <errno.h>
+ #include <sys/types.h>
+diff --git a/src/maint/hediag.c b/src/maint/hediag.c
+index 8a4312a..a4f792f 100644
+--- a/src/maint/hediag.c
++++ b/src/maint/hediag.c
+@@ -1,5 +1,6 @@
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <sys/types.h>
+diff --git a/src/sigd/kernel.c b/src/sigd/kernel.c
+index 9ee74b1..2491626 100644
+--- a/src/sigd/kernel.c
++++ b/src/sigd/kernel.c
+@@ -8,6 +8,7 @@
+
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <string.h>
+ #include <errno.h>
+ #include <assert.h>
+
+diff --git a/src/sigd/policy.c b/src/sigd/policy.c
+index 2cfb42d..87223a7 100644
+--- a/src/sigd/policy.c
++++ b/src/sigd/policy.c
+@@ -6,6 +6,7 @@
+ #include <config.h>
+ #endif
+
++#include <string.h>
+ #include <atm.h>
+ #include <atmd.h>
+
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-make-Add-PREFIX-knob.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-make-Add-PREFIX-knob.patch
new file mode 100644
index 0000000000..9c83ef0af4
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-make-Add-PREFIX-knob.patch
@@ -0,0 +1,31 @@
+From 94cb952207e44a5c29578c9c56912190a5422876 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 23 Apr 2022 09:41:51 -0700
+Subject: [PATCH] make: Add PREFIX knob
+
+This will be used to pass appropriate root prefix which is different
+when using usrmerge
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/extra/Makefile.am | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/src/extra/Makefile.am
++++ b/src/extra/Makefile.am
+@@ -8,10 +8,10 @@ BUILT_SOURCES = pca200e.bin pca200e_ecd.
+ CLEANFILES = pca200e.bin pca200e_ecd.bin2 sba200e_ecd.bin2
+
+ install-exec-hook:
+- $(MKDIR_P) $(DESTDIR)/lib/firmware
+- $(INSTALL_DATA) $(builddir)/pca200e.bin $(DESTDIR)/lib/firmware
+- $(INSTALL_DATA) $(builddir)/pca200e_ecd.bin2 $(DESTDIR)/lib/firmware
+- $(INSTALL_DATA) $(builddir)/sba200e_ecd.bin2 $(DESTDIR)/lib/firmware
++ $(MKDIR_P) $(DESTDIR)$(ROOTPREFIX)/lib/firmware
++ $(INSTALL_DATA) $(builddir)/pca200e.bin $(DESTDIR)$(ROOTPREFIX)/lib/firmware
++ $(INSTALL_DATA) $(builddir)/pca200e_ecd.bin2 $(DESTDIR)$(ROOTPREFIX)/lib/firmware
++ $(INSTALL_DATA) $(builddir)/sba200e_ecd.bin2 $(DESTDIR)$(ROOTPREFIX)/lib/firmware
+
+ %.bin %.bin2: %.data
+ objcopy -Iihex $< -Obinary $@.gz
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch
new file mode 100644
index 0000000000..a54869db89
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch
@@ -0,0 +1,59 @@
+From 4456e13880803a300e4b6f263ad22a37481b5df5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 29 Aug 2019 09:33:43 -0700
+Subject: [PATCH] saaldump,atmdump: Include linux/sockios.h for SIOCGSTAMP
+
+In linux kernel commit 0768e17073dc527ccd18ed5f96ce85f9985e9115
+the asm-generic/sockios.h header no longer defines SIOCGSTAMP.
+Instead it provides only SIOCGSTAMP_OLD.
+
+The linux/sockios.h header now defines SIOCGSTAMP using either
+SIOCGSTAMP_OLD or SIOCGSTAMP_NEW as appropriate. This linux only
+header file is not pulled so we get a build failure.
+
+Fixes
+../../../linux-atm-2.5.2/src/maint/atmdump.c:142:18: error: use of undeclared identifier 'SIOCGSTAMP'
+ if (ioctl(s,SIOCGSTAMP,&stamp) < 0) {
+ ^
+1 error generated.
+make[3]: *** [Makefile:623: atmdump.o] Error 1
+make[3]: *** Waiting for unfinished jobs....
+../../../linux-atm-2.5.2/src/maint/saaldump.c:169:14: error: use of undeclared identifier 'SIOCGSTAMP'
+ if (ioctl(s,SIOCGSTAMP,&stamp) < 0) {
+ ^
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/maint/atmdump.c | 2 +-
+ src/maint/saaldump.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/maint/atmdump.c b/src/maint/atmdump.c
+index 8b17826..9e4853b 100644
+--- a/src/maint/atmdump.c
++++ b/src/maint/atmdump.c
+@@ -5,7 +5,7 @@
+ #if HAVE_CONFIG_H
+ #include <config.h>
+ #endif
+-
++#include <linux/sockios.h>
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <unistd.h>
+diff --git a/src/maint/saaldump.c b/src/maint/saaldump.c
+index 83bdde9..69429a8 100644
+--- a/src/maint/saaldump.c
++++ b/src/maint/saaldump.c
+@@ -5,7 +5,7 @@
+ #if HAVE_CONFIG_H
+ #include <config.h>
+ #endif
+-
++#include <linux/sockios.h>
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <stdio.h>
+--
+2.23.0
+
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch b/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch
deleted file mode 100644
index ce061231ca..0000000000
--- a/meta-networking/recipes-support/linux-atm/linux-atm/0002-sigd-Replace-on_exit-API-with-atexit.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 27fa80dc8045e71c30dd2abea835206d5c8f6c71 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 17 Jun 2017 16:18:56 -0700
-Subject: [PATCH 2/3] sigd: Replace on_exit() API with atexit()
-
-on_exit is not universally available
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/sigd/atmsigd.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/sigd/atmsigd.c b/src/sigd/atmsigd.c
-index 52e41c7..b766606 100644
---- a/src/sigd/atmsigd.c
-+++ b/src/sigd/atmsigd.c
-@@ -517,7 +517,7 @@ int main(int argc,char **argv)
- exit(0);
- }
- }
-- (void) on_exit(trace_on_exit,NULL);
-+ atexit(trace_on_exit);
- poll_loop();
- close_all();
- for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal);
---
-2.13.1
-
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/install-from-buildir.patch b/meta-networking/recipes-support/linux-atm/linux-atm/install-from-buildir.patch
index d1380eb2aa..08cb817f77 100644
--- a/meta-networking/recipes-support/linux-atm/linux-atm/install-from-buildir.patch
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/install-from-buildir.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Pending
+
install binaries from builddir not srcdir.
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/link-with-ldflags.patch b/meta-networking/recipes-support/linux-atm/linux-atm/link-with-ldflags.patch
index 62fad2a54a..8324040da9 100644
--- a/meta-networking/recipes-support/linux-atm/linux-atm/link-with-ldflags.patch
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/link-with-ldflags.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Pending
+
LDFLAGS_FOR_BUILD should be required when doing link for qgen.
Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch b/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch
new file mode 100644
index 0000000000..25211d7c10
--- /dev/null
+++ b/meta-networking/recipes-support/linux-atm/linux-atm/musl-no-on_exit.patch
@@ -0,0 +1,37 @@
+Description: musl lacks on_exit
+Author: Adrian Bunk <bunk@stusta.de>
+
+Only prints a trace on nonzero exit(),
+so can safely be disabled in musl builds.
+
+Signed-off-by: Adrian Bunk <bunk@stusta.de>
+Upstream-Status: Inappropriate [musl specific]
+
+--- linux-atm-2.5.1.orig/src/sigd/atmsigd.c
++++ linux-atm-2.5.1/src/sigd/atmsigd.c
+@@ -283,6 +283,7 @@ static void setup_signals(void)
+ /* ------------------------------- main ... ------------------------------- */
+
+
++#if 0
+ static void trace_on_exit(int status,void *dummy)
+ {
+ char path[PATH_MAX+1];
+@@ -300,6 +301,7 @@ static void trace_on_exit(int status,voi
+ dump_trace(file,"Message trace (after error exit)");
+ if (file != stderr) (void) fclose(file);
+ }
++#endif
+
+
+ static void manual_override(void)
+@@ -517,7 +519,9 @@ int main(int argc,char **argv)
+ exit(0);
+ }
+ }
++#if 0
+ (void) on_exit(trace_on_exit,NULL);
++#endif
+ poll_loop();
+ close_all();
+ for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal);
diff --git a/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb b/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
index 9fce4fba63..391e0e4ab6 100644
--- a/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
+++ b/meta-networking/recipes-support/linux-atm/linux-atm_2.5.2.bb
@@ -1,22 +1,25 @@
SUMMARY = "Drivers and tools to support ATM networking under Linux"
HOMEPAGE = "http://linux-atm.sourceforge.net/"
SECTION = "libs"
-LICENSE = "GPL-2.0 & LGPL-2.0"
+LICENSE = "GPL-2.0-only & LGPL-2.0-only"
-DEPENDS = "virtual/kernel flex flex-native"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
+DEPENDS = "flex flex-native"
SRC_URI = "http://nchc.dl.sourceforge.net/project/${BPN}/${BPN}/${PV}/${BPN}-${PV}.tar.gz \
file://link-with-ldflags.patch \
file://install-from-buildir.patch \
file://0001-fix-compile-error-with-linux-kernel-v4.8.patch \
file://0001-ttcp-Add-printf-format-string.patch \
- file://0002-sigd-Replace-on_exit-API-with-atexit.patch \
file://0003-mpoad-Drop-old-hack-to-compile-with-very-old-glibc.patch \
-"
+ file://0001-IFNAMSIZ-is-defined-in-net-if.h.patch \
+ file://0001-saaldump-atmdump-Include-linux-sockios.h-for-SIOCGST.patch \
+ file://0001-make-Add-PREFIX-knob.patch \
+ file://0001-include-string-h-from-memcpy-and-strcpy-function-pro.patch \
+ file://0001-configure-Check-for-symbol-from-libresolv-instead-of.patch \
+ "
+
+SRC_URI:append:libc-musl = " file://musl-no-on_exit.patch"
-SRC_URI[md5sum] = "d49499368c3cf15f73a05d9bce8824a8"
SRC_URI[sha256sum] = "9645481a2b16476b59220aa2d6bc5bc41043f291326c9b37581018fbd16dd53a"
LIC_FILES_CHKSUM = "\
@@ -26,7 +29,10 @@ file://COPYING.LGPL;md5=6e29c688d912da12b66b73e32b03d812"
inherit autotools pkgconfig
-# The firmware is explicitly put under /lib when installed.
-#
+EXTRA_OEMAKE += "ROOTPREFIX=${root_prefix}"
+
+FILES:${PN} += "${nonarch_base_libdir}/firmware"
-FILES_${PN} += "/lib/firmware"
+# http://errors.yoctoproject.org/Errors/Details/766901/
+# linux-atm-2.5.2/src/led/conn.c:414:57: error: passing argument 3 of 'accept' from incompatible pointer type [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-0b0dce7a36fb-actually-belongs-to-v4.19.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-0b0dce7a36fb-actually-belongs-to-v4.19.patch
deleted file mode 100644
index 7599b1bcfb..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-0b0dce7a36fb-actually-belongs-to-v4.19.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e5952a0cdfa8b1b56a5823574835f1f771f14ae0 Mon Sep 17 00:00:00 2001
-From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Date: Fri, 24 Aug 2018 09:53:00 -0300
-Subject: [PATCH] build: 0b0dce7a36fb actually belongs to v4.19
-
-Typo or not, this commit actually belongs to v4.19 and made me wonder why
-on v4.18 it didn't find this feature.
-
-Fixes: 817f0bfa248f ("build: add two defines for Peer Address Parameters extensions on sctp_paddrparams")
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Reviewed-by: Xin Long <lucien.xin@gmail.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index f55775a..5de5c76 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -101,7 +101,7 @@ LKSCTP_CHECK_TYPE([struct sctp_prinfo], [HAVE_SCTP_SENDV])
- # added on v4.16, 30f6ebf65bc4
- LKSCTP_CHECK_DECL([SCTP_AUTH_NO_AUTH], [HAVE_SCTP_AUTH_NO_AUTH])
-
--# New members to sctp_paddrparams, added on v4.18, 0b0dce7a36fb
-+# New members to sctp_paddrparams, added on v4.19, 0b0dce7a36fb
- LKSCTP_CHECK_MEMBER([struct sctp_paddrparams.spp_ipv6_flowlabel],
- [HAVE_SCTP_SPP_IPV6_FLOWLABEL])
- LKSCTP_CHECK_MEMBER([struct sctp_paddrparams.spp_dscp],
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-netinet-sctp.h-not-to-be-installed.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-netinet-sctp.h-not-to-be-installed.patch
deleted file mode 100644
index 03c6c4f737..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-netinet-sctp.h-not-to-be-installed.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 378560050a8f93786c590cc99a55461666205b61 Mon Sep 17 00:00:00 2001
-From: Xin Long <lucien.xin@gmail.com>
-Date: Fri, 24 Aug 2018 01:13:32 +0800
-Subject: [PATCH] build: fix netinet/sctp.h not to be installed
-
-After libcnetinet_HEADERS was set to sctp.h.in, netinet/sctp.h can
-no longer be installed into ${includedir}.
-
-Since "AC_CONFIG_HEADERS([src/include/netinet/sctp.h])" is already
-added into configure.ac, there's no need to generate sctp.h by
-automake.
-
-So we simply set libcnetinet_HEADERS back to sctp.h.
-
-Fixes: 9607dd85e70a ("netinet/sctp.h: dynamically build based on system setup")
-Signed-off-by: Xin Long <lucien.xin@gmail.com>
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
----
- src/include/netinet/Makefile.am | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/include/netinet/Makefile.am b/src/include/netinet/Makefile.am
-index ca0aac2..965db8c 100644
---- a/src/include/netinet/Makefile.am
-+++ b/src/include/netinet/Makefile.am
-@@ -11,5 +11,4 @@ libcnetinetdir = $(includedir)/netinet
- # API.
- include_HEADERS =
-
--libcnetinet_HEADERS = sctp.h.in
--BUILT_SOURCES = sctp.h
-+libcnetinet_HEADERS = sctp.h
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-probing-for-HAVE_SCTP_SENDV.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-probing-for-HAVE_SCTP_SENDV.patch
deleted file mode 100644
index 89c89835da..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-fix-probing-for-HAVE_SCTP_SENDV.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 596efd6631b83069d41782fb0ee2d6cf76a50dfa Mon Sep 17 00:00:00 2001
-From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Date: Fri, 24 Aug 2018 09:52:59 -0300
-Subject: [PATCH] build: fix probing for HAVE_SCTP_SENDV
-
-Somehow it was using a type that is non-existent. The right one is
-sctp_prinfo, introduced on ed63afb8a318 ("sctp: add support for PR-SCTP
-Information for sendmsg"), present on v4.17.
-
-Fixes: 1b798f1ca3b5 ("build: add define HAVE_SCTP_AUTH_NO_AUTH")
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Reviewed-by: Xin Long <lucien.xin@gmail.com>
----
- configure.ac | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index dad658c..f55775a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -94,9 +94,8 @@ LKSCTP_CHECK_MEMBER([struct sctp_pdapi_event.pdapi_stream],
- LKSCTP_CHECK_MEMBER([struct sctp_pdapi_event.pdapi_seq],
- [HAVE_SCTP_PDAPI_EVENT_PDAPI_SEQ])
-
--# PR-SCTP field used to probe for sendv/recvv support, added on v4.17
--LKSCTP_CHECK_MEMBER([struct sendv_prinfo.sctp_prinfo],
-- [HAVE_SCTP_SENDV])
-+# PR-SCTP struct used to probe for sendv/recvv support, added on v4.17
-+LKSCTP_CHECK_TYPE([struct sctp_prinfo], [HAVE_SCTP_SENDV])
-
- # This event indicates that the peer does not support SCTP authentication,
- # added on v4.16, 30f6ebf65bc4
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-remove-v4.12-secondary-defines-in-favor-of-HAV.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-remove-v4.12-secondary-defines-in-favor-of-HAV.patch
deleted file mode 100644
index d22cda6814..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-build-remove-v4.12-secondary-defines-in-favor-of-HAV.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From db6d15bf12a0123e4320e5fd7cb688331dea1bdc Mon Sep 17 00:00:00 2001
-From: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Date: Fri, 24 Aug 2018 09:52:58 -0300
-Subject: [PATCH] build: remove v4.12 secondary defines in favor of
- HAVE_SCTP_STREAM_RECONFIG
-
-These were backups, commented out since beginning.
-HAVE_SCTP_STREAM_RECONFIG is enough to identify that these are there, so
-lets use only one.
-
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
-Reviewed-by: Xin Long <lucien.xin@gmail.com>
----
- configure.ac | 8 --------
- src/include/netinet/sctp.h.in | 2 --
- 2 files changed, 10 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 2ae36ec..dad658c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -82,14 +82,6 @@ AC_CHECK_FUNCS([bzero gethostbyname gettimeofday memmove memset select socket \
- LKSCTP_CHECK_MEMBER([struct sctp_event_subscribe.sctp_stream_reset_event],
- [HAVE_SCTP_STREAM_RESET_EVENT])
-
--# Support for assoc reset event, added on v4.12, c95129d127c6
--#LKSCTP_CHECK_MEMBER([struct sctp_event_subscribe.sctp_assoc_reset_event], \
--# [HAVE_SCTP_ASSOC_RESET_EVENT])
--
--# Support for stream change event, added on v4.12, b444153fb5a6
--#LKSCTP_CHECK_MEMBER([struct sctp_event_subscribe.sctp_stream_change_event], \
--# [HAVE_SCTP_STREAM_CHANGE_EVENT])
--
- # RFC 6525 (Stream Reconf), finished on v4.12, c0d8bab6ae51
- LKSCTP_CHECK_DECL([SCTP_RECONFIG_SUPPORTED], [HAVE_SCTP_STREAM_RECONFIG])
-
-diff --git a/src/include/netinet/sctp.h.in b/src/include/netinet/sctp.h.in
-index c049077..2009f1c 100644
---- a/src/include/netinet/sctp.h.in
-+++ b/src/include/netinet/sctp.h.in
-@@ -61,8 +61,6 @@ extern "C" {
- #define HAVE_SCTP_CANSET_PRIMARY
-
- #undef HAVE_SCTP_STREAM_RESET_EVENT
--#undef HAVE_SCTP_ASSOC_RESET_EVENT
--#undef HAVE_SCTP_STREAM_CHANGE_EVENT
- #undef HAVE_SCTP_STREAM_RECONFIG
- #undef HAVE_SCTP_PEELOFF_FLAGS
- #undef HAVE_SCTP_PDAPI_EVENT_PDAPI_STREAM
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-configure.ac-add-CURRENT-REVISION-and-AGE-for-libsct.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-configure.ac-add-CURRENT-REVISION-and-AGE-for-libsct.patch
deleted file mode 100644
index bec9bf0d1b..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-configure.ac-add-CURRENT-REVISION-and-AGE-for-libsct.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 7de2bd7e769f10521e3d0c2cb42c6f6b9b505dd0 Mon Sep 17 00:00:00 2001
-From: Xin Long <lucien.xin@gmail.com>
-Date: Thu, 16 Aug 2018 14:12:30 +0800
-Subject: [PATCH] configure.ac: add CURRENT REVISION and AGE for libsctp and
- libwithsctp
-
-Add CURRENT REVISION and AGE for libsctp and libwithsctp in
-configure.ac to update these 2 library version information.
-
-Compatible with before, they will start from 1:18:0. But each
-will get updated according to their definitions in the future.
-
-Signed-off-by: Xin Long <lucien.xin@gmail.com>
-Acked-by: Neil Horman <nhorman@tuxdriver.com>
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
----
- configure.ac | 7 +++++++
- src/lib/Makefile.am | 7 +++++--
- src/withsctp/Makefile.am | 3 ++-
- 3 files changed, 14 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 275ef4e..2ae36ec 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -14,6 +14,13 @@ dnl reduce clutter in the root; if we put it below AM_INIT_AUTOMAKE,
- dnl configure will fail ...)
-
- AC_INIT([lksctp-tools], [1.0.18], [], [], [http://www.lksctp.org/])
-+AC_SUBST(LIBSCTP_CURRENT, 1)
-+AC_SUBST(LIBSCTP_REVISION, 18)
-+AC_SUBST(LIBSCTP_AGE, 0)
-+AC_SUBST(LIBWITHSCTP_CURRENT, 1)
-+AC_SUBST(LIBWITHSCTP_REVISION, 18)
-+AC_SUBST(LIBWITHSCTP_AGE, 0)
-+
- AC_CONFIG_AUX_DIR(bin)
- AC_CONFIG_SRCDIR([src/apps/sctp_darn.c])
- AC_CONFIG_HEADERS([config.h])
-diff --git a/src/lib/Makefile.am b/src/lib/Makefile.am
-index 6100c56..1d62175 100644
---- a/src/lib/Makefile.am
-+++ b/src/lib/Makefile.am
-@@ -8,5 +8,8 @@ AM_CPPFLAGS = -I$(top_srcdir)/src/include
-
- lib_LTLIBRARIES = libsctp.la
-
--libsctp_la_SOURCES = bindx.c connectx.c peeloff.c opt_info.c addrs.c sendmsg.c recvmsg.c Versions.map
--libsctp_la_LDFLAGS = -version-info 1:17:0 -Wl,--version-script=$(srcdir)/Versions.map
-+libsctp_la_SOURCES = bindx.c connectx.c peeloff.c opt_info.c \
-+ addrs.c sendmsg.c recvmsg.c Versions.map
-+libsctp_la_LDFLAGS = -version-info \
-+ @LIBSCTP_CURRENT@:@LIBSCTP_REVISION@:@LIBSCTP_AGE@ \
-+ -Wl,--version-script=$(srcdir)/Versions.map
-diff --git a/src/withsctp/Makefile.am b/src/withsctp/Makefile.am
-index 70b1cca..1f6ca37 100644
---- a/src/withsctp/Makefile.am
-+++ b/src/withsctp/Makefile.am
-@@ -14,7 +14,8 @@ AM_CPPFLAGS=-I$(top_srcdir)/src/include
- pkglib_LTLIBRARIES = libwithsctp.la
- libwithsctp_la_SOURCES = sctp_load_libs.c sctp_socket.c sctp_bind.c \
- sctp_sockopt.c sctp_socket.h
--libwithsctp_la_LDFLAGS = -version-info 1:17:0 -ldl
-+libwithsctp_la_LDFLAGS = -version-info \
-+ @LIBWITHSCTP_CURRENT@:@LIBWITHSCTP_REVISION@:@LIBWITHSCTP_AGE@ -ldl
-
- pkgdoc_DATA = sctp_load_libs.c sctp_socket.c sctp_bind.c \
- sctp_sockopt.c sctp_socket.h checksctp.c
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-test_1_to_1_events.c-initialize-event-properly.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-test_1_to_1_events.c-initialize-event-properly.patch
deleted file mode 100644
index 621e6f4693..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-test_1_to_1_events.c-initialize-event-properly.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From e1e670defb84d51efdd124e5f3fa166a1a4b7c1d Mon Sep 17 00:00:00 2001
-From: Mingli Yu <Mingli.Yu@windriver.com>
-Date: Tue, 25 Sep 2018 11:39:43 +0800
-Subject: [PATCH] test_1_to_1_events.c: initialize event properly
-
-Initialize event properly to avoid below
-Segmentation fault when run below test
-related to AUTH_NO_AUTH.
-
- # ./test_1_to_1_events
-test_1_to_1_events.c 1 PASS : COMM_UP notification on client socket - SUCCESS
-test_1_to_1_events.c 2 PASS : COMM_UP notification on server socket - SUCCESS
-test_1_to_1_events.c 3 BROK : Got a datamsg, expecting notification
-DUMP_CORE sctputil.c: 187
-[ 1468.733938] test_1_to_1_eve[2376]: segfault at 0 ip 0000561a4a3d5079 sp 00007ffd49101580 error 6 in test_1_to_1_events[561a4a3d4000+2000]
-[ 1468.734479] Code: ff bf 0a 00 00 00 e8 e6 ef ff ff b9 c9 00 00 00 48 8d 15 61 13 00 00 bf 01 00 00 00 31 c0 48 8d 35 c7 0f 00 00 e8 97 f0
-Segmentation fault
-
-Upstream-Status: Pending
-
-Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
----
- src/func_tests/test_1_to_1_events.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/func_tests/test_1_to_1_events.c b/src/func_tests/test_1_to_1_events.c
-index 46439bf..a086832 100644
---- a/src/func_tests/test_1_to_1_events.c
-+++ b/src/func_tests/test_1_to_1_events.c
-@@ -92,9 +92,11 @@ main(int argc, char *argv[])
- /* Create the client socket. */
- clt_sk = test_socket(AF_INET, SOCK_STREAM, IPPROTO_SCTP);
-
-+ memset(&event, 0, sizeof(event));
- event.sctp_data_io_event = 1;
- event.sctp_association_event = 1;
- event.sctp_shutdown_event = 1;
-+ event.sctp_authentication_event = 1;
- len = sizeof(struct sctp_event_subscribe);
- test_setsockopt(svr_sk, SCTP_EVENTS, &event, len);
- test_setsockopt(clt_sk, SCTP_EVENTS, &event, len);
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-withsctp-use-PACKAGE_VERSION-in-withsctp.h.patch b/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-withsctp-use-PACKAGE_VERSION-in-withsctp.h.patch
deleted file mode 100644
index 2537bb976a..0000000000
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools/0001-withsctp-use-PACKAGE_VERSION-in-withsctp.h.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 7c0ef4d441b3833e721df58f56e2cb8c81b34df4 Mon Sep 17 00:00:00 2001
-From: Xin Long <lucien.xin@gmail.com>
-Date: Thu, 16 Aug 2018 14:12:01 +0800
-Subject: [PATCH] withsctp: use @PACKAGE_VERSION@ in withsctp.h
-
-use @PACKAGE_VERSION@ to replace the hardcode version.
-
-Signed-off-by: Xin Long <lucien.xin@gmail.com>
-Acked-by: Neil Horman <nhorman@tuxdriver.com>
-Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
----
- Makefile.rules | 3 ++-
- src/withsctp/withsctp.in | 3 ++-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.rules b/Makefile.rules
-index 83f5f0c..d3693fa 100644
---- a/Makefile.rules
-+++ b/Makefile.rules
-@@ -15,4 +15,5 @@
- edit = @sed \
- -e "s|\@bindir\@|$(bindir)|" \
- -e "s|\@libdir\@|$(libdir)|" \
-- -e "s|\@PACKAGE\@|$(PACKAGE)|"
-+ -e "s|\@PACKAGE\@|$(PACKAGE)|" \
-+ -e "s|\@PACKAGE_VERSION\@|$(PACKAGE_VERSION)|"
-diff --git a/src/withsctp/withsctp.in b/src/withsctp/withsctp.in
-index 7f182ba..fda5ebc 100644
---- a/src/withsctp/withsctp.in
-+++ b/src/withsctp/withsctp.in
-@@ -2,7 +2,8 @@
- # -*- sh -*-
- LIBDIR=@libdir@/@PACKAGE@
- BINDIR=@bindir@
--export LD_PRELOAD=${LIBDIR}/libwithsctp.so.1.0.17
-+LIBVER=@PACKAGE_VERSION@
-+export LD_PRELOAD=${LIBDIR}/libwithsctp.so.${LIBVER}
- if ! ${BINDIR}/checksctp 2> /dev/null
- then
- ${BINDIR}/checksctp;
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb b/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.19.bb
index 70cea6c7b9..3f945eeeee 100644
--- a/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.18.bb
+++ b/meta-networking/recipes-support/lksctp-tools/lksctp-tools_1.0.19.bb
@@ -1,27 +1,20 @@
SUMMARY = "The Linux Kernel Stream Control Transmission Protocol (lksctp) project"
HOMEPAGE = "http://lksctp.org"
SECTION = "net"
-LICENSE = "LGPLv2.1 & GPLv2"
+LICENSE = "LGPL-2.1-only & GPL-2.0-only"
LIC_FILES_CHKSUM = " \
file://COPYING.lib;md5=0a1b79af951c42a9c8573533fbba9a92 \
file://COPYING;md5=0c56db0143f4f80c369ee3af7425af6e \
"
-SRCREV = "1b077af62d83d53c34b1bde8bad6648149d5edf9"
+SRCREV = "05b50d379ff0037de4957bb2a1befcce88b70225"
-PV .= "+git${SRCPV}"
-LK_REL = "1.0.18"
+PV .= "+git"
+LK_REL = "1.0.19"
SRC_URI = " \
- git://github.com/sctp/lksctp-tools.git \
- file://0001-withsctp-use-PACKAGE_VERSION-in-withsctp.h.patch \
- file://0001-configure.ac-add-CURRENT-REVISION-and-AGE-for-libsct.patch \
- file://0001-build-fix-netinet-sctp.h-not-to-be-installed.patch \
- file://0001-build-remove-v4.12-secondary-defines-in-favor-of-HAV.patch \
- file://0001-build-fix-probing-for-HAVE_SCTP_SENDV.patch \
- file://0001-build-0b0dce7a36fb-actually-belongs-to-v4.19.patch \
- file://0001-test_1_to_1_events.c-initialize-event-properly.patch \
+ git://github.com/sctp/lksctp-tools.git;branch=master;protocol=https \
file://run-ptest \
file://v4test.sh \
file://v6test.sh \
@@ -46,24 +39,25 @@ SOLIBMAJORVERSION="1"
PACKAGES =+ "${PN}-withsctp ${PN}-utils"
-FILES_${PN} = " \
+FILES:${PN} = " \
${libdir}/libsctp.so.${SOLIBVERSION} \
${libdir}/libsctp.so.${SOLIBMAJORVERSION} \
"
-FILES_${PN}-withsctp = " \
+FILES:${PN}-withsctp = " \
${libdir}/lksctp-tools/libwithsctp.so.${SOLIBVERSION} \
${libdir}/lksctp-tools/libwithsctp.so.${SOLIBMAJORVERSION} \
"
-FILES_${PN}-dev += " \
+FILES:${PN}-dev += " \
${libdir}/libsctp.so \
${libdir}/lksctp-tools/libwithsctp.so \
${datadir}/lksctp-tools/*.c \
${datadir}/lksctp-tools/*.h \
"
-FILES_${PN}-utils = "${bindir}/*"
+FILES:${PN}-utils = "${bindir}/*"
-RRECOMMENDS_${PN}-utils += "kernel-module-sctp"
-RRECOMMENDS_${PN}-ptest += "kernel-module-sctp"
+RRECOMMENDS:${PN} += "kernel-module-sctp"
+RRECOMMENDS:${PN}-utils += "kernel-module-sctp"
+RRECOMMENDS:${PN}-ptest += "kernel-module-sctp"
diff --git a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-Remove-newline-from-format-line.patch b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-Remove-newline-from-format-line.patch
index 1453b75d56..b8fe66f346 100644
--- a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-Remove-newline-from-format-line.patch
+++ b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-Remove-newline-from-format-line.patch
@@ -11,6 +11,8 @@ error: '__builtin___snprintf_chk' output truncated before the last format charac
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
addrdb/addrdb.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch
index 0a81a22526..81a3f52d90 100644
--- a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch
+++ b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch
@@ -21,6 +21,8 @@ Yacc.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
addrdb/coord-config-parse.y | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-coordinator-Fix-strncpy-range-warning.patch b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-coordinator-Fix-strncpy-range-warning.patch
index 493832bb84..aadfae238d 100644
--- a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-coordinator-Fix-strncpy-range-warning.patch
+++ b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-coordinator-Fix-strncpy-range-warning.patch
@@ -8,6 +8,8 @@ error: 'strncpy' specified bound 4096 equals destination size [-Werror=stringop-
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
src/coordinator.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-src-iz.c-Undef-dprintf-before-redefining.patch b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-src-iz.c-Undef-dprintf-before-redefining.patch
index 68393067d0..fec9b5736d 100644
--- a/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-src-iz.c-Undef-dprintf-before-redefining.patch
+++ b/meta-networking/recipes-support/lowpan-tools/lowpan-tools/0001-src-iz.c-Undef-dprintf-before-redefining.patch
@@ -7,6 +7,8 @@ Clang is picky and warns about macros redefinition
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
src/iz.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb b/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb
index b70c43f156..f0b7e9184e 100644
--- a/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb
+++ b/meta-networking/recipes-support/lowpan-tools/lowpan-tools_git.bb
@@ -2,13 +2,13 @@ SUMMARY = "Utilities for managing the Linux LoWPAN stack"
DESCRIPTION = "This is a set of utils to manage the Linux LoWPAN stack. \
The LoWPAN stack aims for IEEE 802.15.4-2003 (and for lesser extent IEEE 802.15.4-2006) compatibility."
SECTION = "net"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
DEPENDS = "flex-native bison-native libnl python"
-PV = "0.3.1+git${SRCPV}"
-SRC_URI = "git://github.com/linux-wpan/lowpan-tools \
+PV = "0.3.1+git"
+SRC_URI = "git://github.com/linux-wpan/lowpan-tools;branch=master;protocol=https \
file://no-help2man.patch \
file://0001-Fix-build-errors-with-clang.patch \
file://0001-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch \
@@ -21,17 +21,19 @@ SRCREV = "1c2d8674cc6f4b1166a066e8822e295c105ae7a2"
S = "${WORKDIR}/git"
-inherit autotools python-dir pkgconfig
+inherit autotools python3-dir pkgconfig
CACHED_CONFIGUREVARS += "am_cv_python_pythondir=${PYTHON_SITEPACKAGES_DIR}/lowpan-tools"
CFLAGS += "-Wno-initializer-overrides"
-do_install_append() {
+do_install:append() {
rmdir ${D}${localstatedir}/run
}
-FILES_${PN}-dbg += "${libexecdir}/lowpan-tools/.debug/"
+FILES:${PN}-dbg += "${libexecdir}/lowpan-tools/.debug/"
PACKAGES =+ "${PN}-python"
-FILES_${PN}-python = "${libdir}/python*"
+FILES:${PN}-python = "${libdir}/python*"
+
+SKIP_RECIPE[lowpan-tools] ?= "WARNING these tools are deprecated! Use wpan-tools instead"
diff --git a/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch b/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch
new file mode 100644
index 0000000000..5231015701
--- /dev/null
+++ b/meta-networking/recipes-support/macchanger/macchanger/0001-Fix-musl-build.patch
@@ -0,0 +1,33 @@
+From 12d1cc9da14b0cd0265bca3c4289a335ddf2e357 Mon Sep 17 00:00:00 2001
+From: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+Date: Mon, 8 Apr 2019 21:00:20 +0200
+Subject: [PATCH] Fix musl build
+
+Fixes compilation error on musl:
+| ../macchanger-1.7.0/src/netinfo.c:116:26: error: expected ';' before 'epa'
+| req.ifr_data = (caddr_t)epa;
+
+Missing data type is defined in <sys/types.h>.
+
+Signed-off-by: Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>
+---
+Upstream-Status: Pending
+
+ src/netinfo.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/netinfo.c b/src/netinfo.c
+index 3525123..1aa3293 100644
+--- a/src/netinfo.c
++++ b/src/netinfo.c
+@@ -28,6 +28,7 @@
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/ioctl.h>
++#include <sys/types.h>
+
+ #include <linux/ethtool.h>
+ #include <linux/sockios.h>
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb b/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb
deleted file mode 100644
index a90177f19a..0000000000
--- a/meta-networking/recipes-support/macchanger/macchanger_1.5.0.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Tool to view/change network interface MAC addresses"
-DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces."
-HOMEPAGE = "http://www.alobbs.com/macchanger"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-SECTION = "net"
-
-SRC_URI = "${GNU_MIRROR}/macchanger/${BPN}-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "79b7cdaeca3d8ebafa764c4b0dd03ab7"
-SRC_URI[sha256sum] = "d44bfa27cb29c5a718627cb3ef3aa42eb5130426545eb2031120826cd73fa8fe"
-
-FILES_${PN} = " \
- ${bindir}/${BPN} \
- ${datadir}/${BPN}/wireless.list \
- ${datadir}/${BPN}/OUI.list \
-"
-
-FILES_${PN}-doc = " \
- ${datadir}/info \
- ${datadir}/man \
-"
-
-inherit autotools
diff --git a/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb b/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb
new file mode 100644
index 0000000000..f965c0db1b
--- /dev/null
+++ b/meta-networking/recipes-support/macchanger/macchanger_1.7.0.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Tool to view/change network interface MAC addresses"
+DESCRIPTION = "A GNU/Linux utility for viewing/manipulating the MAC address of network interfaces."
+HOMEPAGE = "https://github.com/alobbs/macchanger"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+SECTION = "net"
+
+SRC_URI = "https://github.com/alobbs/macchanger/releases/download/${PV}/${BPN}-${PV}.tar.gz \
+ file://0001-Fix-musl-build.patch \
+"
+SRC_URI[md5sum] = "ca56f16142914337391dac91603eb332"
+SRC_URI[sha256sum] = "dae2717c270fd5f62d790dbf80c19793c651b1b26b62c101b82d5fdf25a845bf"
+
+FILES:${PN} = " \
+ ${bindir}/${BPN} \
+ ${datadir}/${BPN}/wireless.list \
+ ${datadir}/${BPN}/OUI.list \
+"
+
+FILES:${PN}-doc = " \
+ ${datadir}/info \
+ ${datadir}/man \
+"
+
+inherit autotools
diff --git a/meta-networking/recipes-support/mctp/mctp_1.1.bb b/meta-networking/recipes-support/mctp/mctp_1.1.bb
new file mode 100644
index 0000000000..bf3961be42
--- /dev/null
+++ b/meta-networking/recipes-support/mctp/mctp_1.1.bb
@@ -0,0 +1,42 @@
+SUMMARY = "Management Component Control Protocol utilities"
+HOMEPAGE = "http://www.github.com/CodeConstruct/mctp"
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4cc91856b08b094b4f406a29dc61db21"
+
+SRCREV = "a591ad885aa28f113cb45870b2fd5bce48378d6f"
+
+SRC_URI = "git://github.com/CodeConstruct/mctp;branch=main;protocol=https"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig systemd
+
+PACKAGECONFIG ??= " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+"
+
+# mctpd will only be built if pkg-config detects libsystemd; in which case
+# we'll want to declare the dep and install the service.
+PACKAGECONFIG[systemd] = ",,systemd,libsystemd"
+SYSTEMD_SERVICE:${PN} = "mctpd.service mctp.target mctp-local.target"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
+
+do_install:append () {
+ if ${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${S}/conf/mctpd.service \
+ ${D}${systemd_system_unitdir}/mctpd.service
+ install -m 0644 ${S}/conf/*.target \
+ ${D}${systemd_system_unitdir}/
+ install -d ${D}${datadir}/dbus-1/system.d
+ install -m 0644 ${S}/conf/mctpd-dbus.conf \
+ ${D}${datadir}/dbus-1/system.d/mctpd.conf
+ fi
+}
+
+FILES:${PN} += " \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', \
+ '${datadir}/dbus-1/system.d/mctpd.conf', '', d)} \
+"
diff --git a/meta-networking/recipes-support/mdio-tools/mdio-netlink_1.3.1.bb b/meta-networking/recipes-support/mdio-tools/mdio-netlink_1.3.1.bb
new file mode 100644
index 0000000000..b50d33f908
--- /dev/null
+++ b/meta-networking/recipes-support/mdio-tools/mdio-netlink_1.3.1.bb
@@ -0,0 +1,13 @@
+require mdio-tools.inc
+
+DEPENDS += "virtual/kernel libmnl"
+# This module requires Linux 5.6 higher
+
+S = "${WORKDIR}/git/kernel"
+
+inherit module
+
+EXTRA_OEMAKE = "KDIR=${STAGING_KERNEL_DIR}"
+MODULES_INSTALL_TARGET = "install"
+
+RPROVIDES:${PN} += "kernel-module-mdio-netlink"
diff --git a/meta-networking/recipes-support/mdio-tools/mdio-tools.inc b/meta-networking/recipes-support/mdio-tools/mdio-tools.inc
new file mode 100644
index 0000000000..b99ce82810
--- /dev/null
+++ b/meta-networking/recipes-support/mdio-tools/mdio-tools.inc
@@ -0,0 +1,8 @@
+DESCRIPTION = "A low-level debug tool for communicating with devices attached to an MDIO bus"
+SECTION = "networking"
+HOMEPAGE = "https://github.com/wkz/mdio-tools"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/git/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+SRC_URI = "git://github.com/wkz/mdio-tools.git;protocol=https;branch=master"
+SRCREV = "f74eaf38dbda441df4fcaeb21ca4465957953a2f"
diff --git a/meta-networking/recipes-support/mdio-tools/mdio-tools_1.3.1.bb b/meta-networking/recipes-support/mdio-tools/mdio-tools_1.3.1.bb
new file mode 100644
index 0000000000..0c64889bc3
--- /dev/null
+++ b/meta-networking/recipes-support/mdio-tools/mdio-tools_1.3.1.bb
@@ -0,0 +1,9 @@
+require mdio-tools.inc
+
+DEPENDS += "virtual/kernel libmnl"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig autotools
+
+RDEPENDS:${PN} = "kernel-module-mdio-netlink"
diff --git a/meta-networking/recipes-support/memcached/memcached/0001-Fix-function-protypes.patch b/meta-networking/recipes-support/memcached/memcached/0001-Fix-function-protypes.patch
new file mode 100644
index 0000000000..15ef54f80e
--- /dev/null
+++ b/meta-networking/recipes-support/memcached/memcached/0001-Fix-function-protypes.patch
@@ -0,0 +1,110 @@
+From 6021d3d60e64d9174f41515d2d962df9b5d7645e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 29 Aug 2022 17:15:28 -0700
+Subject: [PATCH] Fix function protypes
+
+clang-15+ has started diagnosing them as errors
+
+thread.c:925:18: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
+| void STATS_UNLOCK() {
+| ^
+| void
+
+Upstream-Status: Submitted [https://github.com/memcached/memcached/pull/928]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ assoc.c | 4 ++--
+ memcached.c | 4 ++--
+ slabs.c | 2 +-
+ testapp.c | 2 +-
+ thread.c | 4 ++--
+ 5 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/assoc.c b/assoc.c
+index bc68695..01063a9 100644
+--- a/assoc.c
++++ b/assoc.c
+@@ -261,7 +261,7 @@ static void *assoc_maintenance_thread(void *arg) {
+
+ static pthread_t maintenance_tid;
+
+-int start_assoc_maintenance_thread() {
++int start_assoc_maintenance_thread(void) {
+ int ret;
+ char *env = getenv("MEMCACHED_HASH_BULK_MOVE");
+ if (env != NULL) {
+@@ -279,7 +279,7 @@ int start_assoc_maintenance_thread() {
+ return 0;
+ }
+
+-void stop_assoc_maintenance_thread() {
++void stop_assoc_maintenance_thread(void) {
+ mutex_lock(&maintenance_lock);
+ do_run_maintenance_thread = 0;
+ pthread_cond_signal(&maintenance_cond);
+diff --git a/memcached.c b/memcached.c
+index 7871fe8..4d3b54a 100644
+--- a/memcached.c
++++ b/memcached.c
+@@ -84,7 +84,7 @@ static int try_read_command_udp(conn *c);
+ static enum try_read_result try_read_network(conn *c);
+ static enum try_read_result try_read_udp(conn *c);
+
+-static int start_conn_timeout_thread();
++static int start_conn_timeout_thread(void);
+
+ /* stats */
+ static void stats_init(void);
+@@ -374,7 +374,7 @@ static void *conn_timeout_thread(void *arg) {
+ return NULL;
+ }
+
+-static int start_conn_timeout_thread() {
++static int start_conn_timeout_thread(void) {
+ int ret;
+
+ if (settings.idle_timeout == 0)
+diff --git a/slabs.c b/slabs.c
+index 3c78d8a..0dadd35 100644
+--- a/slabs.c
++++ b/slabs.c
+@@ -638,7 +638,7 @@ static void *memory_allocate(size_t size) {
+ }
+
+ /* Must only be used if all pages are item_size_max */
+-static void memory_release() {
++static void memory_release(void) {
+ void *p = NULL;
+ if (mem_base != NULL)
+ return;
+diff --git a/testapp.c b/testapp.c
+index 5face54..387a847 100644
+--- a/testapp.c
++++ b/testapp.c
+@@ -80,7 +80,7 @@ static struct conn *con = NULL;
+ static bool allow_closed_read = false;
+ static bool enable_ssl = false;
+
+-static void close_conn() {
++static void close_conn(void) {
+ if (con == NULL) return;
+ #ifdef TLS
+ if (con->ssl) {
+diff --git a/thread.c b/thread.c
+index d5ed052..f5efdc3 100644
+--- a/thread.c
++++ b/thread.c
+@@ -918,11 +918,11 @@ enum store_item_type store_item(item *item, int comm, conn* c) {
+
+ /******************************* GLOBAL STATS ******************************/
+
+-void STATS_LOCK() {
++void STATS_LOCK(void) {
+ pthread_mutex_lock(&stats_lock);
+ }
+
+-void STATS_UNLOCK() {
++void STATS_UNLOCK(void) {
+ pthread_mutex_unlock(&stats_lock);
+ }
+
diff --git a/meta-networking/recipes-support/memcached/memcached/memcached-add-hugetlbfs-check.patch b/meta-networking/recipes-support/memcached/memcached/memcached-add-hugetlbfs-check.patch
index 544b840fea..45428ed234 100644
--- a/meta-networking/recipes-support/memcached/memcached/memcached-add-hugetlbfs-check.patch
+++ b/meta-networking/recipes-support/memcached/memcached/memcached-add-hugetlbfs-check.patch
@@ -9,24 +9,19 @@ Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
configure.ac | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
-diff --git a/configure.ac b/configure.ac
-index 7f22f21..21691b9 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -314,7 +314,12 @@ fi
- dnl ----------------------------------------------------------------------------
+@@ -488,8 +488,12 @@ if test "x$enable_static" = "xyes"; then
+ fi
- AC_SEARCH_LIBS(umem_cache_create, umem)
--AC_SEARCH_LIBS(gethugepagesizes, hugetlbfs)
+ dnl ----------------------------------------------------------------------------
+AC_ARG_ENABLE(hugetlbfs,
+ [AS_HELP_STRING([--enable-hugetlbfs],[Enable hugetlbfs])])
-+
+
+-AC_SEARCH_LIBS(gethugepagesizes, hugetlbfs)
+if test "x$enable_hugetlbfs" = "xyes"; then
+ AC_SEARCH_LIBS(gethugepagesizes, hugetlbfs)
+fi
AC_HEADER_STDBOOL
AH_BOTTOM([#if HAVE_STDBOOL_H
---
-1.8.3.4
-
diff --git a/meta-networking/recipes-support/memcached/memcached_1.5.10.bb b/meta-networking/recipes-support/memcached/memcached_1.6.17.bb
index d2cafc9f6d..270ad5486d 100644
--- a/meta-networking/recipes-support/memcached/memcached_1.5.10.bb
+++ b/meta-networking/recipes-support/memcached/memcached_1.6.17.bb
@@ -12,21 +12,24 @@ LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=7e5ded7363d335e1bb18013ca08046ff"
-inherit autotools
+inherit autotools pkgconfig
DEPENDS += "libevent"
-RDEPENDS_${PN} += "perl perl-module-posix perl-module-autoloader \
+RDEPENDS:${PN} += "perl perl-module-posix perl-module-autoloader \
perl-module-tie-hash bash \
"
SRC_URI = "http://www.memcached.org/files/${BP}.tar.gz \
file://memcached-add-hugetlbfs-check.patch \
+ file://0001-Fix-function-protypes.patch \
"
-SRC_URI[md5sum] = "8462616b554183a75845b03c56837cca"
-SRC_URI[sha256sum] = "494c060dbd96d546c74ab85a3cc3984d009b4423767ac33e05dd2340c01f1c4b"
+SRC_URI[sha256sum] = "2055e373613d8fc21529aff9f0adce3e23b9ce01ba0478d30e7941d9f2bd1224"
# set the same COMPATIBLE_HOST as libhugetlbfs
-COMPATIBLE_HOST = '(i.86|x86_64|powerpc|powerpc64|arm).*-linux'
+COMPATIBLE_HOST = "(i.86|x86_64|powerpc|powerpc64|aarch64|arm).*-linux*"
+
+# assoc.c:83:9: error: variable 'depth' set but not used [-Werror,-Wunused-but-set-variable]
+CFLAGS:append:toolchain-clang = " -Wno-error=unused-but-set-variable"
python __anonymous () {
endianness = d.getVar('SITEINFO_ENDIANNESS')
@@ -44,7 +47,7 @@ inherit update-rc.d
INITSCRIPT_NAME = "memcached"
INITSCRIPT_PARAMS = "defaults"
-do_install_append() {
+do_install:append() {
install -D -m 755 ${S}/scripts/memcached-init ${D}${sysconfdir}/init.d/memcached
mkdir -p ${D}/usr/share/memcached/scripts
install -m 755 ${S}/scripts/memcached-tool ${D}/usr/share/memcached/scripts
diff --git a/meta-networking/recipes-support/mtr/mtr_0.87.bb b/meta-networking/recipes-support/mtr/mtr_0.95.bb
index 9d3275e2d2..92f9c4bfc0 100644
--- a/meta-networking/recipes-support/mtr/mtr_0.87.bb
+++ b/meta-networking/recipes-support/mtr/mtr_0.95.bb
@@ -4,14 +4,12 @@ HOMEPAGE = "http://www.bitwizard.nl/mtr/"
SECTION = "net"
DEPENDS = "ncurses"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
- file://ui/mtr.c;beginline=5;endline=16;md5=af1fafbbfa1bfd48af839f4bb3221106"
+ file://ui/mtr.c;beginline=5;endline=16;md5=00a894a39d53726a27386534d1c4e468"
-PV .= "+git${SRCPV}"
-
-SRCREV = "e6d0a7e93129e8023654ebf58dfa8135d1b1af56"
-SRC_URI = "git://github.com/traviscross/mtr"
+SRCREV = "852e5617fbf331cf292723702161f0ac9afe257c"
+SRC_URI = "git://github.com/traviscross/mtr;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -24,4 +22,4 @@ PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
PACKAGES += "${PN}-bash-completions"
-FILES_${PN}-bash-completions = "${datadir}/bash-completion/"
+FILES:${PN}-bash-completions = "${datadir}/bash-completion/"
diff --git a/meta-networking/recipes-support/nbd/nbd_3.17.bb b/meta-networking/recipes-support/nbd/nbd_3.17.bb
deleted file mode 100644
index 356023681b..0000000000
--- a/meta-networking/recipes-support/nbd/nbd_3.17.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-DESCRIPTION = "Network Block Device"
-HOMEPAGE = "http://nbd.sourceforge.net"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-DEPENDS = "glib-2.0"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[md5sum] = "98b74c655ed94a66686c5ba19480d98e"
-SRC_URI[sha256sum] = "d95c6bb1a3ab33b953af99b73fb4833e123bd25433513b32d57dbeb1a0a0d189"
-
-inherit autotools pkgconfig
-
-PACKAGES = "${PN}-client ${PN}-server ${PN}-dbg ${PN}-trdump ${PN}-doc"
-
-FILES_${PN}-client = "${sbindir}/${BPN}-client"
-FILES_${PN}-server = "${bindir}/${BPN}-server"
-FILES_${PN}-trdump = "${bindir}/${BPN}-trdump"
diff --git a/meta-networking/recipes-support/nbd/nbd_3.24.bb b/meta-networking/recipes-support/nbd/nbd_3.24.bb
new file mode 100644
index 0000000000..da9f829523
--- /dev/null
+++ b/meta-networking/recipes-support/nbd/nbd_3.24.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Network Block Device"
+HOMEPAGE = "http://nbd.sourceforge.net"
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = "autoconf-archive bison-native glib-2.0 libnl"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
+SRC_URI[md5sum] = "a6d9e7bbc311a2ed07ef84a58b82b5dd"
+SRC_URI[sha256sum] = "6877156d23a7b33f75eee89d2f5c2c91c542afc3cdcb636dea5a88539a58d10c"
+
+inherit autotools pkgconfig
+
+PACKAGES = "${PN}-client ${PN}-dbg ${PN}-doc ${PN}-server ${PN}-trdump ${PN}-trplay"
+
+FILES:${PN}-client = "${sbindir}/${BPN}-client"
+FILES:${PN}-server = "${bindir}/${BPN}-server"
+FILES:${PN}-trdump = "${bindir}/${BPN}-trdump"
+FILES:${PN}-trplay = "${bindir}/${BPN}-trplay"
diff --git a/meta-networking/recipes-support/nbdkit/nbdkit/0001-plugins-Avoid-absolute-buildpaths-in-binaries.patch b/meta-networking/recipes-support/nbdkit/nbdkit/0001-plugins-Avoid-absolute-buildpaths-in-binaries.patch
new file mode 100644
index 0000000000..75377dfb80
--- /dev/null
+++ b/meta-networking/recipes-support/nbdkit/nbdkit/0001-plugins-Avoid-absolute-buildpaths-in-binaries.patch
@@ -0,0 +1,38 @@
+From 1ccbd8fdbd2e367a702e48c8703b2f010d067b23 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 22 May 2023 18:16:24 -0700
+Subject: [PATCH] plugins: Avoid absolute buildpaths in binaries
+
+plugins seems to add CC to the plugins shared objects via compiler
+cmdline which ends up in real code. Therefore scrub buildpaths from CC
+and CFLAGS before passing them to plugin's build.
+
+Upstream-Status: Submitted [https://gitlab.com/nbdkit/nbdkit/-/merge_requests/30]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plugins/cc/Makefile.am | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/plugins/cc/Makefile.am b/plugins/cc/Makefile.am
+index df8b5d15..80586a17 100644
+--- a/plugins/cc/Makefile.am
++++ b/plugins/cc/Makefile.am
+@@ -44,9 +44,12 @@ nbdkit_cc_plugin_la_SOURCES = \
+ $(top_srcdir)/include/nbdkit-plugin.h \
+ $(NULL)
+
++workdir := $(shell dirname $(abs_top_builddir))
++cc_no_sysroot := $(shell echo \"$(CC)\"|sed -e 's#$(workdir)#<WORKDIR>#g')
++cflags_no_sysroot := $(shell echo \"$(CFLAGS)\"|sed -e 's#$(workdir)#<WORKDIR>#g')
+ nbdkit_cc_plugin_la_CPPFLAGS = \
+- -DCC="\"$(CC)\"" \
+- -DCFLAGS="\"$(CFLAGS)\"" \
++ -DCC=\"$(cc_no_sysroot)\" \
++ -DCFLAGS=\"$(cflags_no_sysroot)\" \
+ -I$(top_srcdir)/include \
+ -I$(top_builddir)/include \
+ -I$(top_srcdir)/common/include \
+--
+2.40.1
+
diff --git a/meta-networking/recipes-support/nbdkit/nbdkit_1.33.11.bb b/meta-networking/recipes-support/nbdkit/nbdkit_1.33.11.bb
new file mode 100644
index 0000000000..cdf2677f13
--- /dev/null
+++ b/meta-networking/recipes-support/nbdkit/nbdkit_1.33.11.bb
@@ -0,0 +1,33 @@
+SUMMARY = "nbdkit is a toolkit for creating NBD servers."
+DESCRIPTION = "NBD — Network Block Device — is a protocol \
+for accessing Block Devices (hard disks and disk-like things) \
+over a Network. \
+\
+nbdkit is a toolkit for creating NBD servers."
+
+HOMEPAGE = "https://github.com/libguestfs/nbdkit"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=26250adec854bc317493f6fb98efe049"
+
+SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https;branch=master \
+ file://0001-plugins-Avoid-absolute-buildpaths-in-binaries.patch"
+SRCREV = "6c02c6a469d62a047f230b0ccf03f72328312d2b"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "curl xz e2fsprogs zlib"
+
+# autotools-brokensep is needed as nbdkit does not support build in external directory
+inherit pkgconfig python3native perlnative bash-completion autotools-brokensep
+
+# Those are required to build standalone
+EXTRA_OECONF = " --without-libvirt --without-libguestfs --disable-perl"
+
+# Disable some extended support (not desired for small embedded systems)
+#EXTRA_OECONF += " --disable-python"
+#EXTRA_OECONF += " --disable-ocaml"
+#EXTRA_OECONF += " --disable-rust"
+#EXTRA_OECONF += " --disable-ruby"
+#EXTRA_OECONF += " --disable-tcl"
+#EXTRA_OECONF += " --disable-lua"
+#EXTRA_OECONF += " --disable-vddk"
diff --git a/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch b/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch
new file mode 100644
index 0000000000..6226e2c038
--- /dev/null
+++ b/meta-networking/recipes-support/ncp/libowfat/0001-Depend-on-haveuint128.h-for-umult64.c.patch
@@ -0,0 +1,44 @@
+From 7f6a104a682d59f28f7df889129f4467cc45e912 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 6 Nov 2019 19:55:42 -0800
+Subject: [PATCH] Depend on haveuint128.h for umult64.c
+
+This fixes parallel build issue e.g.
+mult/umult64.c:9:10: fatal error: 'haveuint128.h' file not found
+ ^~~~~~~~~~~~~~~
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ GNUmakefile | 1 +
+ Makefile | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/GNUmakefile b/GNUmakefile
+index 3f3193d..751ca60 100644
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -126,6 +126,7 @@ $(CDB_OBJS): cdb.h uint32.h
+ $(CRITBIT_OBJS): critbit.h
+
+ mult64.o: haveuint128.h
++umult64.o: haveuint128.h
+
+
+ iob_addbuf.o iob_addfile.o iob_new.o iob_reset.o iob_send.o: iob_internal.h iob.h
+diff --git a/Makefile b/Makefile
+index 0d08da4..02df6c6 100644
+--- a/Makefile
++++ b/Makefile
+@@ -430,7 +430,7 @@ range_str4inbuf.o: mult/range_str4inbuf.c rangecheck.h
+ range_strinbuf.o: mult/range_strinbuf.c rangecheck.h
+ umult16.o: mult/umult16.c uint16.h
+ umult32.o: mult/umult32.c uint32.h
+-umult64.o: mult/umult64.c uint64.h
++umult64.o: mult/umult64.c uint64.h haveuint128.h
+ open_append.o: open/open_append.c open.h
+ open_excl.o: open/open_excl.c open.h
+ open_read.o: open/open_read.c open.h
+--
+2.24.0
+
diff --git a/meta-networking/recipes-support/ncp/libowfat/0001-replace-__pure__-with-compiler-attribute-pure.patch b/meta-networking/recipes-support/ncp/libowfat/0001-replace-__pure__-with-compiler-attribute-pure.patch
new file mode 100644
index 0000000000..880d80b106
--- /dev/null
+++ b/meta-networking/recipes-support/ncp/libowfat/0001-replace-__pure__-with-compiler-attribute-pure.patch
@@ -0,0 +1,562 @@
+From 408e7dfaf2eb735804f62728de679972867c30d5 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 3 May 2021 13:53:10 -0700
+Subject: [PATCH] replace __pure__ with compiler attribute 'pure'
+
+Remove defining __deprecated__
+
+Upstream-Status: Inappropriate [Untested with dietlibc]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ byte.h | 22 ++++++----
+ critbit.h | 12 ++++--
+ fmt.h | 100 +++++++++++++++++++++++---------------------
+ str.h | 22 ++++++----
+ stralloc.h | 20 +++++----
+ 5 files changed, 103 insertions(+), 73 deletions(-)
+
+--- a/byte.h
++++ b/byte.h
+@@ -2,6 +2,16 @@
+ #ifndef BYTE_H
+ #define BYTE_H
+
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
++#endif
++
+ /* for size_t: */
+ #include <stddef.h>
+
+@@ -9,17 +19,13 @@
+ extern "C" {
+ #endif
+
+-#ifndef __pure__
+-#define __pure__
+-#endif
+-
+ /* byte_chr returns the smallest integer i between 0 and len-1
+ * inclusive such that one[i] equals needle, or len if not found. */
+-size_t byte_chr(const void* haystack, size_t len, char needle) __pure__;
++size_t byte_chr(const void* haystack, size_t len, char needle) __PURE;
+
+ /* byte_rchr returns the largest integer i between 0 and len-1 inclusive
+ * such that one[i] equals needle, or len if not found. */
+-size_t byte_rchr(const void* haystack,size_t len,char needle) __pure__;
++size_t byte_rchr(const void* haystack,size_t len,char needle) __PURE;
+
+ /* byte_copy copies in[0] to out[0], in[1] to out[1], ... and in[len-1]
+ * to out[len-1]. */
+@@ -34,14 +40,14 @@ void byte_copyr(void* out, size_t len, c
+ * than, equal to, or greater than the string b[0], b[1], ...,
+ * b[len-1]. When the strings are different, byte_diff does not read
+ * bytes past the first difference. */
+-int byte_diff(const void* a, size_t len, const void* b) __pure__;
++int byte_diff(const void* a, size_t len, const void* b) __PURE;
+
+ /* byte_zero sets the bytes out[0], out[1], ..., out[len-1] to 0 */
+ void byte_zero(void* out, size_t len);
+
+ #define byte_equal(s,n,t) (!byte_diff((s),(n),(t)))
+
+-int byte_equal_notimingattack(const void* a, size_t len,const void* b) __pure__;
++int byte_equal_notimingattack(const void* a, size_t len,const void* b) __PURE;
+
+ #if defined(__i386__) || defined(__x86_64__)
+ #define UNALIGNED_ACCESS_OK
+--- a/critbit.h
++++ b/critbit.h
+@@ -8,15 +8,21 @@ extern "C" {
+ /* for __pure__ if we are compiling under dietlibc */
+ #include <stddef.h>
+
+-#ifndef __pure__
+-#define __pure__
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
+ #endif
+
+ typedef struct {
+ void *root;
+ } critbit0_tree;
+
+-int critbit0_contains(critbit0_tree *t, const char *u) __pure__;
++int critbit0_contains(critbit0_tree *t, const char *u) __PURE;
+ int critbit0_insert(critbit0_tree *t, const char *u);
+ int critbit0_delete(critbit0_tree *t, const char *u);
+ void critbit0_clear(critbit0_tree *t);
+--- a/fmt.h
++++ b/fmt.h
+@@ -2,6 +2,16 @@
+ #ifndef FMT_H
+ #define FMT_H
+
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
++#endif
++
+ /* for size_t: */
+ #include <stddef.h>
+ /* for uint32_t */
+@@ -15,10 +25,6 @@
+ extern "C" {
+ #endif
+
+-#ifndef __pure__
+-#define __pure__
+-#endif
+-
+ #define FMT_LONG 41 /* enough space to hold -2^127 in decimal, plus \0 */
+ #define FMT_ULONG 40 /* enough space to hold 2^128 - 1 in decimal, plus \0 */
+ #define FMT_8LONG 44 /* enough space to hold 2^128 - 1 in octal, plus \0 */
+@@ -46,31 +52,31 @@ extern "C" {
+ /* convert signed src integer -23 to ASCII '-','2','3', return number of
+ * bytes of value in output format (3 in this example).
+ * If dest is not NULL, write result to dest */
+-size_t fmt_long(char *dest,signed long src) __pure__;
++size_t fmt_long(char *dest,signed long src) __PURE;
+
+ /* convert unsigned src integer 23 to ASCII '2','3', return number of
+ * bytes of value in output format (2 in this example).
+ * If dest is not NULL, write result to dest */
+-size_t fmt_ulong(char *dest,unsigned long src) __pure__;
++size_t fmt_ulong(char *dest,unsigned long src) __PURE;
+
+ /* convert unsigned src integer 0x23 to ASCII '2','3', return number of
+ * bytes of value in output format (2 in this example).
+ * If dest is not NULL, write result to dest */
+-size_t fmt_xlong(char *dest,unsigned long src) __pure__;
++size_t fmt_xlong(char *dest,unsigned long src) __PURE;
+
+ /* convert unsigned src integer 023 to ASCII '2','3', return number of
+ * bytes of value in output format (2 in this example).
+ * If dest is not NULL, write result to dest */
+-size_t fmt_8long(char *dest,unsigned long src) __pure__;
++size_t fmt_8long(char *dest,unsigned long src) __PURE;
+
+ /* like fmt_long but for long long */
+-size_t fmt_longlong(char *dest,signed long long src) __pure__;
++size_t fmt_longlong(char *dest,signed long long src) __PURE;
+
+ /* like fmt_ulong but for unsigned long long */
+-size_t fmt_ulonglong(char *dest,unsigned long long src) __pure__;
++size_t fmt_ulonglong(char *dest,unsigned long long src) __PURE;
+
+ /* like fmt_xlong but for unsigned long long */
+-size_t fmt_xlonglong(char *dest,unsigned long long src) __pure__;
++size_t fmt_xlonglong(char *dest,unsigned long long src) __PURE;
+
+ #define fmt_uint(dest,src) fmt_ulong(dest,src)
+ #define fmt_int(dest,src) fmt_long(dest,src)
+@@ -81,22 +87,22 @@ size_t fmt_xlonglong(char *dest,unsigned
+ * Does not truncate! */
+ /* fmt_ulong0(buf,23,4) -> '0','0','2','3' return 4 */
+ /* fmt_ulong0(buf,234,2) -> '2','3','4', return 3 */
+-size_t fmt_ulong0(char *,unsigned long src,size_t padto) __pure__;
++size_t fmt_ulong0(char *,unsigned long src,size_t padto) __PURE;
+
+ #define fmt_uint0(buf,src,padto) fmt_ulong0(buf,src,padto)
+
+ /* convert src double 1.7 to ASCII '1','.','7', return length.
+ * If dest is not NULL, write result to dest */
+-size_t fmt_double(char *dest, double d,int max,int prec) __pure__;
++size_t fmt_double(char *dest, double d,int max,int prec) __PURE;
+
+ /* if src is negative, write '-' and return 1.
+ * if src is positive, write '+' and return 1.
+ * otherwise return 0 */
+-size_t fmt_plusminus(char *dest,int src) __pure__;
++size_t fmt_plusminus(char *dest,int src) __PURE;
+
+ /* if src is negative, write '-' and return 1.
+ * otherwise return 0. */
+-size_t fmt_minus(char *dest,int src) __pure__;
++size_t fmt_minus(char *dest,int src) __PURE;
+
+ /* copy str to dest until \0 byte, return number of copied bytes. */
+ /* fmt_str(NULL,str) == strlen(str) */
+@@ -108,11 +114,11 @@ size_t fmt_minus(char *dest,int src) __p
+ * This is more efficient because strcat needs to scan the string to
+ * find the end and append.
+ */
+-size_t fmt_str(char *dest,const char *src) __pure__;
++size_t fmt_str(char *dest,const char *src) __PURE;
+
+ /* copy str to dest until \0 byte or limit bytes copied.
+ * return number of copied bytes. */
+-size_t fmt_strn(char *dest,const char *src,size_t limit) __pure__;
++size_t fmt_strn(char *dest,const char *src,size_t limit) __PURE;
+
+ /* copy n bytes from src to dest, return n */
+ static inline size_t fmt_copybytes(char* dest,const char* src,size_t n) {
+@@ -124,56 +130,56 @@ static inline size_t fmt_copybytes(char*
+ * write padlen-srclen spaces, if that is >= 0. Then copy srclen
+ * characters from src. Truncate only if total length is larger than
+ * maxlen. Return number of characters written. */
+-size_t fmt_pad(char* dest,const char* src,size_t srclen,size_t padlen,size_t maxlen) __pure__;
++size_t fmt_pad(char* dest,const char* src,size_t srclen,size_t padlen,size_t maxlen) __PURE;
+
+ /* "foo" -> "foo "
+ * append padlen-srclen spaces after dest, if that is >= 0. Truncate
+ * only if total length is larger than maxlen. Return number of
+ * characters written. */
+-size_t fmt_fill(char* dest,size_t srclen,size_t padlen,size_t maxlen) __pure__;
++size_t fmt_fill(char* dest,size_t srclen,size_t padlen,size_t maxlen) __PURE;
+
+ /* 1 -> "1", 4900 -> "4.9k", 2300000 -> "2.3M" */
+-size_t fmt_human(char* dest,unsigned long long l) __pure__;
++size_t fmt_human(char* dest,unsigned long long l) __PURE;
+
+ /* 1 -> "1", 4900 -> "4.8k", 2300000 -> "2.2M" */
+-size_t fmt_humank(char* dest,unsigned long long l) __pure__;
++size_t fmt_humank(char* dest,unsigned long long l) __PURE;
+
+ /* "Sun, 06 Nov 1994 08:49:37 GMT" */
+ size_t fmt_httpdate(char* dest,time_t t); /* not marked pure because it calls gmtime */
+
+ /* "2014-05-27T19:22:16.247Z" */
+-size_t fmt_iso8601(char* dest,time_t t) __pure__;
++size_t fmt_iso8601(char* dest,time_t t) __PURE;
+
+ #define FMT_UTF8 5
+ #define FMT_ASN1LENGTH 17 /* enough space to hold 2^128-1 */
+ #define FMT_ASN1TAG 19 /* enough space to hold 2^128-1 */
+
+ /* some variable length encodings for integers */
+-size_t fmt_utf8(char* dest,uint32_t n) __pure__; /* can store 0-0x7fffffff */
+-size_t fmt_asn1derlength(char* dest,unsigned long long l) __pure__; /* 0-0x7f: 1 byte, above that 1+bytes_needed bytes */
+-size_t fmt_asn1dertag(char* dest,unsigned long long l) __pure__; /* 1 byte for each 7 bits; upper bit = more bytes coming */
++size_t fmt_utf8(char* dest,uint32_t n) __PURE; /* can store 0-0x7fffffff */
++size_t fmt_asn1derlength(char* dest,unsigned long long l) __PURE; /* 0-0x7f: 1 byte, above that 1+bytes_needed bytes */
++size_t fmt_asn1dertag(char* dest,unsigned long long l) __PURE; /* 1 byte for each 7 bits; upper bit = more bytes coming */
+
+ /* Google Protocol Buffers, https://developers.google.com/protocol-buffers/docs/encoding */
+-size_t fmt_varint(char* dest,unsigned long long l) __pure__; /* protocol buffers encoding; like asn1dertag but little endian */
+-size_t fmt_pb_tag(char* dest,size_t fieldno,unsigned char type) __pure__; /* protocol buffer tag */
+-size_t fmt_pb_type0_int(char* dest,unsigned long long l) __pure__; /* protocol buffers encoding: type 0 bool/enum/int32/uint32/int64/uint64 */
+-size_t fmt_pb_type0_sint(char* dest,signed long long l) __pure__;/* protocol buffers encoding: type 0 sint32/sint64 */
+-size_t fmt_pb_type1_double(char* dest,double d) __pure__; /* protocol buffers encoding: double (64-bit little endian blob) */
+-size_t fmt_pb_type1_fixed64(char* dest,uint64_t l) __pure__; /* protocol buffers encoding: 64-bit little endian blob */
++size_t fmt_varint(char* dest,unsigned long long l) __PURE; /* protocol buffers encoding; like asn1dertag but little endian */
++size_t fmt_pb_tag(char* dest,size_t fieldno,unsigned char type) __PURE; /* protocol buffer tag */
++size_t fmt_pb_type0_int(char* dest,unsigned long long l) __PURE; /* protocol buffers encoding: type 0 bool/enum/int32/uint32/int64/uint64 */
++size_t fmt_pb_type0_sint(char* dest,signed long long l) __PURE;/* protocol buffers encoding: type 0 sint32/sint64 */
++size_t fmt_pb_type1_double(char* dest,double d) __PURE; /* protocol buffers encoding: double (64-bit little endian blob) */
++size_t fmt_pb_type1_fixed64(char* dest,uint64_t l) __PURE; /* protocol buffers encoding: 64-bit little endian blob */
+
+ /* fmt_pb_type2_string can return 0 if (s,l) is clearly invalid */
+-size_t fmt_pb_type2_string(char* dest,const char* s,size_t l) __pure__; /* protocol buffers encoding: varint length + blob */
+-size_t fmt_pb_type5_float(char* dest,float f) __pure__; /* protocol buffers encoding: float (32-bit little endian blob) */
+-size_t fmt_pb_type5_fixed32(char* dest,uint32_t l) __pure__; /* protocol buffers encoding: 32-bit little endian blob */
+-
+-size_t fmt_pb_int(char* dest,size_t fieldno,unsigned long long l) __pure__;
+-size_t fmt_pb_sint(char* dest,size_t fieldno,signed long long l) __pure__;
+-size_t fmt_pb_double(char* dest,size_t fieldno,double d) __pure__;
+-size_t fmt_pb_float(char* dest,size_t fieldno,float f) __pure__;
+-size_t fmt_pb_string(char* dest,size_t fieldno,const char* s,size_t l) __pure__;
++size_t fmt_pb_type2_string(char* dest,const char* s,size_t l) __PURE; /* protocol buffers encoding: varint length + blob */
++size_t fmt_pb_type5_float(char* dest,float f) __PURE; /* protocol buffers encoding: float (32-bit little endian blob) */
++size_t fmt_pb_type5_fixed32(char* dest,uint32_t l) __PURE; /* protocol buffers encoding: 32-bit little endian blob */
++
++size_t fmt_pb_int(char* dest,size_t fieldno,unsigned long long l) __PURE;
++size_t fmt_pb_sint(char* dest,size_t fieldno,signed long long l) __PURE;
++size_t fmt_pb_double(char* dest,size_t fieldno,double d) __PURE;
++size_t fmt_pb_float(char* dest,size_t fieldno,float f) __PURE;
++size_t fmt_pb_string(char* dest,size_t fieldno,const char* s,size_t l) __PURE;
+
+ /* fmt_netstring can return 0 if (src,len) is clearly invalid */
+-size_t fmt_netstring(char* dest,const char* src,size_t len) __pure__;
++size_t fmt_netstring(char* dest,const char* src,size_t len) __PURE;
+
+ /* Marshaling helper functions.
+ * Escape one character, no matter if it needs escaping or not.
+@@ -185,27 +191,27 @@ size_t fmt_netstring(char* dest,const ch
+ * unicode codepoint) may be limited to 0x7f, 0xff or 0x10ffff. */
+
+ /* XML escaping: '&' -> '&amp;', '<' -> '&lt;', 'ö' -> '&#xf6;' */
+-size_t fmt_escapecharxml(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharxml(char* dest,uint32_t ch) __PURE;
+ /* HTML escaping is the same as XML escaping. */
+-size_t fmt_escapecharhtml(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharhtml(char* dest,uint32_t ch) __PURE;
+
+ /* JSON escaping: '\' -> '\\', '"' -> '\"', 'ö' -> '\u00f6' */
+-size_t fmt_escapecharjson(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharjson(char* dest,uint32_t ch) __PURE;
+
+ /* MIME quoted-printable escaping: 'ö' -> '=f6', characters > 0xff not supported */
+-size_t fmt_escapecharquotedprintable(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharquotedprintable(char* dest,uint32_t ch) __PURE;
+
+ /* MIME quoted-printable escaping with UTF-8: 'ö' -> '=c3=b6', characters > 0x7fffffff not supported */
+-size_t fmt_escapecharquotedprintableutf8(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharquotedprintableutf8(char* dest,uint32_t ch) __PURE;
+
+ /* C99 style escaping: '\' -> '\\', newline -> '\n', 0xc2 -> '\302' */
+-size_t fmt_escapecharc(char* dest,uint32_t ch) __pure__;
++size_t fmt_escapecharc(char* dest,uint32_t ch) __PURE;
+
+ /* internal functions, may be independently useful */
+ char fmt_tohex(char c) __attribute__((__const__));
+
+ #define fmt_strm(b,...) fmt_strm_internal(b,__VA_ARGS__,(char*)0)
+-size_t fmt_strm_internal(char* dest,...) __pure__;
++size_t fmt_strm_internal(char* dest,...) __PURE;
+
+ #ifndef MAX_ALLOCA
+ #define MAX_ALLOCA 100000
+--- a/str.h
++++ b/str.h
+@@ -8,8 +8,14 @@
+ extern "C" {
+ #endif
+
+-#ifndef __pure__
+-#define __pure__
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
+ #endif
+
+ /* str_copy copies leading bytes from in to out until \0.
+@@ -21,7 +27,7 @@ size_t str_copy(char *out,const char *in
+ * equal to, or greater than the string b[0], b[1], ..., b[m-1]=='\0'.
+ * If the strings are different, str_diff does not read bytes past the
+ * first difference. */
+-int str_diff(const char *a,const char *b) __pure__;
++int str_diff(const char *a,const char *b) __PURE;
+
+ /* str_diffn returns negative, 0, or positive, depending on whether the
+ * string a[0], a[1], ..., a[n]=='\0' is lexicographically smaller than,
+@@ -29,24 +35,24 @@ int str_diff(const char *a,const char *b
+ * If the strings are different, str_diffn does not read bytes past the
+ * first difference. The strings will be considered equal if the first
+ * limit characters match. */
+-int str_diffn(const char *a,const char *b,size_t limit) __pure__;
++int str_diffn(const char *a,const char *b,size_t limit) __PURE;
+
+ #ifdef __dietlibc__
+ #include <string.h>
+ #define str_len(foo) strlen(foo)
+ #else
+ /* str_len returns the index of \0 in s */
+-size_t str_len(const char *s) __pure__;
++size_t str_len(const char *s) __PURE;
+ #endif
+
+ /* str_chr returns the index of the first occurance of needle or \0 in haystack */
+-size_t str_chr(const char *haystack,char needle) __pure__;
++size_t str_chr(const char *haystack,char needle) __PURE;
+
+ /* str_rchr returns the index of the last occurance of needle or \0 in haystack */
+-size_t str_rchr(const char *haystack,char needle) __pure__;
++size_t str_rchr(const char *haystack,char needle) __PURE;
+
+ /* str_start returns 1 if the b is a prefix of a, 0 otherwise */
+-int str_start(const char *a,const char *b) __pure__;
++int str_start(const char *a,const char *b) __PURE;
+
+ /* convenience shortcut to test for string equality */
+ #define str_equal(s,t) (!str_diff((s),(t)))
+--- a/stralloc.h
++++ b/stralloc.h
+@@ -2,16 +2,22 @@
+ #ifndef STRALLOC_H
+ #define STRALLOC_H
+
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
++#endif
++
+ #include <stddef.h>
+
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+
+-#ifndef __pure__
+-#define __pure__
+-#endif
+-
+ /* stralloc is the internal data structure all functions are working on.
+ * s is the string.
+ * len is the used length of the string.
+@@ -101,17 +107,17 @@ static inline int stralloc_APPEND(strall
+ /* stralloc_starts returns 1 if the \0-terminated string in "in", without
+ * the terminating \0, is a prefix of the string stored in sa. Otherwise
+ * it returns 0. sa must already be allocated. */
+-int stralloc_starts(stralloc* sa,const char* in) __pure__;
++int stralloc_starts(stralloc* sa,const char* in) __PURE;
+
+ /* stralloc_diff returns negative, 0, or positive, depending on whether
+ * a is lexicographically smaller than, equal to, or greater than the
+ * string b. */
+-int stralloc_diff(const stralloc* a,const stralloc* b) __pure__;
++int stralloc_diff(const stralloc* a,const stralloc* b) __PURE;
+
+ /* stralloc_diffs returns negative, 0, or positive, depending on whether
+ * a is lexicographically smaller than, equal to, or greater than the
+ * string b[0], b[1], ..., b[n]=='\0'. */
+-int stralloc_diffs(const stralloc* a,const char* b) __pure__;
++int stralloc_diffs(const stralloc* a,const char* b) __PURE;
+
+ #define stralloc_equal(a,b) (!stralloc_diff((a),(b)))
+ #define stralloc_equals(a,b) (!stralloc_diffs((a),(b)))
+--- a/scan.h
++++ b/scan.h
+@@ -15,8 +15,14 @@
+ extern "C" {
+ #endif
+
+-#ifndef __pure__
+-#define __pure__
++#ifndef __has_attribute
++ #define __has_attribute(x) 0
++#endif
++
++#if __has_attribute(pure)
++#define __PURE __attribute__ ((pure))
++#else
++#define __PURE
+ #endif
+
+ /* This file declared functions used to decode / scan / unmarshal
+@@ -84,18 +90,18 @@ size_t scan_double(const char *in, doubl
+ size_t scan_plusminus(const char *src,signed int *dest);
+
+ /* return the highest integer n<=limit so that isspace(in[i]) for all 0<=i<=n */
+-size_t scan_whitenskip(const char *in,size_t limit) __pure__;
++size_t scan_whitenskip(const char *in,size_t limit) __PURE;
+
+ /* return the highest integer n<=limit so that !isspace(in[i]) for all 0<=i<=n */
+-size_t scan_nonwhitenskip(const char *in,size_t limit) __pure__;
++size_t scan_nonwhitenskip(const char *in,size_t limit) __PURE;
+
+ /* return the highest integer n<=limit so that in[i] is element of
+ * charset (ASCIIZ string) for all 0<=i<=n */
+-size_t scan_charsetnskip(const char *in,const char *charset,size_t limit) __pure__;
++size_t scan_charsetnskip(const char *in,const char *charset,size_t limit) __PURE;
+
+ /* return the highest integer n<=limit so that in[i] is not element of
+ * charset (ASCIIZ string) for all 0<=i<=n */
+-size_t scan_noncharsetnskip(const char *in,const char *charset,size_t limit) __pure__;
++size_t scan_noncharsetnskip(const char *in,const char *charset,size_t limit) __PURE;
+
+ /* try to parse ASCII GMT date; does not understand time zones. */
+ /* example dates:
+@@ -103,17 +109,17 @@ size_t scan_noncharsetnskip(const char *
+ * "Sunday, 06-Nov-94 08:49:37 GMT"
+ * "Sun Nov 6 08:49:37 1994"
+ */
+-size_t scan_httpdate(const char *in,time_t *t) __pure__;
++size_t scan_httpdate(const char *in,time_t *t) __PURE;
+
+ /* try to parse ASCII ISO-8601 date; does not understand time zones. */
+ /* example date: "2014-05-27T19:22:16Z" */
+-size_t scan_iso8601(const char* in,struct timespec* t) __pure__;
++size_t scan_iso8601(const char* in,struct timespec* t) __PURE;
+
+ /* some variable length encodings for integers */
+-size_t scan_utf8(const char* in,size_t len,uint32_t* n) __pure__;
+-size_t scan_utf8_sem(const char* in,size_t len,uint32_t* n) __pure__;
+-size_t scan_asn1derlength(const char* in,size_t len,unsigned long long* n) __pure__;
+-size_t scan_asn1dertag(const char* in,size_t len,unsigned long long* n) __pure__;
++size_t scan_utf8(const char* in,size_t len,uint32_t* n) __PURE;
++size_t scan_utf8_sem(const char* in,size_t len,uint32_t* n) __PURE;
++size_t scan_asn1derlength(const char* in,size_t len,unsigned long long* n) __PURE;
++size_t scan_asn1dertag(const char* in,size_t len,unsigned long long* n) __PURE;
+
+ /* Google protocol buffers */
+ /* A protocol buffer is a sequence of (tag,value).
+@@ -121,16 +127,16 @@ size_t scan_asn1dertag(const char* in,si
+ * which field in your struct is being sent. Integers must have type
+ * 0, double type 1, strings type 2 and floats type 5. However, you
+ * have to check this yourself.
+- */
+-size_t scan_varint(const char* in,size_t len, unsigned long long* n) __pure__; /* internal */
+-size_t scan_pb_tag(const char* in,size_t len, size_t* fieldno,unsigned char* type) __pure__;
++ */
++size_t scan_varint(const char* in,size_t len, unsigned long long* n) __PURE; /* internal */
++size_t scan_pb_tag(const char* in,size_t len, size_t* fieldno,unsigned char* type) __PURE;
+
+ /* Then, depending on the field number, validate the type and call the
+ * corresponding of these functions to parse the value */
+-size_t scan_pb_type0_int(const char* in,size_t len,unsigned long long* l) __pure__;
+-size_t scan_pb_type0_sint(const char* in,size_t len,signed long long* l) __pure__;
+-size_t scan_pb_type1_double(const char* in,size_t len,double* d) __pure__;
+-size_t scan_pb_type1_fixed64(const char* in,size_t len,uint64_t* b) __pure__;
++size_t scan_pb_type0_int(const char* in,size_t len,unsigned long long* l) __PURE;
++size_t scan_pb_type0_sint(const char* in,size_t len,signed long long* l) __PURE;
++size_t scan_pb_type1_double(const char* in,size_t len,double* d) __PURE;
++size_t scan_pb_type1_fixed64(const char* in,size_t len,uint64_t* b) __PURE;
+ /* NOTE: scan_pb_type2_stringlen only parses the length of the string,
+ * not the string itself. It will return the number of bytes parsed in
+ * the length, then set slen to the value of the length integer it just
+@@ -141,9 +147,9 @@ size_t scan_pb_type1_fixed64(const char*
+ * parsing early without having to read and allocate memory for the rest
+ * (potentially gigabytes) of the data announced by one unreasonable
+ * string length value. */
+-size_t scan_pb_type2_stringlen(const char* in,size_t len,const char** string, size_t* slen) __pure__;
+-size_t scan_pb_type5_float(const char* in,size_t len,float* f) __pure__;
+-size_t scan_pb_type5_fixed32(const char* in,size_t len,uint32_t* b) __pure__;
++size_t scan_pb_type2_stringlen(const char* in,size_t len,const char** string, size_t* slen) __PURE;
++size_t scan_pb_type5_float(const char* in,size_t len,float* f) __PURE;
++size_t scan_pb_type5_fixed32(const char* in,size_t len,uint32_t* b) __PURE;
+
+ /* parse a netstring, input buffer is in (len bytes).
+ * if parsing is successful:
+@@ -153,7 +159,7 @@ size_t scan_pb_type5_fixed32(const char*
+ * return 0
+ * Note: *dest will point inside the input buffer!
+ */
+-size_t scan_netstring(const char* in,size_t len,char** dest,size_t* slen) __pure__;
++size_t scan_netstring(const char* in,size_t len,char** dest,size_t* slen) __PURE;
+
+ /* internal function that might be useful independently */
+ /* convert from hex ASCII, return 0 to 15 for success or -1 for failure */
+--- a/scan/scan_httpdate.c
++++ b/scan/scan_httpdate.c
+@@ -1,5 +1,4 @@
+ #define _GNU_SOURCE
+-#define __deprecated__
+ #include "scan.h"
+ #include "byte.h"
+ #include "case.h"
+--- a/scan/scan_iso8601.c
++++ b/scan/scan_iso8601.c
+@@ -1,5 +1,4 @@
+ #define _GNU_SOURCE
+-#define __deprecated__
+ #include "scan.h"
+ #include "byte.h"
+ #include "case.h"
diff --git a/meta-networking/recipes-support/ncp/libowfat_0.31.bb b/meta-networking/recipes-support/ncp/libowfat_0.32.bb
index 4b072f7e7d..94f36f904a 100644
--- a/meta-networking/recipes-support/ncp/libowfat_0.31.bb
+++ b/meta-networking/recipes-support/ncp/libowfat_0.32.bb
@@ -3,12 +3,15 @@ DESCRIPTION = "libowfat is a library of general purpose APIs extracted from Dan
Bernstein's software (libdjb), reimplemented and covered by the GNU \
General Public License Version 2 (no later versions)."
HOMEPAGE = "http://www.fefe.de/libowfat"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-SRC_URI = "https://www.fefe.de/${BPN}/${BP}.tar.xz"
-SRC_URI[md5sum] = "120798fab86cfd72dc6b12284d248dd0"
-SRC_URI[sha256sum] = "d1e4ac1cfccbb7dc51d77d96398e6302d229ba7538158826c84cb4254c7e8a12"
+SRC_URI = "https://www.fefe.de/${BPN}/${BP}.tar.xz \
+ file://0001-Depend-on-haveuint128.h-for-umult64.c.patch \
+ file://0001-replace-__pure__-with-compiler-attribute-pure.patch \
+ "
+SRC_URI[md5sum] = "ee015ccf45cb2bc61c942642038c2bdc"
+SRC_URI[sha256sum] = "f4b9b3d9922dc25bc93adedf9e9ff8ddbebaf623f14c8e7a5f2301bfef7998c1"
EXTRA_OEMAKE = "\
DIET= \
@@ -19,9 +22,11 @@ EXTRA_OEMAKE = "\
do_install() {
make install \
DESTDIR=${D} \
- INCLUDEDIR=${includedir}/${BPN} \
+ INCLUDEDIR=${includedir} \
LIBDIR=${libdir} \
MAN3DIR=${mandir}/man3
}
+ALLOW_EMPTY:${PN} = "1"
+
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/ncp/ncp_1.2.4.bb b/meta-networking/recipes-support/ncp/ncp_1.2.4.bb
index f42223b1f8..516beede5f 100644
--- a/meta-networking/recipes-support/ncp/ncp_1.2.4.bb
+++ b/meta-networking/recipes-support/ncp/ncp_1.2.4.bb
@@ -3,8 +3,8 @@ DESCRIPTION = "ncp is a utility for copying files in a LAN. It has absolutely no
security or integrity checking, no throttling, no features, except \
one: you don't have to type the coordinates of your peer."
HOMEPAGE = "http://www.fefe.de/ncp"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0-only;md5=801f80980d171dd6425610833a22dbe6"
DEPENDS = "libowfat"
SRC_URI = "https://dl.fefe.de/${BP}.tar.bz2"
diff --git a/meta-networking/recipes-support/ndisc6/ndisc6/0001-replace-VLAIS-with-malloc-free-pair.patch b/meta-networking/recipes-support/ndisc6/ndisc6/0001-replace-VLAIS-with-malloc-free-pair.patch
deleted file mode 100644
index dc58b5b79e..0000000000
--- a/meta-networking/recipes-support/ndisc6/ndisc6/0001-replace-VLAIS-with-malloc-free-pair.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 3a7d5396e633e6c02a4583be7faf3d79d0d33748 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 31 Aug 2017 11:14:41 -0700
-Subject: [PATCH 1/2] replace VLAIS with malloc/free pair
-
-Makes it compatible with non-gnu compilers
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- src/trace-icmp.c | 7 +++++--
- src/trace-tcp.c | 14 ++++++++++----
- src/trace-udp.c | 7 +++++--
- 3 files changed, 20 insertions(+), 8 deletions(-)
-
-diff --git a/src/trace-icmp.c b/src/trace-icmp.c
-index 842938e..c76cb54 100644
---- a/src/trace-icmp.c
-+++ b/src/trace-icmp.c
-@@ -43,16 +43,19 @@ send_echo_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- struct
- {
- struct icmp6_hdr ih;
-- uint8_t payload[plen - sizeof (struct icmp6_hdr)];
-+ uint8_t *payload;
- } packet;
- memset (&packet, 0, plen);
-+ packet.payload = malloc(plen - sizeof (struct icmp6_hdr));
-
- packet.ih.icmp6_type = ICMP6_ECHO_REQUEST;
- packet.ih.icmp6_id = htons (getpid ());
- packet.ih.icmp6_seq = htons ((ttl << 8) | (n & 0xff));
- (void)port;
-
-- return send_payload (fd, &packet.ih, plen, ttl);
-+ ssize_t ret = send_payload (fd, &packet.ih, plen, ttl);
-+ free(packet.payload);
-+ return ret;
- }
-
-
-diff --git a/src/trace-tcp.c b/src/trace-tcp.c
-index 940f918..62d22ff 100644
---- a/src/trace-tcp.c
-+++ b/src/trace-tcp.c
-@@ -54,10 +54,11 @@ send_syn_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- struct
- {
- struct tcphdr th;
-- uint8_t payload[plen - sizeof (struct tcphdr)];
-+ uint8_t *payload;
- } packet;
-
- memset (&packet, 0, sizeof (packet));
-+ packet.payload = malloc(plen - sizeof (struct tcphdr));
- packet.th.th_sport = sport;
- packet.th.th_dport = port;
- packet.th.th_seq = htonl ((ttl << 24) | (n << 16) | (uint16_t)getpid ());
-@@ -65,7 +66,9 @@ send_syn_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- packet.th.th_flags = TH_SYN | (ecn ? (TH_ECE | TH_CWR) : 0);
- packet.th.th_win = htons (TCP_WINDOW);
-
-- return send_payload (fd, &packet, plen, ttl);
-+ ssize_t ret = send_payload (fd, &packet, plen, ttl);
-+ free(packet.payload);
-+ return ret;
- }
-
-
-@@ -131,10 +134,11 @@ send_ack_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- struct
- {
- struct tcphdr th;
-- uint8_t payload[plen - sizeof (struct tcphdr)];
-+ uint8_t *payload;
- } packet;
-
- memset (&packet, 0, sizeof (packet));
-+ packet.payload = malloc(plen - sizeof (struct tcphdr));
- packet.th.th_sport = sport;
- packet.th.th_dport = port;
- packet.th.th_ack = htonl ((ttl << 24) | (n << 16) | (uint16_t)getpid ());
-@@ -142,7 +146,9 @@ send_ack_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- packet.th.th_flags = TH_ACK;
- packet.th.th_win = htons (TCP_WINDOW);
-
-- return send_payload (fd, &packet, plen, ttl);
-+ ssize_t ret = send_payload (fd, &packet, plen, ttl);
-+ free(packet.payload);
-+ return ret;
- }
-
-
-diff --git a/src/trace-udp.c b/src/trace-udp.c
-index 4adde6b..a6cbb07 100644
---- a/src/trace-udp.c
-+++ b/src/trace-udp.c
-@@ -46,9 +46,10 @@ send_udp_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- struct
- {
- struct udphdr uh;
-- uint8_t payload[plen - sizeof (struct udphdr)];
-+ uint8_t *payload;
- } packet;
- memset (&packet, 0, plen);
-+ packet.payload = malloc(plen - sizeof (struct udphdr));
-
- (void)n;
- packet.uh.uh_sport = sport;
-@@ -61,7 +62,9 @@ send_udp_probe (int fd, unsigned ttl, unsigned n, size_t plen, uint16_t port)
- /*if (plen > sizeof (struct udphdr))
- packet.payload[0] = (uint8_t)ttl;*/
-
-- return send_payload (fd, &packet, plen, ttl);
-+ ssize_t ret = send_payload (fd, &packet, plen, ttl);
-+ free(packet.payload);
-+ return ret;
- }
-
-
---
-2.14.1
-
diff --git a/meta-networking/recipes-support/ndisc6/ndisc6/0002-Do-not-undef-_GNU_SOURCE.patch b/meta-networking/recipes-support/ndisc6/ndisc6/0002-Do-not-undef-_GNU_SOURCE.patch
deleted file mode 100644
index 3cc2ba80c2..0000000000
--- a/meta-networking/recipes-support/ndisc6/ndisc6/0002-Do-not-undef-_GNU_SOURCE.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 2a50154fbce38fd36be7e14f5cd4a8b03c65c72f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Thu, 31 Aug 2017 11:15:37 -0700
-Subject: [PATCH 2/2] Do not undef _GNU_SOURCE
-
-There are functions from tcp.h which are under _GNU_SOURCE
-in musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- src/trace-tcp.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/src/trace-tcp.c b/src/trace-tcp.c
-index 62d22ff..380008e 100644
---- a/src/trace-tcp.c
-+++ b/src/trace-tcp.c
-@@ -21,7 +21,6 @@
- # include <config.h>
- #endif
-
--#undef _GNU_SOURCE
- #define _DEFAULT_SOURCE 1
-
- #include <string.h>
---
-2.14.1
-
diff --git a/meta-networking/recipes-support/ndisc6/ndisc6_git.bb b/meta-networking/recipes-support/ndisc6/ndisc6_1.0.8.bb
index ec4879752a..a827e7f42a 100644
--- a/meta-networking/recipes-support/ndisc6/ndisc6_git.bb
+++ b/meta-networking/recipes-support/ndisc6/ndisc6_1.0.8.bb
@@ -2,19 +2,18 @@ DESCRIPTION = "This package includes some useful diagnostics tools for \
IPv6 networks, including ndisc6, rdisc6, tcptraceroute6 and traceroute6."
SECTION = "net"
HOMEPAGE = "http://www.remlab.net/ndisc6/"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-PV = "1.0.4+git${SRCPV}"
-SRCREV = "4c794b5512d23c649def1f94a684225dcbb6ac3e"
-SRC_URI = "git://git.remlab.net/git/ndisc6.git;protocol=http \
- file://0001-replace-VLAIS-with-malloc-free-pair.patch \
- file://0002-Do-not-undef-_GNU_SOURCE.patch \
+SRCREV = "92e5d1cf6547fe40316b2a6ca2f7b8195ae0cbe5"
+SRC_URI = "git://git.remlab.net/git/ndisc6.git;protocol=http;branch=master \
file://0001-autogen-Do-not-symlink-gettext.h-from-build-host.patch \
"
S = "${WORKDIR}/git"
+DEPENDS = "coreutils-native"
+
inherit autotools gettext
EXTRA_OECONF += "PERL=${USRBINPATH}/perl"
@@ -23,51 +22,51 @@ USE_NLS = "yes"
EXTRA_OECONF += "--disable-rpath"
-do_configure_prepend() {
+do_configure:prepend() {
cp ${STAGING_DATADIR_NATIVE}/gettext/gettext.h ${S}/include
${S}/autogen.sh
}
-do_install_append () {
+do_install:append () {
rm -rf ${D}${localstatedir}
# Enable SUID bit for applications that need it
chmod 4555 ${D}${bindir}/rltraceroute6
chmod 4555 ${D}${bindir}/ndisc6
chmod 4555 ${D}${bindir}/rdisc6
}
-ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY:${PN} = "1"
# Split into seperate packages since we normal don't want them all
# The main package is left empty and therefore not created.
PACKAGES += "${PN}-ndisc6 ${PN}-tcpspray6 ${PN}-rdisc6 \
${PN}-tcptraceroute6 ${PN}-rltraceroute6 \
${PN}-tracert6 ${PN}-rdnssd ${PN}-misc"
-FILES_${PN} = ""
-FILES_${PN}-ndisc6 = "${bindir}/ndisc6"
-FILES_${PN}-tcpspray6 = "${bindir}/tcpspray6"
-FILES_${PN}-rdisc6 = "${bindir}/rdisc6"
-FILES_${PN}-tcptraceroute6 = "${bindir}/tcptraceroute6"
-FILES_${PN}-rltraceroute6 = "${bindir}/rltraceroute6"
-FILES_${PN}-tracert6 = "${bindir}/tracert6"
-FILES_${PN}-rdnssd = "${sbindir}/rdnssd ${sysconfdir}/rdnssd"
-FILES_${PN}-misc = "${bindir}/dnssort ${bindir}/name2addr ${bindir}/tcpspray ${bindir}/addr2name"
+FILES:${PN} = ""
+FILES:${PN}-ndisc6 = "${bindir}/ndisc6"
+FILES:${PN}-tcpspray6 = "${bindir}/tcpspray6"
+FILES:${PN}-rdisc6 = "${bindir}/rdisc6"
+FILES:${PN}-tcptraceroute6 = "${bindir}/tcptraceroute6"
+FILES:${PN}-rltraceroute6 = "${bindir}/rltraceroute6"
+FILES:${PN}-tracert6 = "${bindir}/tracert6"
+FILES:${PN}-rdnssd = "${sbindir}/rdnssd ${sysconfdir}/rdnssd"
+FILES:${PN}-misc = "${bindir}/dnssort ${bindir}/name2addr ${bindir}/tcpspray ${bindir}/addr2name"
-DESCRIPTION_${PN}-ndisc6 = "ICMPv6 Neighbor Discovery tool. \
+DESCRIPTION:${PN}-ndisc6 = "ICMPv6 Neighbor Discovery tool. \
Performs IPv6 neighbor discovery in userland. Replaces arping from the \
IPv4 world."
-DESCRIPTION_${PN}-rdisc6 = "ICMPv6 Router Discovery tool. \
+DESCRIPTION:${PN}-rdisc6 = "ICMPv6 Router Discovery tool. \
Queries IPv6 routers on the network for advertised prefixes. Can be used \
to detect rogue IPv6 routers, monitor legitimate IPv6 routers."
-DESCRITPION_${PN}-tcpspray6 = "Performs bandwidth measurements of TCP \
+DESCRIPTION:${PN}-tcpspray6 = "Performs bandwidth measurements of TCP \
sessions between the local system and a remote echo server in either IPv6 \
or IPv4."
-DESCRITPION_${PN}-rdnssd = "Daemon to autoconfigure the list of DNS \
+DESCRIPTION:${PN}-rdnssd = "Daemon to autoconfigure the list of DNS \
servers through slateless IPv6 autoconfiguration."
# The tcptraceroute6 and tracert6 commands depend on rltraceroute6 to
# perform the actual trace operation.
-RDEPENDS_${PN}-tcptraceroute6 = "${PN}-rltraceroute6"
-RDEPENDS_${PN}-tracert6 = "${PN}-rltraceroute6"
-RDEPENDS_${PN}-misc += "perl"
+RDEPENDS:${PN}-tcptraceroute6 = "${PN}-rltraceroute6"
+RDEPENDS:${PN}-tracert6 = "${PN}-rltraceroute6"
+RDEPENDS:${PN}-misc += "perl"
diff --git a/meta-networking/recipes-support/netcat/netcat.inc b/meta-networking/recipes-support/netcat/netcat.inc
index 15441645b0..9a8775b6c8 100644
--- a/meta-networking/recipes-support/netcat/netcat.inc
+++ b/meta-networking/recipes-support/netcat/netcat.inc
@@ -11,5 +11,5 @@ capabilities."
SECTION = "net"
inherit update-alternatives gettext pkgconfig
-ALTERNATIVE_${PN} = "nc"
+ALTERNATIVE:${PN} = "nc"
diff --git a/meta-networking/recipes-support/netcat/netcat/gettext.patch b/meta-networking/recipes-support/netcat/netcat/gettext.patch
new file mode 100644
index 0000000000..f2e5f99270
--- /dev/null
+++ b/meta-networking/recipes-support/netcat/netcat/gettext.patch
@@ -0,0 +1,16 @@
+Fix build with gettext 0.20.x
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -49,7 +49,7 @@ AC_SUBST(all_libraries)
+ dnl I18n support
+ ALL_LINGUAS="it sk"
+ AM_GNU_GETTEXT([external], need-ngettext)
+-AM_INTL_SUBDIR
++#AM_INTL_SUBDIR
+
+ dnl find resolver functions and the socket library on some broken OS
+ AC_LBL_LIBRARY_NET
diff --git a/meta-networking/recipes-support/netcat/netcat_0.7.1.bb b/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
index d961af542c..fd36aadd7e 100644
--- a/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
+++ b/meta-networking/recipes-support/netcat/netcat_0.7.1.bb
@@ -1,13 +1,13 @@
require netcat.inc
-LICENSE = "GPLv2"
+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 \
file://netcat-locale_h.patch \
file://make-netcat_flag_count_work.patch \
+ file://gettext.patch \
"
SRC_URI[md5sum] = "0a29eff1736ddb5effd0b1ec1f6fe0ef"
@@ -15,7 +15,9 @@ SRC_URI[sha256sum] = "b55af0bbdf5acc02d1eb6ab18da2acd77a400bafd074489003f3df0967
inherit autotools
-do_install_append() {
+CVE_PRODUCT = "netcat_project:netcat"
+
+do_install:append() {
install -d ${D}${bindir}
mv ${D}${bindir}/nc ${D}${bindir}/nc.${BPN}
}
diff --git a/meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch b/meta-networking/recipes-support/netcf/netcf/0001-Adopt-to-new-gnulib-read_file-fread_file-signature.patch
new file mode 100644
index 0000000000..b188248fff
--- /dev/null
+++ b/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-networking/recipes-support/netcf/netcf_0.2.8.bb b/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
index a4a9c91c6c..c68974f9f0 100644
--- a/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
+++ b/meta-networking/recipes-support/netcf/netcf_0.2.8.bb
@@ -2,32 +2,34 @@ SUMMARY = "netcf"
DESCRIPTION = "netcf is a cross-platform network configuration library."
HOMEPAGE = "https://pagure.io/netcf"
SECTION = "libs"
-LICENSE = "LGPLv2.1"
+LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=fb919cc88dbe06ec0b0bd50e001ccf1f"
SRCREV = "2c5d4255857531bc09d91dcd02e86545f29004d4"
-PV .= "+git${SRCPV}"
+PV .= "+git"
-SRC_URI = "git://pagure.io/netcf.git;protocol=https \
-"
+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+)+))"
-DEPENDS += "augeas libnl libxslt libxml2 gnulib"
+DEPENDS += "augeas libnl libxslt libxml2"
+
+do_configure[depends] += "${MLPREFIX}gnulib:do_populate_sysroot"
S = "${WORKDIR}/git"
-inherit gettext autotools pkgconfig systemd
+inherit gettext autotools perlnative pkgconfig systemd
-EXTRA_OECONF_append_class-target = " --with-driver=redhat"
+EXTRA_OECONF:append:class-target = " --with-driver=redhat"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
PACKAGECONFIG[systemd] = "--with-sysinit=systemd,--with-sysinit=initscripts,"
EXTRA_AUTORECONF += "-I ${S}/gnulib/m4"
-do_configure_prepend() {
+do_configure:prepend() {
currdir=`pwd`
cd ${S}
@@ -47,7 +49,7 @@ do_configure_prepend() {
cd $currdir
}
-do_install_append() {
+do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${systemd_unitdir}/system
if [ -d "${D}${libdir}/systemd/system" ]; then
@@ -65,9 +67,9 @@ do_install_append() {
fi
}
-FILES_${PN} += " \
+FILES:${PN} += " \
${libdir} \
${nonarch_libdir} \
"
-SYSTEMD_SERVICE_${PN} = "netcf-transaction.service"
+SYSTEMD_SERVICE:${PN} = "netcf-transaction.service"
diff --git a/meta-networking/recipes-support/netperf/files/0001-nettest_omni-Remove-duplicate-variable-definitions.patch b/meta-networking/recipes-support/netperf/files/0001-nettest_omni-Remove-duplicate-variable-definitions.patch
new file mode 100644
index 0000000000..08376417ba
--- /dev/null
+++ b/meta-networking/recipes-support/netperf/files/0001-nettest_omni-Remove-duplicate-variable-definitions.patch
@@ -0,0 +1,37 @@
+From 6dd5b2b1f3ae3479647e2ef66e390d031066defe Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 12 Aug 2020 09:57:23 -0700
+Subject: [PATCH] nettest_omni: Remove duplicate variable definitions
+
+These defines are already defined in nettest_bsd.c and exported by
+nettest_bsd.h this should fix build with -fno-common
+
+Upstream-Status: Submitted [https://github.com/HewlettPackard/netperf/pull/46]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/nettest_omni.c | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/src/nettest_omni.c b/src/nettest_omni.c
+index 852eeb1..862088a 100644
+--- a/src/nettest_omni.c
++++ b/src/nettest_omni.c
+@@ -458,14 +458,6 @@ static int client_port_max = 65535;
+
+ /* different options for the sockets */
+
+-int
+- loc_nodelay, /* don't/do use NODELAY locally */
+- rem_nodelay, /* don't/do use NODELAY remotely */
+- loc_sndavoid, /* avoid send copies locally */
+- loc_rcvavoid, /* avoid recv copies locally */
+- rem_sndavoid, /* avoid send copies remotely */
+- rem_rcvavoid; /* avoid recv_copies remotely */
+-
+ extern int
+ loc_tcpcork,
+ rem_tcpcork,
+--
+2.28.0
+
diff --git a/meta-networking/recipes-support/netperf/files/netserver.service b/meta-networking/recipes-support/netperf/files/netserver.service
new file mode 100644
index 0000000000..0876a0d223
--- /dev/null
+++ b/meta-networking/recipes-support/netperf/files/netserver.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Netperf Benchmark Server
+After=network.target
+
+[Service]
+ExecStart=/usr/sbin/netserver -D
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/netperf/files/netserver_permissions.patch b/meta-networking/recipes-support/netperf/files/netserver_permissions.patch
new file mode 100644
index 0000000000..55316363e0
--- /dev/null
+++ b/meta-networking/recipes-support/netperf/files/netserver_permissions.patch
@@ -0,0 +1,29 @@
+From 78c9ae7d9a6735575bc72dd28a19b2bc3a251981 Mon Sep 17 00:00:00 2001
+From: Andrew Elble <aweits@rit.edu>
+Date: Mon, 8 Oct 2018 14:31:20 -0400
+Subject: [PATCH] netserver: don't change permissions on /dev/null
+
+the (now default) suppress_debug=1 changes permissions on /dev/null
+to 0644. Don't do this.
+
+Upstream-Status: Pending [https://github.com/HewlettPackard/netperf/pull/27/commits/78c9ae7d9a6735575bc72dd28a19b2bc3a251981]
+Signed-off-by: Ashish Sharma <asharma@mvista.com>
+
+---
+ src/netserver.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/netserver.c b/src/netserver.c
+index 00c8d23..86a1c45 100644
+--- a/src/netserver.c
++++ b/src/netserver.c
+@@ -278,7 +278,8 @@ open_debug_file()
+
+ #if !defined(WIN32)
+
+- chmod(FileName,0644);
++ if (!suppress_debug)
++ chmod(FileName,0644);
+
+ /* redirect stdin to "/dev/null" */
+ rd_null_fp = fopen(NETPERF_NULL,"r");
diff --git a/meta-networking/recipes-support/netperf/netperf_git.bb b/meta-networking/recipes-support/netperf/netperf_git.bb
index 8921ea7460..6e459eeeb4 100644
--- a/meta-networking/recipes-support/netperf/netperf_git.bb
+++ b/meta-networking/recipes-support/netperf/netperf_git.bb
@@ -2,46 +2,51 @@ SUMMARY = "A networking benchmarking tool"
DESCRIPTION = "Network performance benchmark including tests for TCP, UDP, sockets, ATM and more."
SECTION = "net"
HOMEPAGE = "http://www.netperf.org/"
-LICENSE = "netperf"
-LICENSE_FLAGS = "non-commercial"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a0ab17253e7a3f318da85382c7d5d5d6"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e661ab33a2a71ad6652c178dedf8aaa2"
-PV = "2.7.0+git${SRCPV}"
+PV = "2.7.0+git"
-SRC_URI = "git://github.com/HewlettPackard/netperf.git \
+SRC_URI = "git://github.com/HewlettPackard/netperf.git;branch=master;protocol=https \
file://cpu_set.patch \
file://vfork.patch \
file://init \
+ file://netserver.service \
file://0001-netlib.c-Move-including-sched.h-out-og-function.patch \
+ file://0001-nettest_omni-Remove-duplicate-variable-definitions.patch \
+ file://netserver_permissions.patch \
"
-SRCREV = "f482bab49fcedee46fc5b755da127f608325cd13"
+SRCREV = "3bc455b23f901dae377ca0a558e1e32aa56b31c4"
S = "${WORKDIR}/git"
-inherit update-rc.d autotools
+inherit update-rc.d autotools texinfo systemd
# cpu_set.patch plus _GNU_SOURCE makes src/netlib.c compile with CPU_ macros
-CFLAGS_append = " -DDO_UNIX -DDO_IPV6 -D_GNU_SOURCE"
+CFLAGS:append = " -DDO_UNIX -DDO_IPV6 -D_GNU_SOURCE"
# set the "_FILE_OFFSET_BITS" preprocessor symbol to 64 to support files
# larger than 2GB
-CFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'largefile', \
- ' -D_FILE_OFFSET_BITS=64', '', d)}"
+CFLAGS:append = " -D_FILE_OFFSET_BITS=64"
PACKAGECONFIG ??= ""
PACKAGECONFIG[sctp] = "--enable-sctp,--disable-sctp,lksctp-tools,"
+PACKAGECONFIG[intervals] = "--enable-intervals,--disable-intervals,,"
+PACKAGECONFIG[histogram] = "--enable-histogram,--disable-histogram,,"
# autotools.bbclass attends to include m4 files with path depth <= 2 by
# "find ${S} -maxdepth 2 -name \*.m4", so move m4 files from m4/m4.
-do_configure_prepend() {
+do_configure:prepend() {
test -d ${S}/m4/m4 && mv -f ${S}/m4/m4 ${S}/m4-files
}
do_install() {
sed -e 's#/usr/sbin/#${sbindir}/#g' -i ${WORKDIR}/init
-
- install -d ${D}${sbindir} ${D}${bindir} ${D}${sysconfdir}/init.d
+ install -d ${D}${sbindir} ${D}${bindir} ${D}${sysconfdir}/init.d ${D}${systemd_system_unitdir}
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ sed -e 's#/usr/sbin/#${sbindir}/#g' ${WORKDIR}/netserver.service > ${D}${systemd_system_unitdir}/netserver.service
+ fi
install -m 4755 src/netperf ${D}${bindir}
install -m 4755 src/netserver ${D}${sbindir}
install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/netperf
@@ -62,7 +67,8 @@ do_install() {
install -m 0644 ${S}/doc/netperf_old.ps ${D}${docdir}/netperf
}
-RRECOMMENDS_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'sctp', 'kernel-module-sctp', '', d)}"
+RRECOMMENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'sctp', 'kernel-module-sctp', '', d)}"
INITSCRIPT_NAME="netperf"
INITSCRIPT_PARAMS="defaults"
+SYSTEMD_SERVICE:${PN} = "netserver.service"
diff --git a/meta-networking/recipes-support/netsniff-ng/files/0001-Cmds-automatically-create-folder.patch b/meta-networking/recipes-support/netsniff-ng/files/0001-Cmds-automatically-create-folder.patch
new file mode 100644
index 0000000000..490990d29d
--- /dev/null
+++ b/meta-networking/recipes-support/netsniff-ng/files/0001-Cmds-automatically-create-folder.patch
@@ -0,0 +1,28 @@
+From 7c00d75d16da18a9998fc4cca28d3c953dd54ceb Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Cl=C3=A9ment=20P=C3=A9ron?= <peron.clem@gmail.com>
+Date: Mon, 14 Feb 2022 18:37:22 +0100
+Subject: [PATCH] Cmds: automatically create folder
+
+---
+Upstream-Status: Pending
+
+ Cmds | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Cmds b/Cmds
+index e590b38..3df23b8 100644
+--- a/Cmds
++++ b/Cmds
+@@ -44,7 +44,8 @@ ifeq ("$(origin PREFIX)", "$(filter $(origin PREFIX), file command line)")
+ INSTX = echo -e " INST\t$(1)" && install -d $(2) && \
+ install -C $(1) $(2)/$(shell basename $(1))
+ else
+- INSTX = echo -e " INST\t$(1)" && install -C $(1) $(2)/$(shell basename $(1))
++ INSTX = echo -e " INST\t$(1)" && install -d $(2) && \
++ install -C $(1) $(2)/$(shell basename $(1))
+ endif
+
+ MKDIR = echo -e " MKDIR\t$(1)" && mkdir -p $(1)
+--
+2.32.0
+
diff --git a/meta-networking/recipes-support/netsniff-ng/netsniff-ng_0.6.8.bb b/meta-networking/recipes-support/netsniff-ng/netsniff-ng_0.6.8.bb
new file mode 100644
index 0000000000..341eab015c
--- /dev/null
+++ b/meta-networking/recipes-support/netsniff-ng/netsniff-ng_0.6.8.bb
@@ -0,0 +1,36 @@
+DESCRIPTION = "Netsniff-ng is a fast zero-copy analyzer, pcap capturing and replaying tool"
+HOMEPAGE = "http://netsniff-ng.org"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=9dd40dfb621eed702c0775577fbb7011"
+DEPENDS = "libpcap"
+
+SRCREV = "be3e706f00295024ebc199e70177343fdaebbc9e"
+SRC_URI = " \
+ git://github.com/netsniff-ng/netsniff-ng.git;protocol=https;branch=master \
+ file://0001-Cmds-automatically-create-folder.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig
+
+EXTRA_OEMAKE += " TERM='' "
+
+PACKAGECONFIG ??= ""
+PACKAGECONFIG[zlib] = ",--disable-zlib,zlib,"
+PACKAGECONFIG[libnl] = ",--disable-libnl,libnl,"
+PACKAGECONFIG[geoip] = ",--disable-geoip,geoip,"
+
+do_configure() {
+ ./configure --prefix=${prefix}
+}
+
+do_compile() {
+ oe_runmake
+}
+
+do_install() {
+ oe_runmake DESTDIR=${D} netsniff-ng_install
+}
+
+BBCLASSEXTEND = "native"
diff --git a/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb b/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb
deleted file mode 100644
index 3ccd486be1..0000000000
--- a/meta-networking/recipes-support/nghttp2/nghttp2_1.26.0.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-SUMMARY = "HTTP/2 C Library and tools"
-HOMEPAGE = "https://nghttp2.org/"
-SECTION = "libs"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=764abdf30b2eadd37ce47dcbce0ea1ec"
-
-SRC_URI = "https://github.com/nghttp2/nghttp2/releases/download/v${PV}/nghttp2-${PV}.tar.bz2"
-SRC_URI[md5sum] = "926f07ad3b50f38f7d8935ced04716cf"
-SRC_URI[sha256sum] = "0df4229f4123b5aa96e834ebcfdffe954e93d986f0252fd10123d50c6f010983"
-
-DEPENDS = "libxml2 openssl zlib jansson cunit c-ares"
-
-inherit cmake pythonnative python-dir
diff --git a/meta-networking/recipes-support/nis/nis.inc b/meta-networking/recipes-support/nis/nis.inc
index 200eaf74d4..56b7ab0d69 100644
--- a/meta-networking/recipes-support/nis/nis.inc
+++ b/meta-networking/recipes-support/nis/nis.inc
@@ -6,7 +6,7 @@
DESCRIPTION = "NIS Server and Tools"
HOMEPAGE = "http://www.linux-nis.org/nis/"
SECTION = "net"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
inherit autotools gettext pkgconfig
@@ -20,12 +20,3 @@ inherit autotools gettext pkgconfig
do_install() {
oe_runmake 'DESTDIR=${D}' install-strip
}
-
-# An attempt to build on uclibc will fail, causing annoyance,
-# so force the package to be skipped here (this will cause a
-# 'nothing provides' error)
-python () {
- os = d.getVar("TARGET_OS", True)
- if os == "linux-uclibc":
- raise bb.parse.SkipRecipe("NIS functionality requires rpcsvc/yp.h, uClibC does not provide this")
-}
diff --git a/meta-networking/recipes-support/nis/yp-tools_2.14.bb b/meta-networking/recipes-support/nis/yp-tools_2.14.bb
index 8c6837bac9..8b7ed6fa28 100644
--- a/meta-networking/recipes-support/nis/yp-tools_2.14.bb
+++ b/meta-networking/recipes-support/nis/yp-tools_2.14.bb
@@ -20,15 +20,15 @@ SRC_URI[md5sum] = "ba1f121c17e3ad65368be173b977cd13"
SRC_URI[sha256sum] = "d01f70fadc643a55107a0edc47c6be99d0306bcc4f66df56f65e74238b0124c9"
inherit systemd
-SYSTEMD_SERVICE_${PN} = "domainname.service"
+SYSTEMD_SERVICE:${PN} = "domainname.service"
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
CACHED_CONFIGUREVARS += "ac_cv_prog_STRIP=/bin/true"
-do_install_append() {
+do_install:append() {
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/domainname.service ${D}${systemd_unitdir}/system
}
diff --git a/meta-networking/recipes-support/nis/yp-tools_4.2.3.bb b/meta-networking/recipes-support/nis/yp-tools_4.2.3.bb
index bb401666c6..d2535487b4 100644
--- a/meta-networking/recipes-support/nis/yp-tools_4.2.3.bb
+++ b/meta-networking/recipes-support/nis/yp-tools_4.2.3.bb
@@ -14,7 +14,7 @@ and ypdomainname. \
# v4.2.3
SRCREV = "1bfda29c342a81b97cb1995ffd9e8da5de63e7ab"
-SRC_URI = "git://github.com/thkukuk/yp-tools \
+SRC_URI = "git://github.com/thkukuk/yp-tools;branch=master;protocol=https \
file://domainname.service \
"
@@ -23,25 +23,25 @@ S = "${WORKDIR}/git"
DEPENDS = "libtirpc libnsl2 virtual/crypt"
inherit autotools systemd
-SYSTEMD_SERVICE_${PN} = "domainname.service"
+SYSTEMD_SERVICE:${PN} = "domainname.service"
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
CACHED_CONFIGUREVARS += "ac_cv_prog_STRIP=/bin/true"
EXTRA_OECONF = " \
--disable-rpath --disable-domainname \
"
-CFLAGS_append_libc-musl = " -Wno-error=cpp"
+CFLAGS:append:libc-musl = " -Wno-error=cpp"
-FILES_${PN} += " ${libdir}/yp-nis/*.so.*.* ${libdir}/yp-nis/pkgconfig/"
-FILES_${PN}-dbg += " ${libdir}/yp-nis/.debug"
-FILES_${PN}-dev += " ${libdir}/yp-nis/*.so ${libdir}/yp-nis/*.so.[12] ${libdir}/yp-nis/*.la"
-FILES_${PN}-staticdev += " ${libdir}/yp-nis/*.a"
+FILES:${PN} += " ${libdir}/yp-nis/*.so.*.* ${libdir}/yp-nis/pkgconfig/"
+FILES:${PN}-dbg += " ${libdir}/yp-nis/.debug"
+FILES:${PN}-dev += " ${libdir}/yp-nis/*.so ${libdir}/yp-nis/*.so.[12] ${libdir}/yp-nis/*.la"
+FILES:${PN}-staticdev += " ${libdir}/yp-nis/*.a"
-do_install_append() {
+do_install:append() {
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/domainname.service ${D}${systemd_unitdir}/system
}
diff --git a/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb b/meta-networking/recipes-support/nis/ypbind-mt_2.7.2.bb
index 9822f455ec..a95062bc8b 100644
--- a/meta-networking/recipes-support/nis/ypbind-mt_2.4.bb
+++ b/meta-networking/recipes-support/nis/ypbind-mt_2.7.2.bb
@@ -16,37 +16,36 @@ the server which answered as first. \
\
This is the final IPv4-only version of ypbind-mt. \
"
-HOMEPAGE = "http://www.linux-nis.org/nis/ypbind-mt/index.html"
+HOMEPAGE = "https://github.com/thkukuk/ypbind-mt/"
DEPENDS = " \
yp-tools \
${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
"
-DEPENDS_append_libc-musl = " bsd-headers nss"
-RDEPENDS_${PN} += "yp-tools"
+DEPENDS:append:libc-musl = " bsd-headers nss"
+RDEPENDS:${PN} += "yp-tools"
# ypbind-mt now provides all the functionality of ypbind
# and is used in place of it.
PROVIDES += "ypbind"
-SRC_URI = "http://www.linux-nis.org/download/ypbind-mt/${BP}.tar.bz2 \
+SRC_URI = "https://github.com/thkukuk/ypbind-mt/releases/download/v${PV}/${BPN}-${PV}.tar.xz \
+ file://0001-dns_hosts-Fix-build-with-musl.patch \
file://ypbind.init \
file://ypbind.service \
- file://0001-dns_hosts-Fix-build-with-musl.patch \
"
-SRC_URI[md5sum] = "1aeccd0d11c064d5d59c56941bca682b"
-SRC_URI[sha256sum] = "a2e1fa8fc992a12b289c229e00e38c20d59070c3bcf08babf40c692515c340e0"
+SRC_URI[sha256sum] = "064f2f185673c5493df83f6400b799f3a359de56118b6ba37c4327111f2fcd8b"
inherit systemd update-rc.d
-SYSTEMD_SERVICE_${PN} = "ypbind.service"
+SYSTEMD_SERVICE:${PN} = "ypbind.service"
INITSCRIPT_NAME = "ypbind"
INITSCRIPT_PARAMS = "start 44 3 5 . stop 70 0 1 2 6 ."
CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true"
-CFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/nss3"
+CFLAGS:append = " -I${STAGING_INCDIR}/nss3 -I${STAGING_INCDIR}/nspr"
-do_install_append () {
+do_install:append () {
install -d ${D}${sysconfdir}/init.d
install -d ${D}${sysconfdir}/rcS.d
@@ -56,7 +55,9 @@ do_install_append () {
install -m 0644 ${WORKDIR}/ypbind.service ${D}${systemd_unitdir}/system
}
+# uses glibc internal APIs e.g. _hostalias
+COMPATIBLE_HOST:libc-musl = "null"
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
diff --git a/meta-networking/recipes-support/ntimed/ntimed_git.bb b/meta-networking/recipes-support/ntimed/ntimed_git.bb
index a749b16593..955c03f42d 100644
--- a/meta-networking/recipes-support/ntimed/ntimed_git.bb
+++ b/meta-networking/recipes-support/ntimed/ntimed_git.bb
@@ -8,16 +8,16 @@ SECTION = "net"
LICENSE = "BSD-2-Clause"
LIC_FILES_CHKSUM = "file://main.c;beginline=2;endline=24;md5=89db8e76f2951f3fad167e7aa9718a44"
-SRC_URI = "git://github.com/bsdphk/Ntimed \
+SRC_URI = "git://github.com/bsdphk/Ntimed;branch=master;protocol=https \
file://use-ldflags.patch"
-PV = "0.0+git${SRCPV}"
+PV = "0.0+git"
SRCREV = "db0abbb4c80f2ecef6bc5d9639bca5bea28532a2"
S = "${WORKDIR}/git"
# use adjtimex on musl
-CFLAGS_append_libc-musl = " -Dntp_adjtime=adjtimex"
+CFLAGS:append:libc-musl = " -Dntp_adjtime=adjtimex"
EXTRA_OEMAKE = "\
'CC=${CC}' \
@@ -33,8 +33,8 @@ do_install () {
install -D -m 0755 ntimed-client ${D}${sbindir}/ntimed-client
}
-ALLOW_EMPTY_${PN} = "1"
-RDEPENDS_${PN} += "ntimed-client"
+ALLOW_EMPTY:${PN} = "1"
+RDEPENDS:${PN} += "ntimed-client"
PACKAGE_BEFORE_PN += "ntimed-client"
-FILES_ntimed-client = "${sbindir}/ntimed-client"
+FILES:ntimed-client = "${sbindir}/ntimed-client"
diff --git a/meta-networking/recipes-support/ntop/ntop/0001-nDPI-Include-sys-types.h.patch b/meta-networking/recipes-support/ntop/ntop/0001-nDPI-Include-sys-types.h.patch
deleted file mode 100644
index 81ffeec21b..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/0001-nDPI-Include-sys-types.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 6543f3e2d5fe214e2fc6c050289bf1ae73b18724 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 30 Aug 2017 13:56:24 -0700
-Subject: [PATCH] nDPI: Include sys/types.h
-
-Needed for uint_t types
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- nDPI/src/include/ipq_api.h | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: ntop-5.0.1/nDPI/src/include/ipq_api.h
-===================================================================
---- ntop-5.0.1.orig/nDPI/src/include/ipq_api.h
-+++ ntop-5.0.1/nDPI/src/include/ipq_api.h
-@@ -24,6 +24,7 @@
- #ifndef __IPOQUE_API_INCLUDE_FILE__
- #define __IPOQUE_API_INCLUDE_FILE__
-
-+#include <sys/types.h>
-
- #if defined(HAVE_NTOP) && defined(WIN32)
- #include <winsock2.h>
diff --git a/meta-networking/recipes-support/ntop/ntop/0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch b/meta-networking/recipes-support/ntop/ntop/0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch
deleted file mode 100644
index d6f7eb5554..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From d22ddc73f00ed056032a635ee8379305ec83bf81 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Wed, 11 Jul 2018 12:02:50 +0800
-Subject: [PATCH] plugins/Makefile.am: fix for automake 1.16.1
-
-Fixed:
-| i586-poky-linux-gcc: error: netflowPlugin.o: No such file or directory
-| i586-poky-linux-gcc: error: unrecognized command line option '-flat_namespace'; did you mean '-Wnamespaces'?
-| i586-poky-linux-gcc: fatal error: no input files
-
-The previous code make things complicated, but we don't have to, let libtool do
-most of the things can fix the problem.
-
-Upstream-Status: Pending [ntop is not longer maintained any more, we need consider moving to ntopng]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- plugins/Makefile.am | 34 ++++++----------------------------
- 1 file changed, 6 insertions(+), 28 deletions(-)
-
-diff --git a/plugins/Makefile.am b/plugins/Makefile.am
-index 64492e0..bcd0c10 100644
---- a/plugins/Makefile.am
-+++ b/plugins/Makefile.am
-@@ -69,40 +69,18 @@ libsflowPlugin_la_CFLAGS = $(AM_CFLAGS)
- # by default ntop looks for plugins in the plugins/ subdirectory
- #
-
--
--.libs/libnetflowPlugin.so@SO_VERSION_PATCH@:
-- @if test -f libnetflowPlugin_la-netflowPlugin.o; then \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/libnetflowPlugin.so@SO_VERSION_PATCH@ libnetflowPlugin_la-netflowPlugin.o; \
-- else \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/libnetflowPlugin.so@SO_VERSION_PATCH@ netflowPlugin.o; \
-- fi
--
--netflowPlugin.so$(EXEEXT): .libs/libnetflowPlugin.so@SO_VERSION_PATCH@
-- @$(LN_S) .libs/libnetflowPlugin.so netflowPlugin.so
-+netflowPlugin.so$(EXEEXT): libnetflowPlugin.la
-+ @$(LN_S) -f .libs/libnetflowPlugin.so netflowPlugin.so
-
- ###############
-
--.libs/librrdPlugin.so@SO_VERSION_PATCH@:
-- @if test -f librrdPlugin_la-rrdPlugin.o; then \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/librrdPlugin.so@SO_VERSION_PATCH@ librrdPlugin_la-rrdPlugin.o; \
-- else \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/librrdPlugin.so@SO_VERSION_PATCH@ rrdPlugin.o; \
-- fi
--
--rrdPlugin.so$(EXEEXT): .libs/librrdPlugin.so@SO_VERSION_PATCH@
-- @$(LN_S) .libs/librrdPlugin.so rrdPlugin.so
-+rrdPlugin.so$(EXEEXT): librrdPlugin.la
-+ @$(LN_S) -f .libs/librrdPlugin.so rrdPlugin.so
-
- ###############
-
--.libs/libsflowPlugin.so@SO_VERSION_PATCH@:
-- @if test -f libsflowPlugin_la-sflowPlugin.o; then \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/libsflowPlugin.so@SO_VERSION_PATCH@ libsflowPlugin_la-sflowPlugin.o; \
-- else \
-- $(CC) @MAKE_SHARED_LIBRARY_PARM@ -o .libs/libsflowPlugin.so@SO_VERSION_PATCH@ sflowPlugin.o; \
-- fi
--
--sflowPlugin.so$(EXEEXT): .libs/libsflowPlugin.so@SO_VERSION_PATCH@
-- @$(LN_S) .libs/libsflowPlugin.so sflowPlugin.so
-+sflowPlugin.so$(EXEEXT): libsflowPlugin.la
-+ @$(LN_S) -f .libs/libsflowPlugin.so sflowPlugin.so
-
- ###############
-
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/ntop/ntop/ntop.service b/meta-networking/recipes-support/ntop/ntop/ntop.service
deleted file mode 100644
index 1ead2a0c5f..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/ntop.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=A network traffic probe similar to the UNIX top command
-Requires=network.target
-
-ConditionPathExists=@SYSCONFDIR@/ntop.conf
-After=syslog.target network.target
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=@LIBEXECDIR@/ntop-helper start
-ExecStop=@LIBEXECDIR@/ntop-helper stop
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/ntop/ntop/ntop_configure_in.patch b/meta-networking/recipes-support/ntop/ntop/ntop_configure_in.patch
deleted file mode 100644
index 392cb082b7..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/ntop_configure_in.patch
+++ /dev/null
@@ -1,164 +0,0 @@
-1)add --with-pcap-config option to use libpcap's pcap-config
-2)add AC_CHECK_LIB if user didn't specify PCAP_ROOT and pcap-config
- put it before host check to make cross-compiling easier.
- pcap doesn't need extra include and libs so it is fine.
-3)remove old rrd configure code but use pkg-config to config rrd
- rrdtool should have the pkg-config file installed.
-4)fix python-config
-5)change AC_TRY_RUN to AC_COMPILE_IFELSE for pthread_rwlock_t checking
-6)fix a net-snmp-config bug
-
-Upstream-Status: Pending
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
----
-diff --git a/configure.in b/configure.in
-index 0c7c0a5..cad40be 100644
---- a/configure.in
-+++ b/configure.in
-@@ -230,14 +230,14 @@ dnl>
- AC_ARG_WITH(void,
- [ +-External-source-locations:-------------------------------------------------+])
-
--AC_ARG_WITH( rrd-home,
-- [ --with-rrd-home=DIR Usually /usr/local/rrdtool-1.2.x],
-- RRD_HOME="$withval",
-- RRD_HOME=/usr/local/rrdtool-1.2.19)
- AC_ARG_WITH( pcap-root,
- [ --with-pcap-root=DIR LBNL pcap located in DIR],
- PCAP_ROOT="$withval",
- PCAP_ROOT=)
-+AC_ARG_WITH( pcap-config,
-+ [ --with-pcap-config=path/pcap-config where to find pcap-config],
-+ PCAP_CONFIG="$withval",
-+ PCAP_CONFIG=)
- AC_ARG_WITH( gdbm-root,
- [ --with-gdbm-root=DIR gdbm located in DIR],
- GDBM_DIRECTORY="$withval",
-@@ -556,6 +556,7 @@ if test ".${PCAPRING_DIR}" != .; then
- else
-
- TMP_ROOT=${HOME}/PF_RING/userland/libpcap/
-+FOUND_PCAP=1
- if test ".${PCAP_ROOT}" == . &&
- test -d ${TMP_ROOT} &&
- test -r ${TMP_ROOT}/libpcap.a; then
-@@ -563,6 +564,18 @@ if test ".${PCAP_ROOT}" == . &&
- CORELIBS="${CORELIBS} -L${TMP_ROOT} -L${HOME}/PF_RING/userland/lib -lpfring -lpcap "
- INCS="${INCS} -I ${PCAP_ROOT}"
- AC_MSG_RESULT([found in $PCAP_ROOT])
-+elif test -n "${PCAP_CONFIG}" && test -x "${PCAP_CONFIG}"; then
-+ CORELIBS="${CORELIBS} $(${PCAP_CONFIG} --libs)"
-+ INCS="${INCS} $(${PCAP_CONFIG} --cflags)"
-+ AC_DEFINE_UNQUOTED(HAVE_LIBPCAP, 1, [have libpcap ])
-+ AC_MSG_RESULT([found pcap-config: $PCAP_CONFIG, libs:$(${PCAP_CONFIG} --libs) cflags:$(${PCAP_CONFIG} --cflags)])
-+else
-+ AC_CHECK_LIB(pcap, pcap_lookupdev, ,
-+ [FOUND_PCAP=])
-+fi
-+
-+if test -n "$FOUND_PCAP"; then
-+ :
- elif test ".${PCAP_ROOT}" != .; then
- if test -d $PCAP_ROOT &&
- test -r $PCAP_ROOT/lib/libpcap.a &&
-@@ -880,44 +893,11 @@ AC_CHECK_LIB([z], [zlibVersion], [], [
- exit -1
- ])
-
--# RRD
--if test -d "$RRD_HOME"; then
-- AC_MSG_RESULT(checking for RRD home... yes)
--else
-- RRD_HOME=/usr/local/rrdtool
-- if test -d "$RRD_HOME"; then
-- AC_MSG_RESULT(Checking rrdtool in $RRD_HOME)
-- else
-- RRD_HOME=/usr/local
-- fi
--fi
--
--RRD_LIB="-L${RRD_HOME}/lib -lrrd_th"
--
--if test -f "$RRD_HOME/lib/librrd_th.so"; then
-- AC_MSG_RESULT(checking for rrdtool... yes)
--else
-- if test -f "$RRD_HOME/lib/librrd_th.dylib"; then # OSX
-- AC_MSG_RESULT(checking for rrdtool... yes)
-- else
-- if test -f "$RRD_HOME/lib/librrd_th.a"; then
-- AC_MSG_RESULT(checking for rrdtool... yes)
-- else
-- AC_CHECK_LIB([rrd_th], [main])
-- if test ".${ac_cv_lib_rrd_th_main}" != ".yes"; then
-- AC_MSG_ERROR(Unable to find RRD at $RRD_HOME: please use --with-rrd-home=DIR);
-- AC_MSG_ERROR(RRD source can be downloaded from http://www.rrdtool.org/);
-- else
-- RRD_LIB=
-- fi
-- fi
-- fi
--fi
--
--RRD_INC=
--if test -d "${RRD_HOME}/include"; then
-- RRD_INC="-I${RRD_HOME}/include"
--fi
-+PKG_CHECK_MODULES( [RRD], [librrd] )
-+AC_SUBST(RRD_CFLAGS)
-+AC_SUBST(RRD_LIBS)
-+RRD_INC=$RRD_FLAGS
-+RRD_LIB=$RRD_LIBS
-
- dnl> The failed recheck stuff below is courtesy of Chris Turbeville [turbo@verio.net]
- dnl> Chris developed this for Solaris 9, confirming work I had done earlier for FreeBSD
-@@ -1041,7 +1021,7 @@ AC_CHECK_HEADERS([sched.h sys/sched.h])
- AC_CHECK_HEADERS([pthread.h])
-
- AC_MSG_CHECKING([if r/w locks are supported])
--AC_TRY_RUN([
-+AC_COMPILE_IFELSE([
- #include <pthread.h>
-
- int main()
-@@ -1443,15 +1423,15 @@ dnl> NET-SNMP
- dnl>
- if test ".${ac_disable_snmp}" != ".yes"; then
- AC_CHECK_TOOL(NETSNMP, net-snmp-config)
-- if test "x$ac_cv_prog_ac_ct_NETSNMP" = "xnet-snmp-config"; then
-+ if test -n "$NETSNMP"; then
- AC_DEFINE_UNQUOTED(HAVE_SNMP, 1, [SNMP is supported])
-- SNMPLIBS="`net-snmp-config --libs`"
-+ SNMPLIBS="`$NETSNMP --libs`"
- SNMPLIBS="`echo ${SNMPLIBS}|sed -e s,'-R../lib',,g`"
- echo "net-snmp libs: ${SNMPLIBS}"
- LIBS="${LIBS} ${SNMPLIBS}"
- dnl remove unecessary path
- LIBS=`echo ${LIBS}|sed -e s,'-R../lib',,g`
-- INCS="${INCS} `net-snmp-config --cflags`"
-+ INCS="${INCS} `$NETSNMP --cflags`"
- else
- AC_MSG_RESULT(NETSNMP is not present: SNMP support is disabled)
- fi
-@@ -1464,10 +1444,9 @@ SAVED_LIBS=$LIBS
- dnl>
- dnl> PYTHON
- dnl>
-- AC_CHECK_TOOL(PYTHON, python-config)
-- PYTHON_CONFIG=""
-+ AC_CHECK_TOOL(PYTHON_CONFIG, python-config)
-
-- if test "x$ac_cv_prog_ac_ct_PYTHON" != "xpython-config"; then
-+ if test -z "$PYTHON_CONFIG"; then
- if test -f "/etc/debian_version"; then
- AC_MSG_RESULT(Please install python-dev and rerun configure)
- exit 1
-@@ -1481,8 +1460,6 @@ dnl>
- PYTHON_CONFIG="python-config"
- fi
- fi
-- else
-- PYTHON_CONFIG="python-config"
- fi
-
- if test "x$PYTHON_CONFIG" != "x"; then
diff --git a/meta-networking/recipes-support/ntop/ntop/ntop_configure_in_net_snmp_config_exist.patch b/meta-networking/recipes-support/ntop/ntop/ntop_configure_in_net_snmp_config_exist.patch
deleted file mode 100644
index 269138df93..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/ntop_configure_in_net_snmp_config_exist.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Check net-snmp-config's existence in case user specified the
-ac_cv_prog_NETSNMP to avoid HAVE_SNMP defined if the specified
-net-snmp-config doesn't exist.
-
-Upstream-Status: Inappropriate [Embedded specific]
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
----
-diff --git a/configure.in b/configure.in
-index 6f3e88f..8ddf017 100755
---- a/configure.in
-+++ b/configure.in
-@@ -1423,7 +1423,7 @@ dnl> NET-SNMP
- dnl>
- if test ".${ac_disable_snmp}" != ".yes"; then
- AC_CHECK_TOOL(NETSNMP, net-snmp-config)
-- if test -n "$NETSNMP"; then
-+ if test -n "$NETSNMP" -a -e "$NETSNMP"; then
- AC_DEFINE_UNQUOTED(HAVE_SNMP, 1, [SNMP is supported])
- SNMPLIBS="`$NETSNMP --libs`"
- SNMPLIBS="`echo ${SNMPLIBS}|sed -e s,'-R../lib',,g`"
diff --git a/meta-networking/recipes-support/ntop/ntop/ntop_init.patch b/meta-networking/recipes-support/ntop/ntop/ntop_init.patch
deleted file mode 100644
index e7684c1b4c..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/ntop_init.patch
+++ /dev/null
@@ -1,228 +0,0 @@
-Modify ntop.init to WRLinux 5.0 style.
-
-Fix a small problem that when ntop not running,
-/etc/init.d/ntop stop will return 1
-
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
----
- packages/RedHat/ntop.init | 102 +++++++++-----------------------------------
- 1 files changed, 21 insertions(+), 81 deletions(-)
-
-diff --git a/packages/RedHat/ntop.init b/packages/RedHat/ntop.init
-index 40d49f1..a189c59 100755
---- a/packages/RedHat/ntop.init
-+++ b/packages/RedHat/ntop.init
-@@ -10,19 +10,9 @@
- # You have set the admin password - read docs/1STRUN.txt
- # You have created /etc/ntop.conf with appropriate parameters.
-
--# To identify an interface to ntop, use the following flags
--# in /etc/sysconfig/network-scripts/ifcfg-ethx
--
--# NTOP="yes" <--- means for ntop to use this interface
--# NTOPCONFIG="yes" <--- means for ntop to configure this interface
--
- # Note that if you give a -i parameter in either /etc/ntop.conf or
- # the command line, the scan is NOT performed.
-
--# However, when it comes to the configuration step, with NTOPCONFIG="yes"
--# the interface is configured regardless of how the interface list was
--# specified.
--
- #
- # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- #
-@@ -107,11 +97,7 @@ ntopusesyslog="local3"
- invoked=$0
-
- # Source function library.
--. /etc/rc.d/init.d/functions
--
--# Source networking configuration.
--. /etc/sysconfig/network
--
-+. /etc/init.d/functions
-
- # Basic sanity checks...
- if ! [ -x $prog ]; then
-@@ -124,16 +110,6 @@ if ! [ -x $prog ]; then
- exit 1
- fi
-
--if [ ${NETWORKING} = "no" ]; then
-- echo ""
-- echo "ERROR -"
-- echo " Networking is not up!"
-- echo ""
-- echo "Aborting..."
-- echo ""
-- exit 1
--fi
--
- if ! [ -f ${conf} ]; then
- echo ""
- echo "ERROR -"
-@@ -180,8 +156,8 @@ fi
- if [ "${debug}" = "y" ]; then echo "DEBUG: parm file temp is ${parmfile}"; fi
-
- cmd=`echo \
-- @${conf} \
- -i tbd \
-+ @${conf} \
- $extra $@`
-
- echo ${cmd} | awk ' \
-@@ -305,42 +281,6 @@ logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Configuration
-
- # Build list of interfaces, e.g eth0 eth1 eth1:1
- # (Yeah, we'll have to convert that to eth0,eth1,eth1:1 later
--if [ ".${ntopinterface}" = ".tbd" ]; then
--
-- ntopinterface=""
-- iflist=`ip link show | \
-- awk '/^[0-9]*:\ eth/ { printf("%s ", substr($2, 1, length($2)-1)) }'`
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Scanning all interfaces $iflist"
-- if [ "${debug}" = "y" ]; then echo "DEBUG: Interface candidates are ${iflist}"; fi
--
-- for eth in $iflist; do
--
-- if ! LANG=C egrep -L "^[Nn][Tt][Oo][Pp]=['\"]?[Yy][Ee][Ss]['\"]?" \
-- /etc/sysconfig/network-scripts/ifcfg-$eth > /dev/null ; then
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - $eth is not ntop=yes, skipping"
-- if [ "${debug}" = "y" ]; then echo "DEBUG: $eth not ntop=yes"; fi
-- continue
-- fi
--
-- ntopinterface="${ntopinterface} $eth"
--
-- ip=`ip addr show $eth | \
-- awk '/inet/ { printf("%s", substr($2, 1, index($2, "/")-1)) }'`
--
-- if [ ".$ip" = "." ]; then
-- is="is unnumbered interface"
-- else
-- is="has IP address $ip"
-- fi
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - $eth is ntop=yes, ${is}"
-- if [ "${debug}" = "y" ]; then echo "DEBUG: $eth ntop=yes, ${is}"; fi
--
-- done
--
--else
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Skipping interface scan - list in parms"
--fi
--
- if [ "x${ntopinterface}" = "x" ]; then
- ntopinterface="none"
- fi
-@@ -462,12 +402,6 @@ config_interfaces () {
- if="${if},${eth}"
- fi
-
-- if ! LANG=C egrep -L "^[Nn][Tt][Oo][Pp][Cc].*=['\"]?[Yy][Ee][Ss]['\"]?" \
-- /etc/sysconfig/network-scripts/ifcfg-$eth > /dev/null ; then
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - $eth is not ntopconfigure=yes, skipping"
-- continue
-- fi
--
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Configuring $eth"
- if [ "${debug}" = "y" ]; then echo "DEBUG: Configuring $eth"; fi
-
-@@ -527,7 +461,7 @@ start () {
- show_extra
- config_interfaces
-
-- cmd=`echo $prog \
-+ cmd=`echo \
- @${conf} \
- -i $if \
- $extra $@`
-@@ -541,7 +475,7 @@ start () {
- if [ ".${ldlibpath}" != "." ]; then
- export LD_LIBRARY_PATH="${ldlibpath}"
- fi
-- daemon ${cmd}
-+ start-stop-daemon --start --quiet --exec $prog -- ${cmd}
- RETVAL=$?
-
- [ $RETVAL = 0 ] && touch /var/lock/subsys/${name}${instance}
-@@ -551,6 +485,7 @@ start () {
- stop () {
- # stop daemon
-
-+ NOT_RUNNING=1
- RETVAL=1
- echo -n $"Stopping ${name}${instance}: "
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Stopping: ${name}${instance}"
-@@ -563,13 +498,14 @@ stop () {
- if [ $rc = 0 ]; then
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Sending SIGTERM to ${pid}"
- if [ "${debug}" = "y" ]; then echo "Sending SIGTERM to ${pid}"; fi
-- kill -s SIGTERM ${pid}
-+ kill -TERM ${pid} 2>&1 > /dev/null
- RETVAL=$?
- rm -f ${ntopdbfilepath}/ntop.pid
- else
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Unable to find process ${pid} ... will kill by name"
- if [ "${debug}" = "y" ]; then echo "Unable to find process ${pid} ... will kill by name"; fi
- fi
-+ NOT_RUNNING=0
- else
-
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Unable to find ${ntopdbfilepath}/ntop.pid file ... will kill by name"
-@@ -577,15 +513,16 @@ stop () {
-
- fi
-
-- echo
--
- if [ $RETVAL != 0 ]; then
- pids=`ps axf | grep '\/usr\/bin\/ntop' | awk '{ printf(" %s", $1) }; END { print "" }'`
-- if [ "${pids}" != " " ]; then
-+ if [ "${pids}" != "" ]; then
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Sending SIGTERM to ${prog}...${pids}"
- if [ "${debug}" = "y" ]; then echo "Sending SIGTERM to ${prog}...${pids}"; fi
-- kill -INT ${pids}
-+ kill -TERM ${pids} > /dev/null 2>&1
- RETVAL=$?
-+ NOT_RUNNING=0
-+ else
-+ NOT_RUNNING=1
- fi
- fi
-
-@@ -597,13 +534,9 @@ stop () {
- if [ "${debug}" = "y" ]; then echo "DEBUG: Unconfiguring interfaces"; fi
-
- for eth in ${ntopinterface}; do
-- if ! LANG=C egrep -L "^[Nn][Tt][Oo][Pp][Cc].*=['\"]?[Yy][Ee][Ss]['\"]?" \
-- /etc/sysconfig/network-scripts/ifcfg-$eth > /dev/null ; then
-- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - $eth is not ntopconfigure=yes, skipping"
-- if [ "${debug}" = "y" ]; then echo "DEBUG: $eth is not ntopconfigure=yes"; fi
-- continue
-+ if [ "$eth" = "none" ]; then
-+ continue
- fi
--
- logger -p ${ntopusesyslog} -t ${name}${instance} -- "INITD - Unconfiguring $eth"
- if [ "${debug}" = "y" ]; then echo "DEBUG: Unconfiguring $eth"; fi
-
-@@ -623,6 +556,13 @@ stop () {
- if [ "${debug}" = "y" ]; then echo "DEBUG: Interfaces are unconfigured"; fi
- fi
-
-+ if [ $NOT_RUNNING -eq 1 -o $RETVAL -eq 0 ]; then
-+ echo " [ OK ]"
-+ RETVAL=0
-+ else
-+ echo " [ FAILED ]"
-+ fi
-+
- return $RETVAL
- }
-
---
-1.7.5.4
-
diff --git a/meta-networking/recipes-support/ntop/ntop/ntop_webInterface.patch b/meta-networking/recipes-support/ntop/ntop/ntop_webInterface.patch
deleted file mode 100644
index 9f57ca4255..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/ntop_webInterface.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-change osName to version as it prints out "ntop Version".
-
-Upstream-Status: Pending
-
-Signed-off-by: Yao Zhao <yao.zhao@windriver.com>
----
-diff --git a/webInterface.c b/webInterface.c
-index 5622e69..8cb7a67 100644
---- a/webInterface.c
-+++ b/webInterface.c
-@@ -5816,7 +5816,7 @@ static void printNtopConfigInfoData(int textPrintFlag, UserPref *pref) {
- printInfoSectionTitle(textPrintFlag, "Basic Information");
-
- safe_snprintf(__FILE__, __LINE__, formatBuf, sizeof(formatBuf), "%s (%d bit)",
-- osName, sizeof(long) == 8 ? 64 : 32);
-+ version, sizeof(long) == 8 ? 64 : 32);
- printFeatureConfigInfo(textPrintFlag, "ntop Version", formatBuf);
-
- #ifndef WIN32
diff --git a/meta-networking/recipes-support/ntop/ntop/use-static-inline.patch b/meta-networking/recipes-support/ntop/ntop/use-static-inline.patch
deleted file mode 100644
index 2b001c13e8..0000000000
--- a/meta-networking/recipes-support/ntop/ntop/use-static-inline.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-[PATCH] replace 'inline' with 'static inline' for gcc 5.x
-
-gcc 5.x defaults to -std=gnu11 instead of -std=gnu89 which change
-the semantics for inline functions and the standalone 'inline'
-causes error with "gcc5 -g -o0"
-
-Replace inline with static inline to be compatible with both gcc 4
-and 5.
-
-Upstream-status: Pending
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
----
- nDPI/src/lib/protocols/ssl.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/nDPI/src/lib/protocols/ssl.c b/nDPI/src/lib/protocols/ssl.c
-index 245b8c3..72beda9 100644
---- a/nDPI/src/lib/protocols/ssl.c
-+++ b/nDPI/src/lib/protocols/ssl.c
-@@ -39,7 +39,7 @@ static void ipoque_int_ssl_add_connection(struct ipoque_detection_module_struct
-
- #ifdef HAVE_NTOP
- #ifndef WIN32
--inline int min(int a, int b) { return(a < b ? a : b); }
-+static inline int min(int a, int b) { return(a < b ? a : b); }
- #endif
-
- static void stripCertificateTrailer(char *buffer, int buffer_len) {
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/ntop/ntop_5.0.1.bb b/meta-networking/recipes-support/ntop/ntop_5.0.1.bb
deleted file mode 100644
index 2a7a7f2cb0..0000000000
--- a/meta-networking/recipes-support/ntop/ntop_5.0.1.bb
+++ /dev/null
@@ -1,140 +0,0 @@
-SUMMARY = "ntop is network top"
-DESCRIPTION = "ntop is a network traffic probe that shows the network usage, \
-similar to what the popular top Unix command does."
-
-SECTION = "console/network"
-
-LICENSE = "GPLv2+ & GPLv3 & OpenSSL"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
- file://LICENSE-OpenSSL.txt;md5=a409f902e447ddd889cffa0c70e7c7c2 \
- "
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/ntop/ntop-${PV}.tar.gz \
- file://ntop_configure_in.patch \
- file://ntop_init.patch \
- file://ntop_webInterface.patch \
- file://ntop_configure_in_net_snmp_config_exist.patch \
- file://ntop.service \
- file://use-static-inline.patch \
- file://0001-nDPI-Include-sys-types.h.patch \
- file://0001-plugins-Makefile.am-fix-for-automake-1.16.1.patch \
- "
-SRC_URI[md5sum] = "01710b6925a8a5ffe1a41b8b512ebd69"
-SRC_URI[sha256sum] = "7e8e84cb14d2173beaca4d4cb991a14d84a4bef84ec37b2276bc363f45c52ef8"
-
-UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/ntop/files/ntop/Stable"
-
-inherit autotools-brokensep useradd pythonnative pkgconfig systemd
-
-DEPENDS = "geoip rrdtool python zlib libpcap gdbm"
-
-PACKAGECONFIG ??= "openssl snmp plugins"
-PACKAGECONFIG[openssl] = "--with-ssl, --without-ssl, openssl, openssl"
-PACKAGECONFIG[snmp] = "--enable-snmp=yes NETSNMP=${STAGING_BINDIR_CROSS}/net-snmp-config, \
---disable-snmp,net-snmp,"
-PACKAGECONFIG[plugins] = "--enable-plugins=yes, --disable-plugins, ,"
-
-EXTRA_OECONF += "ac_cv_file_aclocal_m4=yes ac_cv_file_depcomp=no"
-
-do_configure() {
- cp ${STAGING_DATADIR_NATIVE}/aclocal/libtool.m4 libtool.m4.in
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/nDPI
- install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/nDPI
- cat acinclude.m4.in acinclude.m4.ntop libtool.m4.in > acinclude.m4
- cp 3rd_party/* ./
-
- # config nDPI
- cd nDPI
- ./configure ${CONFIGUREOPTS} --with-pic
- cd ..
-
- sed -i -e 's:^CFG_DBFILE_DIR=$localstatedir/ntop:CFG_DBFILE_DIR=$localstatedir/lib/ntop:' ${S}/configure.in
-
- # fix the CFLAGS, CPPFLAGS, LDFLAGS, remove the host include
- sed -i \
- -e 's:\(^CFLAGS="\$.*\) -I/usr/local/include -I/opt/local/include":\1":' \
- -e 's:\(^CPPFLAGS="\$.*\) -I/usr/local/include -I/opt/local/include":\1":' \
- -e 's:\(^LDFLAGS="\$.*\) -L/usr/local/lib -L/opt/local/lib":\1":' \
- ${S}/configure.in
-
- # replace the DISTRO RELEASE in configure.in which are host's
- # with our release, although those doesn't affect functionality
- sed -i -e \
- '/DEFINEOS="LINUX"/{N;s/DISTRO=.*/DISTRO="${DISTRO}"/;N;s/RELEASE=.*/RELEASE="${DISTRO_VERSION}"/;}' \
- ${S}/configure.in
-
- # osName in original configure.in should be ${TARGET_SYS}
- # which will show in ntop's "show configuration"
- sed -i -e \
- 's:^osName=.*:osName=${TARGET_SYS}:' \
- ${S}/configure.in
-
- # rename configureextra to configureextra_rename to avoid
- # configure.in to guess host OS and pull in more configure, non needed
- # which will cause some cross-compiling failure on specific host
- # e.g. SUSE(SLED...)
- test ! -f configureextra || mv -f configureextra configureextra_rename
-
- # make sure configure finds python includdirs/libs with these envs
- export BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
- STAGING_INCDIR=${STAGING_INCDIR} \
- STAGING_LIBDIR=${STAGING_LIBDIR}
-
- autotools_do_configure
-}
-
-do_compile_prepend() {
- cd nDPI
- oe_runmake
- cd ..
-}
-
-do_install_append() {
- # remove the empty dirs
- rm -rf ${D}${libdir}/plugins
-
- install -D -m 0755 ${S}/packages/RedHat/ntop.init \
- ${D}${sysconfdir}/init.d/ntop
- install -D -m 0644 ${S}/packages/RedHat/ntop.conf.sample \
- ${D}${sysconfdir}/ntop.conf
-
- # change ntop dir in ntop.conf
- # don't use the -P as the ntop.init didn't support it
- sed -i -e "s:^--db-file-path /usr/share/ntop:--db-file-path /var/lib/ntop:" \
- -e "s:^#? -P /var/ntop:#? -P /var/lib/ntop:" \
- ${D}${sysconfdir}/ntop.conf
-
- # For systemd
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -D -m 0755 ${S}/packages/RedHat/ntop.init ${D}${libexecdir}/ntop-helper
- install -D -m 0644 ${WORKDIR}/ntop.service ${D}${systemd_system_unitdir}/ntop.service
- sed -i -e 's,@LIBEXECDIR@,${libexecdir},g' \
- -e 's,@SYSCONFDIR@,${sysconfdir},g' \
- ${D}${systemd_system_unitdir}/ntop.service
- fi
-
- # Fix host-user-contaminated issue
- chown -R root:root ${D}
-
- chown -R ntop.ntop ${D}${datadir}/ntop
- chown -R ntop:ntop ${D}${localstatedir}/lib/ntop
-}
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "-M -g ntop -r -d ${localstatedir}/lib/ntop \
--s /usr/sbin/nologin -c 'ntop' ntop"
-GROUPADD_PARAM_${PN} = "-r ntop"
-
-SYSTEMD_SERVICE_${PN} = "ntop.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-FILES_${PN}_append = "${libdir}/ntop/plugins ${libdir}/libntop-*.so \
- ${libdir}/libntopreport-*.so ${libdir}/lib*-${PV}.so"
-FILES_${PN}-dev = "${includedir} ${libdir}/libntop.so \
- ${libdir}/libntopreport.so \
- ${libdir}/libnetflowPlugin.so ${libdir}/libsflowPlugin.so \
- ${libdir}/librrdPlugin.so \
- ${libdir}/*.a ${libdir}/libntopreport.a ${libdir}/*.la"
-
diff --git a/meta-networking/recipes-support/ntopng/files/0001-Makefile.in-don-t-use-the-internal-lua.patch b/meta-networking/recipes-support/ntopng/files/0001-Makefile.in-don-t-use-the-internal-lua.patch
new file mode 100644
index 0000000000..bb5bcfbd63
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-Makefile.in-don-t-use-the-internal-lua.patch
@@ -0,0 +1,39 @@
+From 52953ab99c727a19e88243dda2702d6814f7974d Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 4 Nov 2020 08:55:10 +0000
+Subject: [PATCH] Makefile.in: don't use the internal lua
+
+ntopng depends on lua and it will compile the lua under
+third-party sub dir of source tree, but this one supports
+cross-compiling badly, so use the one under RECIPE_SYSROOT.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ Makefile.in | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index d737e74..a611b16 100755
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -36,7 +36,6 @@ MONGOOSE_INC=-I$(MONGOOSE_HOME)
+ LUA_PLATFORM=generic
+ LUA_HOME=${PWD}/third-party/lua-5.4.3
+ LUA_INC=-I$(LUA_HOME)/src
+-LUA_LIB=$(LUA_HOME)/src/liblua.a
+
+ ifeq ($(OS),Linux)
+ LUA_PLATFORM=linux
+@@ -102,7 +101,6 @@ RPM_PKG = $(TARGET)-$(NTOPNG_VERSION)-@REVISION@.$(PLATFORM).rpm
+ RPM_DATA_PKG = $(TARGET)-data-$(NTOPNG_VERSION)-@REVISION@.noarch.rpm
+ ######
+
+-LIB_TARGETS = $(LUA_LIB)
+
+ ifneq ($(HAS_ZEROMQ), 0)
+ LIB_TARGETS += $(ZEROMQ_LIB)
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-generate-configure.ac-only.patch b/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-generate-configure.ac-only.patch
new file mode 100644
index 0000000000..8d62147b9e
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-generate-configure.ac-only.patch
@@ -0,0 +1,36 @@
+From 22f0bec462763f1b0b92daa33133e274d3b45f4f Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Thu, 5 Nov 2020 00:05:21 -0800
+Subject: [PATCH] autogen.sh: generate configure.ac only
+
+The autogen.sh should only generate configure.ac and the
+logic used to generate configure script should follow the
+autotools.bbclass in oe. Otherwise there may comes below
+do_configure error:
+ | checking whether we are cross compiling... configure: error: in `/path/tmp/work/core2-64-poky-linux/ndpi/3.4-r0/git':
+ | configure: error: cannot run C compiled programs.
+ | If you meant to cross compile, use `--host'.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ autogen.sh | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/autogen.sh b/autogen.sh
+index 73f8d0ebe..15ff0aa84 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -73,8 +73,3 @@ cat configure.seed | sed \
+ > configure.ac
+
+ rm -f config.h config.h.in *~ #*
+-
+-echo "Wait please..."
+-autoreconf -if
+-echo ""
+-echo "Now run ./configure"
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-not-generate-configure.patch b/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-not-generate-configure.patch
new file mode 100644
index 0000000000..d5c7f5f1cc
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-autogen.sh-not-generate-configure.patch
@@ -0,0 +1,35 @@
+From d482bcc8fca90afc95ac3cbe848a3c9d7ad81ddc Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 4 Nov 2020 23:37:44 -0800
+Subject: [PATCH] autogen.sh: not generate configure
+
+Only use autogen.sh to generate configure.ac.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+
+refresh patch to 4.0
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ autogen.sh | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/autogen.sh b/autogen.sh
+index 0aa7507..36e0423 100755
+--- a/autogen.sh
++++ b/autogen.sh
+@@ -33,10 +33,3 @@ if test -z $PKG_CONFIG; then
+ echo "pkg-config is missing: please install it (apt-get install pkg-config) and try again"
+ exit
+ fi
+-
+-autoreconf -ivf
+-
+-echo "./configure $@"
+-chmod +x configure
+-./configure $@
+-
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-Allow-dynamic-linking-against-ndpi-3.patch b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-Allow-dynamic-linking-against-ndpi-3.patch
new file mode 100644
index 0000000000..c645110f22
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-Allow-dynamic-linking-against-ndpi-3.patch
@@ -0,0 +1,39 @@
+From a913b85f720f41bf7e5819c0dc4acc252467a8a4 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 15 Feb 2022 14:25:07 -0800
+Subject: [PATCH] configure.ac.in: Allow dynamic linking against ndpi 3.0
+
+Linking statically is problematic since NDPI_LIBS is '-lndpi -lm'
+and when we use -Bstatic it also brings in -lm to use libm.a and on some
+architectures ( x86 ) which this does not work and results in missing symbols
+
+Fixes
+ipe-sysroot/usr/lib/libm.a(e_logf.o): in function `logf_ifunc_selector':
+/usr/src/debug/glibc/2.35-r0/git/math/../sysdeps/i386/i686/multiarch/ifunc-sse2.h:30: undefined reference to `_dl_x86_cpu_features'
+
+Upstream-Status: Submitted [https://github.com/ntop/ntopng/pull/6318]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ configure.ac.in | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac.in b/configure.ac.in
+index 7f4c0f893..c3299fda2 100644
+--- a/configure.ac.in
++++ b/configure.ac.in
+@@ -193,10 +193,8 @@ if test -d /usr/local/include/ndpi ; then :
+ fi
+
+ PKG_CHECK_MODULES([NDPI], [libndpi >= 2.0], [
+- NDPI_INC=`echo $NDPI_CFLAGS | sed -e "s/[ ]*$//"`
+- # Use static libndpi library as building against the dynamic library fails
+- NDPI_LIB="-Wl,-Bstatic $NDPI_LIBS -Wl,-Bdynamic"
+- #NDPI_LIB="$NDPI_LIBS"
++ NDPI_INC="$NDPI_CFLAGS"
++ NDPI_LIB="$NDPI_LIBS"
+ NDPI_LIB_DEP=
+ ], [
+ AC_MSG_CHECKING(for nDPI source)
+--
+2.35.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-configure-error.patch b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-configure-error.patch
new file mode 100644
index 0000000000..d4908e3227
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-configure-error.patch
@@ -0,0 +1,42 @@
+From 29797dd037009d38e4976249ed21b2076240751e Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 4 Nov 2020 04:36:46 +0000
+Subject: [PATCH] configure.ac.in: fix configure error
+
+fix the below error:
+configure: error: cannot run test program while cross compiling
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ configure.ac.in | 13 +------------
+ 1 file changed, 1 insertion(+), 12 deletions(-)
+
+diff --git a/configure.ac.in b/configure.ac.in
+index a321f9bbf..03f9a31b0 100644
+--- a/configure.ac.in
++++ b/configure.ac.in
+@@ -642,18 +642,7 @@ if test x$radcli = xtrue; then
+ fi
+ fi
+
+-AC_CACHE_CHECK([if pthread rwlocks are supported], [my_cv_rw_locks_supported], [
+- AC_TRY_RUN([
+- #include <pthread.h>
+-
+- int main() {
+- pthread_rwlock_t t;
+- return 0;
+- }
+-]
+-, [my_cv_rw_locks_supported=yes], [my_cv_rw_locks_supported=no])
+-]
+-)
++AC_CACHE_CHECK([if pthread rwlocks are supported], [my_cv_rw_locks_supported])
+
+ if test "$my_cv_rw_locks_supported" = yes; then
+ AC_DEFINE_UNQUOTED(HAVE_RW_LOCK, 1, [pthread rwlocks supported])
+--
+2.26.2
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-host-contamination.patch b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-host-contamination.patch
new file mode 100644
index 0000000000..5e1440b3d6
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-fix-host-contamination.patch
@@ -0,0 +1,82 @@
+From d9458227ddb4bbb8c63c607202a6854886d66090 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Wed, 4 Nov 2020 06:28:28 +0000
+Subject: [PATCH] configure.ac.in: fix host contamination
+
+Fix below error:
+This autoconf log indicates errors, it looked at host include and/or
+library paths while determining system capabilities.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ configure.ac.in | 43 +++----------------------------------------
+ 1 file changed, 3 insertions(+), 40 deletions(-)
+
+diff --git a/configure.ac.in b/configure.ac.in
+index 1d6380c..beffc6c 100644
+--- a/configure.ac.in
++++ b/configure.ac.in
+@@ -167,31 +167,6 @@ fi
+ #
+ REVISION=`git log --pretty=oneline | wc -l`
+
+-if test -d "/usr/local/include"; then
+- CFLAGS="${CFLAGS} -I/usr/local/include"
+- CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
+-fi
+-
+-if test -d "/usr/local/lib"; then
+- LIBS="${LIBS} -L/usr/local/lib"
+-fi
+-
+-if test -d /opt/local/include; then :
+- CFLAGS="${CFLAGS} -I/opt/local/include"
+- CPPFLAGS="${CPPFLAGS} -I/opt/local/include"
+-fi
+-
+-if test -d /opt/local/lib; then :
+- LIBS="${LIBS} -L/opt/local/lib"
+-fi
+-
+-if [ test -f /usr/bin/lsb_release ]; then
+- CODENAME=`/usr/bin/lsb_release -c|cut -f 2`
+- if [[ $CODENAME == "wheezy" ]]; then :
+- CPPFLAGS="${CPPFLAGS} -DOLD_NETFILTER_INTERFACE=1"
+- fi
+-fi
+-
+ SHORT_MACHINE=`uname -m | cut -b1-3`
+
+ GIT_RELEASE="@GIT_RELEASE@"
+@@ -300,23 +275,11 @@ fi
+ pkg-config --exists libssl
+ if test "$?" -ne 1; then
+ AC_DEFINE_UNQUOTED(NO_SSL_DL, 1, [has openssl])
+- SSL_INC="`pkg-config --cflags libssl` -I/usr/include/openssl"
++ SSL_INC="`pkg-config --cflags libssl`"
+ SSL_LIB="`pkg-config --libs libssl` -lssl -lcrypto"
+ else
+- dnl Workaround for MacOS Brew
+- if test -d "/usr/local/opt/openssl/lib"; then
+- AC_DEFINE_UNQUOTED(NO_SSL_DL, 1, [has openssl])
+- SSL_INC="-I/usr/local/opt/openssl/include"
+- SSL_LIB="-L/usr/local/opt/openssl/lib -lssl -lcrypto"
+- dnl Workaround for FreeBSD
+- elif test -f "/usr/lib/libssl.so"; then
+- AC_DEFINE_UNQUOTED(NO_SSL_DL, 1, [has openssl])
+- SSL_INC="-I/usr/include"
+- SSL_LIB="-L/usr/lib -lssl -lcrypto"
+- else
+- echo "Please install openssl-dev(el) package prerequisite"
+- exit -1
+- fi
++ echo "Please install openssl-dev(el) package prerequisite"
++ exit -1
+ fi
+
+ AC_CHECK_LIB([gcrypt], [gcry_cipher_checktag], [LIBS="${LIBS} -lgcrypt"])
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-not-check-clang-on-host.patch b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-not-check-clang-on-host.patch
new file mode 100644
index 0000000000..ffb106723c
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/0001-configure.ac.in-not-check-clang-on-host.patch
@@ -0,0 +1,44 @@
+From 5867be19e53a3cc09730b83282c83bdd26147cc3 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Mon, 9 Nov 2020 04:05:25 +0000
+Subject: [PATCH] configure.ac.in: not check clang on host
+
+Don't check clang on host to avoid host contamination.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ configure.ac.in | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/configure.ac.in b/configure.ac.in
+index 55bd49678..94bc0bc48 100644
+--- a/configure.ac.in
++++ b/configure.ac.in
+@@ -90,22 +90,6 @@ if test $SYSTEM = "FreeBSD" || test $SYSTEM = "Darwin"; then
+ CFLAGS="-fno-color-diagnostics $CFLAGS"
+ fi
+ fi
+-else
+- if test $SYSTEM = "Linux"; then
+- if [ test -f /usr/bin/clang++ ]; then
+- CC=clang
+- CXX=clang++
+- AC_MSG_RESULT(Using clang++ compiler)
+- fi
+-
+- if [ test -f /etc/redhat-release ]; then
+- OS=`cat /etc/redhat-release`
+- else
+- if [ test -f /usr/bin/lsb_release ]; then
+- OS=`/usr/bin/lsb_release -d|cut -d ':' -f 2`
+- fi
+- fi
+- fi
+ fi
+
+ dnl> Remove spaces
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/ntopng/files/ntopng.service b/meta-networking/recipes-support/ntopng/files/ntopng.service
new file mode 100644
index 0000000000..66912fbefa
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/files/ntopng.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=ntopng - High-Speed Web-based Traffic Analysis and Flow Collection Tool
+After=network.target
+
+[Service]
+Type=forking
+StandardOutput=syslog
+StandardError=inherit
+ExecStart=/usr/bin/ntopng -e -w 3000
+Restart=on-abort
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/ntopng/ndpi_4.2.bb b/meta-networking/recipes-support/ntopng/ndpi_4.2.bb
new file mode 100644
index 0000000000..13c3398c2b
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/ndpi_4.2.bb
@@ -0,0 +1,28 @@
+SUMMARY = "A library for deep-packet inspection."
+DESCRIPTION = "nDPI is an open source LGPLv3 library for deep-packet \
+inspection. Based on OpenDPI it includes ntop extensions"
+
+SECTION = "libdevel"
+DEPENDS = "libpcap json-c"
+RDEPENDS:${PN} += " libpcap"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b52f2d57d10c4f7ee67a7eb9615d5d24"
+
+SRCREV = "8b5c6af71b562549f8416b31803daae223e09f46"
+SRC_URI = "git://github.com/ntop/nDPI.git;branch=4.2-stable;protocol=https \
+ file://0001-autogen.sh-not-generate-configure.patch \
+ "
+
+S = "${WORKDIR}/git"
+
+inherit autotools-brokensep pkgconfig
+
+CPPFLAGS += "${SELECTED_OPTIMIZATION}"
+
+do_configure:prepend() {
+ ${S}/autogen.sh
+}
+
+EXTRA_OEMAKE = " \
+ libdir=${libdir} \
+"
diff --git a/meta-networking/recipes-support/ntopng/ntopng_5.2.1.bb b/meta-networking/recipes-support/ntopng/ntopng_5.2.1.bb
new file mode 100644
index 0000000000..110ca36866
--- /dev/null
+++ b/meta-networking/recipes-support/ntopng/ntopng_5.2.1.bb
@@ -0,0 +1,50 @@
+SUMMARY = "Web-based Traffic and Security Network Traffic Monitoring"
+DESCRIPTION = "ntopng is a web-based network traffic monitoring application \
+released under GPLv3. It is the new incarnation of the original \
+ntop written in 1998, and now revamped in terms of performance, \
+usability, and features."
+
+SECTION = "console/network"
+
+DEPENDS = "curl hiredis libmaxminddb libpcap lua mariadb ndpi json-c rrdtool zeromq"
+RDEPENDS:${PN} = "bash redis"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRCREV = "d3ce78948e8d81dc1e2c5298ce556f9f2247aac1"
+SRC_URI = "git://github.com/ntop/ntopng.git;protocol=https;branch=5.2-stable \
+ file://0001-configure.ac.in-fix-configure-error.patch \
+ file://0001-configure.ac.in-fix-host-contamination.patch \
+ file://0001-Makefile.in-don-t-use-the-internal-lua.patch \
+ file://0001-autogen.sh-generate-configure.ac-only.patch \
+ file://0001-configure.ac.in-not-check-clang-on-host.patch \
+ file://0001-configure.ac.in-Allow-dynamic-linking-against-ndpi-3.patch \
+ file://ntopng.service \
+ "
+
+S = "${WORKDIR}/git"
+
+# don't use the lua under thirdparty as it supports cross compiling badly
+export LUA_LIB = "${STAGING_LIBDIR}/liblua.a"
+
+LDFLAGS:append:mipsarch = " -latomic"
+LDFLAGS:append:powerpc = " -latomic"
+LDFLAGS:append:riscv32 = " -latomic"
+inherit autotools-brokensep gettext pkgconfig systemd
+
+do_install:append() {
+ install -d ${D}${systemd_unitdir}/system/
+ install -m 0644 ${WORKDIR}/ntopng.service ${D}${systemd_unitdir}/system
+}
+
+FILES:${PN} += "\
+ ${systemd_unitdir}/system/ntopng.service"
+
+FILES:${PN}-doc += "\
+ /usr/man/man8/ntopng.8"
+
+do_configure:prepend() {
+ ${S}/autogen.sh
+}
+
+SYSTEMD_SERVICE:${PN} = "ntopng.service"
diff --git a/meta-networking/recipes-support/ntp/ntp/0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch b/meta-networking/recipes-support/ntp/ntp/0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch
new file mode 100644
index 0000000000..d61a6e70b8
--- /dev/null
+++ b/meta-networking/recipes-support/ntp/ntp/0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch
@@ -0,0 +1,33 @@
+From 082a504cfcc046c3d8adaae1164268bc94e5108a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 31 Jul 2021 10:51:41 -0700
+Subject: [PATCH] libntp: Do not use PTHREAD_STACK_MIN on glibc
+
+In glibc 2.34+ PTHREAD_STACK_MIN is not a compile-time constant which
+could mean different stack sizes at runtime on different architectures
+and it also causes compile failure. Default glibc thread stack size
+or 64Kb set by ntp should be good in glibc these days.
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
+---
+ libntp/work_thread.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libntp/work_thread.c b/libntp/work_thread.c
+index c1fe5c2..21db4a0 100644
+--- a/libntp/work_thread.c
++++ b/libntp/work_thread.c
+@@ -598,7 +598,7 @@ start_blocking_thread_internal(
+ /* now clamp on lower stack limit. */
+ if (nstacksize < THREAD_MINSTACKSIZE)
+ nstacksize = THREAD_MINSTACKSIZE;
+-# ifdef PTHREAD_STACK_MIN
++# ifdef PTHREAD_STACK_MIN && !defined(__GLIBC__)
+ if (nstacksize < PTHREAD_STACK_MIN)
+ nstacksize = PTHREAD_STACK_MIN;
+ # endif
+--
+2.34.1
+
diff --git a/meta-networking/recipes-support/ntp/ntp/0001-sntp-Fix-types-in-check-for-pthread_detach.patch b/meta-networking/recipes-support/ntp/ntp/0001-sntp-Fix-types-in-check-for-pthread_detach.patch
new file mode 100644
index 0000000000..ca15470ace
--- /dev/null
+++ b/meta-networking/recipes-support/ntp/ntp/0001-sntp-Fix-types-in-check-for-pthread_detach.patch
@@ -0,0 +1,33 @@
+From 864f43ae09d18b1114d5c894e836698743e4e44c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 6 Sep 2022 21:36:35 -0700
+Subject: [PATCH] sntp: Fix types in check for pthread_detach
+
+New compilers are stricter and flag assigning NULL to pthread_t as error
+therefore using a pthread_t variable constructed from -1
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sntp/m4/openldap-thread-check.m4 | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/sntp/m4/openldap-thread-check.m4 b/sntp/m4/openldap-thread-check.m4
+index 7768a5c..b9e54ad 100644
+--- a/sntp/m4/openldap-thread-check.m4
++++ b/sntp/m4/openldap-thread-check.m4
+@@ -262,10 +262,7 @@ pthread_rwlock_t rwlock;
+ dnl save the flags
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+ #include <pthread.h>
+-#ifndef NULL
+-#define NULL (void*)0
+-#endif
+-]], [[pthread_detach(NULL);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no])
++]], [[pthread_detach((pthread_t)-1);]])],[ol_cv_func_pthread_detach=yes],[ol_cv_func_pthread_detach=no])
+ ])
+
+ if test $ol_cv_func_pthread_detach = no ; then
+--
+2.37.3
+
diff --git a/meta-networking/recipes-support/ntp/ntp/0001-test-Fix-build-with-new-compiler-defaults-to-fno-com.patch b/meta-networking/recipes-support/ntp/ntp/0001-test-Fix-build-with-new-compiler-defaults-to-fno-com.patch
new file mode 100644
index 0000000000..24019e974b
--- /dev/null
+++ b/meta-networking/recipes-support/ntp/ntp/0001-test-Fix-build-with-new-compiler-defaults-to-fno-com.patch
@@ -0,0 +1,56 @@
+From 778f3cddc20930185a917fa3f8ffe1ef2b0b0ea0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 31 Jul 2021 13:27:16 -0700
+Subject: [PATCH] test: Fix build with new compiler defaults to -fno-common
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
+---
+ sntp/tests/run-packetHandling.c | 2 +-
+ sntp/tests/run-t-log.c | 2 +-
+ sntp/tests/run-utilities.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/sntp/tests/run-packetHandling.c b/sntp/tests/run-packetHandling.c
+index 7790b20..c58380c 100644
+--- a/sntp/tests/run-packetHandling.c
++++ b/sntp/tests/run-packetHandling.c
+@@ -64,7 +64,7 @@ void resetTest(void)
+ setUp();
+ }
+
+-char const *progname;
++extern char const *progname;
+
+
+ //=======MAIN=====
+diff --git a/sntp/tests/run-t-log.c b/sntp/tests/run-t-log.c
+index 268bf41..cd835bc 100644
+--- a/sntp/tests/run-t-log.c
++++ b/sntp/tests/run-t-log.c
+@@ -50,7 +50,7 @@ void resetTest(void)
+ setUp();
+ }
+
+-char const *progname;
++extern char const *progname;
+
+
+ //=======MAIN=====
+diff --git a/sntp/tests/run-utilities.c b/sntp/tests/run-utilities.c
+index f717882..98d9bf1 100644
+--- a/sntp/tests/run-utilities.c
++++ b/sntp/tests/run-utilities.c
+@@ -58,7 +58,7 @@ void resetTest(void)
+ setUp();
+ }
+
+-char const *progname;
++extern char const *progname;
+
+
+ //=======MAIN=====
+--
+2.34.1
+
diff --git a/meta-networking/recipes-support/ntp/ntp/ntp-4.2.4_p6-nano.patch b/meta-networking/recipes-support/ntp/ntp/ntp-4.2.4_p6-nano.patch
index d45b7e38b7..d8e0ad3309 100644
--- a/meta-networking/recipes-support/ntp/ntp/ntp-4.2.4_p6-nano.patch
+++ b/meta-networking/recipes-support/ntp/ntp/ntp-4.2.4_p6-nano.patch
@@ -3,6 +3,8 @@ From: Koen Kooi <koen@dominion.thruhere.net>
Date: Wed, 12 Jan 2011 21:38:46 +0100
---
+Upstream-Status: Pending
+
include/ntp_syscall.h | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/meta-networking/recipes-support/ntp/ntp/ntp.conf b/meta-networking/recipes-support/ntp/ntp/ntp.conf
index 676e186453..b59003092b 100644
--- a/meta-networking/recipes-support/ntp/ntp/ntp.conf
+++ b/meta-networking/recipes-support/ntp/ntp/ntp.conf
@@ -14,4 +14,8 @@ driftfile /var/lib/ntp/drift
server 127.127.1.0
fudge 127.127.1.0 stratum 14
# Defining a default security setting
-restrict default
+restrict -4 default notrap nomodify nopeer noquery
+restrict -6 default notrap nomodify nopeer noquery
+
+restrict 127.0.0.1 # allow local host
+restrict ::1 # allow local host
diff --git a/meta-networking/recipes-support/ntp/ntp/ntpd.service b/meta-networking/recipes-support/ntp/ntp/ntpd.service
index 0e3d7cd37b..d793db4a78 100644
--- a/meta-networking/recipes-support/ntp/ntp/ntpd.service
+++ b/meta-networking/recipes-support/ntp/ntp/ntpd.service
@@ -3,9 +3,8 @@ Description=Network Time Service
After=network.target
[Service]
-Type=forking
-PIDFile=/run/ntpd.pid
-ExecStart=/usr/sbin/ntpd -u ntp:ntp -p /run/ntpd.pid -g
+Type=simple
+ExecStart=/usr/sbin/ntpd -u ntp:ntp -n -g
[Install]
WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/ntp/ntp/ntpdate b/meta-networking/recipes-support/ntp/ntp/ntpdate
deleted file mode 100755
index 17b64d1335..0000000000
--- a/meta-networking/recipes-support/ntp/ntp/ntpdate
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/sh
-
-PATH=/sbin:/bin:/usr/bin:/usr/sbin
-
-test -x /usr/sbin/ntpdate || exit 0
-
-if test -f /etc/default/ntpdate ; then
-. /etc/default/ntpdate
-fi
-
-if [ "$NTPSERVERS" = "" ] ; then
- if [ "$METHOD" = "" -a "$1" != "silent" ] ; then
- echo "Please set NTPSERVERS in /etc/default/ntpdate"
- exit 1
- else
- exit 0
- fi
-fi
-
-# This is a heuristic: The idea is that if a static interface is brought
-# up, that is a major event, and we can put in some extra effort to fix
-# the system time. Feel free to change this, especially if you regularly
-# bring up new network interfaces.
-if [ "$METHOD" = static ]; then
- OPTS="-b"
-fi
-
-if [ "$METHOD" = loopback ]; then
- exit 0
-fi
-
-(
-
-LOCKFILE=/var/lock/ntpdate
-
-# Avoid running more than one at a time
-if [ -x /usr/bin/lockfile-create ]; then
- lockfile-create $LOCKFILE
- lockfile-touch $LOCKFILE &
- LOCKTOUCHPID="$!"
-fi
-
-if /usr/sbin/ntpdate -s $OPTS $NTPSERVERS 2>/dev/null; then
- if [ "$UPDATE_HWCLOCK" = "yes" ]; then
- hwclock --systohc || :
- fi
-fi
-
-if [ -x /usr/bin/lockfile-create ] ; then
- kill $LOCKTOUCHPID
- lockfile-remove $LOCKFILE
-fi
-
-) &
diff --git a/meta-networking/recipes-support/ntp/ntp/ntpdate.default b/meta-networking/recipes-support/ntp/ntp/ntpdate.default
deleted file mode 100644
index 486b6e07d3..0000000000
--- a/meta-networking/recipes-support/ntp/ntp/ntpdate.default
+++ /dev/null
@@ -1,7 +0,0 @@
-# Configuration script used by ntpdate-sync script
-
-NTPSERVERS=""
-
-# Set to "yes" to write time to hardware clock on success
-UPDATE_HWCLOCK="no"
-
diff --git a/meta-networking/recipes-support/ntp/ntp/ntpdate.service b/meta-networking/recipes-support/ntp/ntp/ntpdate.service
deleted file mode 100644
index 10cbd70f99..0000000000
--- a/meta-networking/recipes-support/ntp/ntp/ntpdate.service
+++ /dev/null
@@ -1,11 +0,0 @@
-[Unit]
-Description=Network Time Service (one-shot ntpdate mode)
-Before=ntpd.service
-
-[Service]
-Type=oneshot
-ExecStart=/usr/bin/ntpdate-sync silent
-RemainAfterExit=yes
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/ntp/ntp/reproducibility-fixed-path-to-posix-shell.patch b/meta-networking/recipes-support/ntp/ntp/reproducibility-fixed-path-to-posix-shell.patch
index 571db75f7c..036c61a78f 100644
--- a/meta-networking/recipes-support/ntp/ntp/reproducibility-fixed-path-to-posix-shell.patch
+++ b/meta-networking/recipes-support/ntp/ntp/reproducibility-fixed-path-to-posix-shell.patch
@@ -1,9 +1,19 @@
---- ntp-4.2.8p12.original/sntp/libopts/m4/libopts.m4 2018-11-12 17:54:57.747220846 +1300
-+++ ntp-4.2.8p12/sntp/libopts/m4/libopts.m4 2018-11-12 18:00:50.626211641 +1300
-@@ -114,12 +114,6 @@
+reproducibility fixed path to posixshell
+---
+Upstream-Status: Pending
+
+ sntp/libopts/m4/libopts.m4 | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/sntp/libopts/m4/libopts.m4 b/sntp/libopts/m4/libopts.m4
+index 23738ca..4e18187 100644
+--- a/sntp/libopts/m4/libopts.m4
++++ b/sntp/libopts/m4/libopts.m4
+@@ -107,13 +107,6 @@ AC_DEFUN([INVOKE_LIBOPTS_MACROS_FIRST],[
AC_PROG_SED
[while :
do
+- test -x "$POSIX_SHELL" && break
- POSIX_SHELL=`which bash`
- test -x "$POSIX_SHELL" && break
- POSIX_SHELL=`which dash`
@@ -13,3 +23,6 @@
POSIX_SHELL=`/bin/sh -c '
exec 2>/dev/null
if ! true ; then exit 1 ; fi
+--
+2.34.1
+
diff --git a/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch b/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch
deleted file mode 100644
index 58e71c3b8b..0000000000
--- a/meta-networking/recipes-support/ntp/ntp/reproducibility-respect-source-date-epoch.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- ntp-4.2.8p12.original/scripts/build/mkver.in 2018-11-12 14:06:49.333020430 +1300
-+++ ntp-4.2.8p12/scripts/build/mkver.in 2018-11-12 14:15:04.947480167 +1300
-@@ -15,7 +15,12 @@
- *) ConfStr="${ConfStr}-@VER_SUFFIX@" ;;
- esac
-
--ConfStr="$ConfStr `LC_TIME=C TZ=UTC date`"
-+if [ -n "$SOURCE_DATE_EPOCH" ]; then
-+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date -d@$SOURCE_DATE_EPOCH 2>/dev/null`" ||
-+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date -r $SOURCE_DATE_EPOCH`"
-+else
-+ ConfStr="$ConfStr `LC_TIME=C TZ=UTC date`"
-+fi
-
- if [ ! -f .version ]; then
- echo 0 > .version
diff --git a/meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb b/meta-networking/recipes-support/ntp/ntp_4.2.8p17.bb
index 53e41297aa..4ed58cd6a4 100644
--- a/meta-networking/recipes-support/ntp/ntp_4.2.8p12.bb
+++ b/meta-networking/recipes-support/ntp/ntp_4.2.8p17.bb
@@ -6,27 +6,52 @@ or satellite receiver or modem."
HOMEPAGE = "http://support.ntp.org"
SECTION = "net"
LICENSE = "NTP"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=e877a1d567a6a58996d2b66e3e387003"
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=3a8ffebbcad335abf2c39fec38671eec"
DEPENDS = "libevent"
SRC_URI = "http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-${PV}.tar.gz \
file://ntp-4.2.4_p6-nano.patch \
file://reproducibility-fixed-path-to-posix-shell.patch \
- file://reproducibility-respect-source-date-epoch.patch \
+ file://0001-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch \
+ file://0001-test-Fix-build-with-new-compiler-defaults-to-fno-com.patch \
+ file://0001-sntp-Fix-types-in-check-for-pthread_detach.patch \
file://ntpd \
file://ntp.conf \
- file://ntpdate \
- file://ntpdate.default \
- file://ntpdate.service \
file://ntpd.service \
file://sntp.service \
file://sntp \
file://ntpd.list \
"
-SRC_URI[md5sum] = "1522d66574bae14abb2622746dad2bdc"
-SRC_URI[sha256sum] = "709b222b5013d77d26bfff532b5ea470a8039497ef29d09363931c036cb30454"
+SRC_URI[sha256sum] = "103dd272e6a66c5b8df07dce5e9a02555fcd6f1397bdfb782237328e89d3a866"
+
+CVE_STATUS[CVE-2016-9312] = "not-applicable-platform: Issue only applies on Windows"
+CVE_STATUS[CVE-2019-11331] = "upstream-wontfix: inherent to RFC 5905 and cannot be fixed without breaking compatibility"
+CVE_STATUS_GROUPS += "CVE_STATUS_NTP"
+CVE_STATUS_NTP[status] = "fixed-version: Yocto CVE check can not handle 'p' in ntp version"
+CVE_STATUS_NTP = " \
+ CVE-2015-5146 \
+ CVE-2015-5300 \
+ CVE-2015-7975 \
+ CVE-2015-7976 \
+ CVE-2015-7977 \
+ CVE-2015-7978 \
+ CVE-2015-7979 \
+ CVE-2015-8138 \
+ CVE-2015-8139 \
+ CVE-2015-8140 \
+ CVE-2015-8158 \
+ CVE-2016-1547 \
+ CVE-2016-2516 \
+ CVE-2016-2517 \
+ CVE-2016-2519 \
+ CVE-2016-7429 \
+ CVE-2016-7433 \
+ CVE-2016-9310 \
+ CVE-2016-9311 \
+"
+
inherit autotools update-rc.d useradd systemd pkgconfig
@@ -39,11 +64,11 @@ EXTRA_OECONF += "--with-net-snmp-config=no \
--with-locfile=redhat \
--without-rpath \
"
-CFLAGS_append = " -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED"
+CFLAGS:append = " -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED"
USERADD_PACKAGES = "${PN}"
NTP_USER_HOME ?= "/var/lib/ntp"
-USERADD_PARAM_${PN} = "--system --home-dir ${NTP_USER_HOME} \
+USERADD_PARAM:${PN} = "--system --home-dir ${NTP_USER_HOME} \
--no-create-home \
--shell /bin/false --user-group ntp"
@@ -63,22 +88,19 @@ PACKAGECONFIG[debug] = "--enable-debugging,--disable-debugging"
PACKAGECONFIG[mdns] = "ac_cv_header_dns_sd_h=yes,ac_cv_header_dns_sd_h=no,mdns"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
-do_install_append() {
+do_install:append() {
install -d ${D}${sysconfdir}/init.d
install -m 644 ${WORKDIR}/ntp.conf ${D}${sysconfdir}
install -m 755 ${WORKDIR}/ntpd ${D}${sysconfdir}/init.d
- install -d ${D}${bindir}
- install -m 755 ${WORKDIR}/ntpdate ${D}${bindir}/ntpdate-sync
install -m 755 -d ${D}${NTP_USER_HOME}
chown ntp:ntp ${D}${NTP_USER_HOME}
# Fix hardcoded paths in scripts
- sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/usr/bin/!${bindir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd ${D}${bindir}/ntpdate-sync
- sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${bindir}/ntpdate-sync
+ sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/ntpd
+ sed -i 's!/usr/bin/!${bindir}/!g' ${D}${sysconfdir}/init.d/ntpd
+ sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/ntpd
+ sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/ntpd
sed -i '1s,#!.*perl -w,#! ${bindir}/env perl,' ${D}${sbindir}/ntptrace
sed -i '/use/i use warnings;' ${D}${sbindir}/ntptrace
sed -i '1s,#!.*perl,#! ${bindir}/env perl,' ${D}${sbindir}/ntp-wait
@@ -87,89 +109,76 @@ do_install_append() {
sed -i '/use/i use warnings;' ${D}${sbindir}/calc_tickadj
install -d ${D}/${sysconfdir}/default
- install -m 644 ${WORKDIR}/ntpdate.default ${D}${sysconfdir}/default/ntpdate
install -m 0644 ${WORKDIR}/sntp ${D}${sysconfdir}/default/
- install -d ${D}/${sysconfdir}/network/if-up.d
- ln -s ${bindir}/ntpdate-sync ${D}/${sysconfdir}/network/if-up.d
-
install -d ${D}${systemd_unitdir}/system
- install -m 0644 ${WORKDIR}/ntpdate.service ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/ntpd.service ${D}${systemd_unitdir}/system/
install -m 0644 ${WORKDIR}/sntp.service ${D}${systemd_unitdir}/system/
install -d ${D}${systemd_unitdir}/ntp-units.d
install -m 0644 ${WORKDIR}/ntpd.list ${D}${systemd_unitdir}/ntp-units.d/60-ntpd.list
- # Remove an empty libexecdir.
+ # Remove the empty libexecdir and bindir.
rmdir --ignore-fail-on-non-empty ${D}${libexecdir}
+ rmdir --ignore-fail-on-non-empty ${D}${bindir}
}
-PACKAGES += "ntpdate sntp ${PN}-tickadj ${PN}-utils"
-# NOTE: you don't need ntpdate, use "ntpd -q -g -x"
+PACKAGES += "sntp ntpdc ntpq ${PN}-tickadj ${PN}-utils"
# ntp originally includes tickadj. It's split off for inclusion in small firmware images on platforms
# with wonky clocks (e.g. OpenSlug)
-RDEPENDS_${PN} = "${PN}-tickadj"
-# ntpd require libgcc for execution
-RDEPENDS_${PN} += "libgcc"
+RDEPENDS:${PN} = "${PN}-tickadj"
+# ntpd & sntp require libgcc for execution due to phtread_cancel/pthread_exit calls
+RDEPENDS:${PN} += "libgcc"
+RDEPENDS:sntp += "libgcc"
# Handle move from bin to utils package
-RPROVIDES_${PN}-utils = "${PN}-bin"
-RREPLACES_${PN}-utils = "${PN}-bin"
-RCONFLICTS_${PN}-utils = "${PN}-bin"
-
-SYSTEMD_PACKAGES = "${PN} ntpdate sntp"
-SYSTEMD_SERVICE_${PN} = "ntpd.service"
-SYSTEMD_SERVICE_ntpdate = "ntpdate.service"
-SYSTEMD_SERVICE_sntp = "sntp.service"
-SYSTEMD_AUTO_ENABLE_sntp = "disable"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-
-RPROVIDES_ntpdate += "ntpdate-systemd"
-RREPLACES_ntpdate += "ntpdate-systemd"
-RCONFLICTS_ntpdate += "ntpdate-systemd"
-
-RSUGGESTS_${PN} = "iana-etc"
-
-FILES_${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd ${libdir} \
+RPROVIDES:${PN}-utils = "${PN}-bin"
+RREPLACES:${PN}-utils = "${PN}-bin"
+RCONFLICTS:${PN}-utils = "${PN}-bin"
+# ntpdc and ntpq were split out of ntp-utils
+RDEPENDS:${PN}-utils = "ntpdc ntpq \
+ perl-module-lib \
+ perl-module-exporter \
+ perl-module-carp \
+ perl-module-version \
+ perl-module-socket \
+ perl-module-getopt-long \
+ "
+
+SYSTEMD_PACKAGES = "${PN} sntp"
+SYSTEMD_SERVICE:${PN} = "ntpd.service"
+SYSTEMD_SERVICE:sntp = "sntp.service"
+SYSTEMD_AUTO_ENABLE:sntp = "disable"
+
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
+
+RSUGGESTS:${PN} = "iana-etc"
+
+FILES:${PN} = "${sbindir}/ntpd.ntp ${sysconfdir}/ntp.conf ${sysconfdir}/init.d/ntpd \
${NTP_USER_HOME} \
- ${systemd_unitdir}/ntp-units.d/60-ntpd.list ${libexecdir}\
-"
-FILES_${PN}-tickadj = "${sbindir}/tickadj"
-FILES_${PN}-utils = "${sbindir} ${datadir}/ntp/lib"
-RDEPENDS_${PN}-utils += "perl"
-FILES_ntpdate = "${sbindir}/ntpdate \
- ${sysconfdir}/network/if-up.d/ntpdate-sync \
- ${bindir}/ntpdate-sync \
- ${sysconfdir}/default/ntpdate \
- ${systemd_unitdir}/system/ntpdate.service \
+ ${systemd_unitdir}/ntp-units.d/60-ntpd.list \
"
-FILES_sntp = "${sbindir}/sntp \
+FILES:${PN}-tickadj = "${sbindir}/tickadj"
+FILES:${PN}-utils = "${sbindir} ${datadir}/ntp/lib"
+RDEPENDS:${PN}-utils += "perl"
+FILES:sntp = "${sbindir}/sntp \
${sysconfdir}/default/sntp \
${systemd_unitdir}/system/sntp.service \
"
+FILES:ntpdc = "${sbindir}/ntpdc"
+FILES:ntpq = "${sbindir}/ntpq"
-CONFFILES_${PN} = "${sysconfdir}/ntp.conf"
-CONFFILES_ntpdate = "${sysconfdir}/default/ntpdate"
+CONFFILES:${PN} = "${sysconfdir}/ntp.conf"
INITSCRIPT_NAME = "ntpd"
# No dependencies, so just go in at the standard level (20)
INITSCRIPT_PARAMS = "defaults"
-pkg_postinst_ntpdate() {
- if ! grep -q -s ntpdate $D/var/spool/cron/root; then
- echo "adding crontab"
- test -d $D/var/spool/cron || mkdir -p $D/var/spool/cron
- echo "30 * * * * ${bindir}/ntpdate-sync silent" >> $D/var/spool/cron/root
- fi
-}
-
inherit update-alternatives
ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "ntpd"
+ALTERNATIVE:${PN} = "ntpd"
ALTERNATIVE_LINK_NAME[ntpd] = "${sbindir}/ntpd"
diff --git a/meta-networking/recipes-support/ntpsec/ntpsec/0001-wscript-Add-BISONFLAGS-support.patch b/meta-networking/recipes-support/ntpsec/ntpsec/0001-wscript-Add-BISONFLAGS-support.patch
new file mode 100644
index 0000000000..fb29fdc47e
--- /dev/null
+++ b/meta-networking/recipes-support/ntpsec/ntpsec/0001-wscript-Add-BISONFLAGS-support.patch
@@ -0,0 +1,31 @@
+From 792cb4f9d13450251c6344eed2b35f382c98df0d Mon Sep 17 00:00:00 2001
+From: Alex Kiernan <alexk@zuma.ai>
+Date: Thu, 19 Jan 2023 13:00:45 +0000
+Subject: [PATCH] wscript: Add BISONFLAGS support
+
+---
+Upstream-Status: Pending
+
+ wscript | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/wscript b/wscript
+index 7329d6e46889..de51f1e9cdd9 100644
+--- a/wscript
++++ b/wscript
+@@ -140,6 +140,7 @@ def configure(ctx):
+ # Ensure m4 is present, or bison will fail with SIGPIPE
+ ctx.find_program('m4')
+ ctx.load('bison')
++ ctx.add_os_flags('BISONFLAGS')
+
+ for opt in opt_map:
+ ctx.env[opt] = opt_map[opt]
+@@ -911,6 +912,7 @@ int main(int argc, char **argv) {
+ msg_setting("CFLAGS", " ".join(ctx.env.CFLAGS))
+ msg_setting("LDFLAGS", " ".join(ctx.env.LDFLAGS))
+ msg_setting("LINKFLAGS_NTPD", " ".join(ctx.env.LINKFLAGS_NTPD))
++ msg_setting("BISONFLAGS", ctx.env.BISONFLAGS)
+ msg_setting("PREFIX", ctx.env.PREFIX)
+ msg_setting("LIBDIR", ctx.env.LIBDIR)
+ msg_setting("Droproot Support", droproot_type)
diff --git a/meta-networking/recipes-support/ntpsec/ntpsec/volatiles.ntpsec b/meta-networking/recipes-support/ntpsec/ntpsec/volatiles.ntpsec
new file mode 100644
index 0000000000..b5f93568cd
--- /dev/null
+++ b/meta-networking/recipes-support/ntpsec/ntpsec/volatiles.ntpsec
@@ -0,0 +1,3 @@
+d ntp ntp 0755 @NTP_USER_HOME@ none
+d ntp ntp 0755 /var/log/ntpstats none
+f ntp ntp 0644 /var/log/ntpd.log none
diff --git a/meta-networking/recipes-support/ntpsec/ntpsec_1.2.2a.bb b/meta-networking/recipes-support/ntpsec/ntpsec_1.2.2a.bb
new file mode 100644
index 0000000000..9ad97e7689
--- /dev/null
+++ b/meta-networking/recipes-support/ntpsec/ntpsec_1.2.2a.bb
@@ -0,0 +1,129 @@
+SUMMARY = "The Network Time Protocol suite, refactored"
+HOMEPAGE = "https://www.ntpsec.org/"
+
+LICENSE = "CC-BY-4.0 & BSD-2-Clause & NTP & BSD-3-Clause & MIT"
+LIC_FILES_CHKSUM = "file://LICENSES/BSD-2;md5=653830da7b770a32f6f50f6107e0b186 \
+ file://LICENSES/BSD-3;md5=55e9dcf6a625a2dcfcda4ef6a647fbfd \
+ file://LICENSES/CC-BY-4.0;md5=2ab724713fdaf49e4523c4503bfd068d \
+ file://LICENSES/MIT;md5=5a9dfc801af3eb49df2055c9b07918b2 \
+ file://LICENSES/NTP;md5=cb56b7747f86157c78ca81f224806694"
+
+DEPENDS += "bison-native \
+ openssl \
+ python3"
+
+SRC_URI = "https://ftp.ntpsec.org/pub/releases/ntpsec-${PV}.tar.gz \
+ file://volatiles.ntpsec \
+ file://0001-wscript-Add-BISONFLAGS-support.patch \
+ "
+
+SRC_URI[sha256sum] = "e0ce93af222a0a9860e6f5a51aadba9bb5ca601d80b2aea118a62f0a3226950e"
+
+UPSTREAM_CHECK_URI = "ftp://ftp.ntpsec.org/pub/releases/"
+
+inherit pkgconfig python3-dir python3targetconfig systemd update-alternatives update-rc.d useradd waf features_check
+
+# RDEPENDS on gnuplot with this restriction
+REQUIRED_DISTRO_FEATURES = "x11"
+
+PACKAGECONFIG = "${@bb.utils.filter('DISTRO_FEATURES', 'seccomp systemd', d)} \
+ cap \
+ leap-smear \
+ mdns \
+ mssntp \
+ nts \
+ refclocks"
+
+PACKAGECONFIG:remove:riscv32 = "seccomp"
+
+PACKAGECONFIG[cap] = ",,libcap"
+PACKAGECONFIG[docs] = "--enable-doc --enable-manpage,--disable-doc --disable-manpage,"
+PACKAGECONFIG[leap-smear] = "--enable-leap-smear"
+PACKAGECONFIG[mdns] = ",,mdns"
+PACKAGECONFIG[mssntp] = "--enable-mssntp"
+PACKAGECONFIG[nts] = ",--disable-nts"
+PACKAGECONFIG[refclocks] = "--refclock=all,,pps-tools"
+PACKAGECONFIG[seccomp] = "--enable-seccomp,,libseccomp"
+PACKAGECONFIG[systemd] = ",,systemd"
+
+CC[unexport] = "1"
+CFLAGS[unexport] = "1"
+LDFLAGS[unexport] = "1"
+
+export PYTHON_VERSION = "${PYTHON_BASEVERSION}"
+export PYTAG = "cpython${@ d.getVar('PYTHON_BASEVERSION').replace('.', '')}"
+export pyext_PATTERN = "%s.so"
+export PYTHON_LDFLAGS = "-lpthread -ldl"
+
+CFLAGS:append = " -I${PYTHON_INCLUDE_DIR} -D_GNU_SOURCE"
+
+EXTRA_OECONF = "--cross-compiler='${CC}' \
+ --cross-cflags='${CFLAGS}' \
+ --cross-ldflags='${LDFLAGS}' \
+ --pyshebang=${bindir}/python3 \
+ --pythondir=${PYTHON_SITEPACKAGES_DIR} \
+ --pythonarchdir=${PYTHON_SITEPACKAGES_DIR} \
+ --enable-debug-gdb \
+ --enable-early-droproot"
+
+EXTRA_OEWAF_BUILD ?= "-v"
+
+NTP_USER_HOME ?= "/var/lib/ntp"
+
+BISONFLAGS = "--file-prefix-map=${WORKDIR}=${TARGET_DBGSRC_DIR}"
+
+do_configure:prepend() {
+ export BISONFLAGS="${BISONFLAGS}"
+}
+
+do_install:append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 755 ${S}/etc/rc/ntpd ${D}${sysconfdir}/init.d
+ cp -r ${S}/etc/ntp.d ${D}${sysconfdir}
+
+ sed -e 's:@NTP_USER_HOME@:${NTP_USER_HOME}:g' ${WORKDIR}/volatiles.ntpsec >${T}/volatiles.ntpsec
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ cp ${B}/main/etc/* ${D}${systemd_system_unitdir}
+ awk '{print $1, $5, $4, $2, $3, "-"}' ${T}/volatiles.ntpsec >${T}/tmpfiles.ntpsec
+ install -D -m 0644 ${T}/tmpfiles.ntpsec ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
+ else
+ install -D -m 0644 ${T}/volatiles.ntpsec ${D}${sysconfdir}/default/volatiles/99_${BPN}
+ fi
+}
+
+PACKAGE_BEFORE_PN = "${PN}-python ${PN}-utils ${PN}-viz"
+
+FILES:${PN} += "${nonarch_libdir}/tmpfiles.d/ntpsec.conf"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR} \
+ ${libdir}/libntpc.so.*"
+FILES:${PN}-utils = "${bindir}/ntpdig \
+ ${bindir}/ntpkeygen \
+ ${bindir}/ntpleapfetch \
+ ${bindir}/ntpmon \
+ ${bindir}/ntpq \
+ ${bindir}/ntpsnmpd \
+ ${bindir}/ntpsweep \
+ ${bindir}/ntptrace \
+ ${bindir}/ntpwait"
+FILES:${PN}-viz = "${bindir}/ntplogtemp \
+ ${bindir}/ntpviz"
+
+RDEPENDS:${PN} += "libgcc"
+RDEPENDS:${PN}-utils += "${PN}-python python3-core"
+RDEPENDS:${PN}-viz += "gnuplot ${PN}-python python3-core python3-compression python3-ctypes python3-logging python3-shell"
+
+USERADD_PACKAGES = "${PN}"
+USERADD_PARAM:${PN} = "--system --home-dir ${NTP_USER_HOME} \
+ --no-create-home \
+ --shell /bin/false --user-group ntp"
+
+INITSCRIPT_NAME = "ntpd"
+
+SYSTEMD_PACKAGES = "${PN} ${PN}-viz"
+SYSTEMD_SERVICE:${PN} = "ntpd.service ntp-wait.service"
+SYSTEMD_SERVICE:${PN}-viz = "ntplogtemp.service ntpviz-weekly.timer ntpviz-weekly.service ntpviz-daily.timer ntpviz-daily.service ntplogtemp.timer"
+
+ALTERNATIVE_PRIORITY = "80"
+
+ALTERNATIVE:${PN} = "ntpd"
+ALTERNATIVE_LINK_NAME[ntpd] = "${sbindir}/ntpd"
diff --git a/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket b/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket
new file mode 100644
index 0000000000..a8ae74fb88
--- /dev/null
+++ b/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp.socket
@@ -0,0 +1,9 @@
+[Unit]
+Description=Network Performance Testing Server Activation Socket
+
+[Socket]
+ListenStream=5000
+Accept=true
+
+[Install]
+WantedBy=sockets.target
diff --git a/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service b/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service
new file mode 100644
index 0000000000..b778e8552b
--- /dev/null
+++ b/meta-networking/recipes-support/nuttcp/nuttcp/nuttcp@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Network Performance Testing Server
+After=local-fs.target
+
+[Service]
+User=nobody
+ExecStart=/usr/bin/nuttcp -S
+StandardInput=socket
diff --git a/meta-networking/recipes-support/nuttcp/nuttcp_7.2.1.bb b/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
index 9430add487..115b51e96c 100644
--- a/meta-networking/recipes-support/nuttcp/nuttcp_7.2.1.bb
+++ b/meta-networking/recipes-support/nuttcp/nuttcp_8.2.2.bb
@@ -1,6 +1,3 @@
-# Copyright (C) 2013 Khem Raj <raj.khem@gmail.com>
-# Released under the MIT license (see COPYING.MIT for the terms)
-
SUMMARY = "network performance measurement tool"
DESCRIPTION = "nuttcp is a network performance measurement tool intended for use by network \
and system managers. Its most basic usage is to determine the raw TCP (or UDP) \
@@ -9,13 +6,17 @@ across an interconnecting network to a destination system, either transferring \
data for a specified time interval, or alternatively transferring a specified \
number of bytes."
HOMEPAGE = "http://www.nuttcp.net/Welcome%20Page.html"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
SECTION = "net"
-LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=ae7045c3c3616092e07d87f04ba0d960"
+LIC_FILES_CHKSUM = "file://${BP}.c;beginline=4;endline=30;md5=496a7c0bb83c07ff528d226bf85e05c5"
+
+UPSTREAM_CHECK_URI = "https://www.nuttcp.net/nuttcp/beta/"
-SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c"
-SRC_URI[md5sum] = "1ebf4a08bad2a295a8155f02995e8754"
-SRC_URI[sha256sum] = "c6e33810ccce67260f8d5d627f60e429d44f532365c58ed5673d035e2a59c4db"
+SRC_URI = "http://nuttcp.net/${BPN}/beta/${BP}.c \
+ file://nuttcp@.service \
+ file://nuttcp.socket"
+SRC_URI[md5sum] = "d3c92c4d2f261221193c3726c1b9a42f"
+SRC_URI[sha256sum] = "8c5595bcd27c2fd66831be74c390df078cfb1870aa427f2511ac2586d236c8a1"
S = "${WORKDIR}"
@@ -25,5 +26,13 @@ do_compile () {
do_install () {
install -d ${D}${bindir}
+ install -d ${D}${systemd_system_unitdir}
install -m 0755 nuttcp ${D}${bindir}
+ install -m 0644 ${WORKDIR}/nuttcp@.service ${D}${systemd_system_unitdir}
+ install -m 0644 ${WORKDIR}/nuttcp.socket ${D}${systemd_system_unitdir}
}
+
+FILES:${PN} += " \
+ ${bindir} \
+ ${systemd_system_unitdir} \
+"
diff --git a/meta-networking/recipes-support/open-isns/files/0001-isnsd.socket-use-run-instead-of-var-run.patch b/meta-networking/recipes-support/open-isns/files/0001-isnsd.socket-use-run-instead-of-var-run.patch
new file mode 100644
index 0000000000..1dde1cae88
--- /dev/null
+++ b/meta-networking/recipes-support/open-isns/files/0001-isnsd.socket-use-run-instead-of-var-run.patch
@@ -0,0 +1,26 @@
+From 9413921d5af5e5e38541f97fee0f1aa40024a3ed Mon Sep 17 00:00:00 2001
+From: Chen Qi <Qi.Chen@windriver.com>
+Date: Tue, 20 Oct 2020 13:21:57 +0800
+Subject: [PATCH] isnsd.socket: use /run instead of /var/run
+
+Upstream-Status: Pending
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+---
+ isnsd.socket | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/isnsd.socket b/isnsd.socket
+index 652cd46..7dfcf51 100644
+--- a/isnsd.socket
++++ b/isnsd.socket
+@@ -1,5 +1,5 @@
+ [Socket]
+-ListenStream=/var/run/isnsctl
++ListenStream=/run/isnsctl
+ PassCredentials=true
+
+ [Socket]
+--
+2.17.1
+
diff --git a/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch b/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch
deleted file mode 100644
index fbdc4e9113..0000000000
--- a/meta-networking/recipes-support/open-isns/open-isns/0001-util.h-endian.h-is-available-on-musl-on-linux.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From e0d86318227a23f00cf0f6639a6685bb9f5771a1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Dec 2017 09:42:19 -0800
-Subject: [PATCH] util.h: endian.h is available on musl on linux
-
-just checking for glibc alone is not enough since
-it excludes musl, therefore check for platform
-being linux as well
-
-Fixes build issues
-
-include/libisns/util.h:114:12: fatal error: sys/endian.h: No such file or directory
- # include <sys/endian.h>
- ^~~~~~~~~~~~~~
-
-Upstream-Status: Submitted
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- include/libisns/util.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/libisns/util.h b/include/libisns/util.h
-index 9a2bd13..6cc1a1b 100644
---- a/include/libisns/util.h
-+++ b/include/libisns/util.h
-@@ -100,7 +100,7 @@ enum {
- * There's no htonll yet
- */
- #ifndef htonll
--# ifdef __GLIBC__
-+# if defined(__GLIBC__) || defined(__linux__)
- # include <endian.h>
- # include <byteswap.h>
- # if __BYTE_ORDER == __BIG_ENDIAN
---
-2.15.1
-
diff --git a/meta-networking/recipes-support/open-isns/open-isns_0.98.bb b/meta-networking/recipes-support/open-isns/open-isns_0.102.bb
index 5e64f893e0..24c520901d 100644
--- a/meta-networking/recipes-support/open-isns/open-isns_0.98.bb
+++ b/meta-networking/recipes-support/open-isns/open-isns_0.102.bb
@@ -7,17 +7,17 @@ Storage Name Service (iSNS). The distribution includes the iSNS server, \
supporting persisten storage of registrations, isnsadm, a command line \
utility for managing nodes, and isnsdd, a corresponding discovery daemon."
HOMEPAGE = "http://github.com/gonzoleeman/open-isns/"
-LICENSE = "GPLv2+ & LGPLv2+"
+LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=321bf41f280cf805086dd5a720b37785"
SECTION = "net"
DEPENDS = "openssl"
-SRC_URI = "git://github.com/open-iscsi/open-isns \
- file://0001-util.h-endian.h-is-available-on-musl-on-linux.patch \
+SRC_URI = "git://github.com/open-iscsi/open-isns;branch=master;protocol=https \
+ file://0001-isnsd.socket-use-run-instead-of-var-run.patch \
"
-SRCREV = "e84374ce7d1f5fc58a4c0fc751e075b2cc752c34"
+SRCREV = "c0e6d9fedc5a7041260de477fe1a8455fa074113"
S = "${WORKDIR}/git"
@@ -26,7 +26,7 @@ inherit systemd autotools-brokensep update-rc.d
EXTRA_OECONF = " --prefix=${prefix} --enable-shared"
EXTRA_OEMAKE += "SYSTEMDDIR=${D}${systemd_unitdir}/system"
-do_install_append () {
+do_install:append () {
oe_runmake INCDIR=${D}${includedir}/libisns/ install_hdrs
oe_runmake LIBDIR=${D}${libdir} install_lib
@@ -35,6 +35,6 @@ do_install_append () {
${D}${sysconfdir}/init.d/openisns
}
-FILES_${PN} += "${libdir} ${systemd_unitdir}"
+FILES:${PN} += "${libdir} ${systemd_unitdir}"
INITSCRIPT_NAME = "openisns"
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch
new file mode 100644
index 0000000000..96270f860b
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-Add-resolv_compat.h-for-musl-builds.patch
@@ -0,0 +1,72 @@
+From 148aadcc1b61da6f6b9ee4bcd35c38b7fbaeb8a8 Mon Sep 17 00:00:00 2001
+From: Trevor Gamblin <trevor.gamblin@windriver.com>
+Date: Wed, 14 Apr 2021 10:24:52 -0400
+Subject: [PATCH] Add resolv_compat.h for musl builds
+
+musl doesn't implement res_ninit, so it needs to be defined
+independently for musl builds. This patch is based on the one at
+https://gitweb.gentoo.org/proj/musl.git/tree/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-resolver.patch?id=7f4100326793d55d45d0f5bb6178827ce6173513
+
+Upstream-Status: Pending
+
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ open-vm-tools/lib/nicInfo/nicInfoPosix.c | 4 +++
+ open-vm-tools/lib/nicInfo/resolv_compat.h | 30 +++++++++++++++++++++++
+ 2 files changed, 34 insertions(+)
+ create mode 100644 open-vm-tools/lib/nicInfo/resolv_compat.h
+
+diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+index 6f20547b2..f5064a9c0 100644
+--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
++++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+@@ -70,6 +70,10 @@
+ # include <net/if.h>
+ #endif
+
++#if !defined(__GLIBC__)
++#include "resolv_compat.h"
++#endif
++
+ /*
+ * resolver(3) and IPv6:
+ *
+diff --git a/open-vm-tools/lib/nicInfo/resolv_compat.h b/open-vm-tools/lib/nicInfo/resolv_compat.h
+new file mode 100644
+index 000000000..d768464b9
+--- /dev/null
++++ b/open-vm-tools/lib/nicInfo/resolv_compat.h
+@@ -0,0 +1,30 @@
++#if !defined(__GLIBC__)
++/***************************************************************************
++ * resolv_compat.h
++ *
++ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc
++ * Note: res_init() is actually deprecated according to
++ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html
++ **************************************************************************/
++#include <string.h>
++
++static inline int res_ninit(res_state statp)
++{
++ int rc = res_init();
++ if (statp != &_res) {
++ memcpy(statp, &_res, sizeof(*statp));
++ }
++ return rc;
++}
++
++static inline int res_nclose(res_state statp)
++{
++ if (!statp)
++ return -1;
++ if (statp != &_res) {
++ memset(statp, 0, sizeof(*statp));
++ }
++ return 0;
++}
++#endif
++
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
new file mode 100644
index 0000000000..69c8253117
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
@@ -0,0 +1,41 @@
+From 547d05ca417c6b75ad06bf3119e1df8869742a70 Mon Sep 17 00:00:00 2001
+From: Martin Kelly <mkelly@xevo.com>
+Date: Fri, 7 Apr 2017 15:20:30 -0700
+Subject: [PATCH] configure.ac: don't use dnet-config
+
+The dnet-config tool doesn't know about cross-compilation, so it injects
+-I/usr/include into the path, causing compiler errors. So instead find dnet via
+-ldnet.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Martin Kelly <mkelly@xevo.com>
+---
+ open-vm-tools/configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
+index 26bfdb682..9e2a1d6e3 100644
+--- a/open-vm-tools/configure.ac
++++ b/open-vm-tools/configure.ac
+@@ -1227,7 +1227,7 @@ if test "$with_dnet" = "yes"; then
+ AC_VMW_CHECK_LIB([dnet],
+ [DNET],
+ [],
+- [dnet-config],
++ [],
+ [],
+ [dnet.h],
+ [intf_open],
+@@ -1237,7 +1237,7 @@ if test "$with_dnet" = "yes"; then
+
+ if test $have_dnet = "no"; then
+ AC_MSG_ERROR(
+- [dnet-config was not found on your PATH. Please configure without dnet or install dnet - http://libdnet.sourceforge.net])
++ [dnet was not found. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net])
+ fi
+ fi
+
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-Use-configure-test-for-struct-timespec.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-Use-configure-test-for-struct-timespec.patch
new file mode 100644
index 0000000000..1029252c76
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0002-Use-configure-test-for-struct-timespec.patch
@@ -0,0 +1,50 @@
+From 74ab6b05fcba32031255624a31676e2aa0db133f Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 18 Nov 2015 09:03:00 +0000
+Subject: [PATCH] Use configure test for struct timespec
+
+Use the configure script to test for struct time spec instead of trying
+to keep track of what platforms has it.
+
+Upstream-Status: Pending
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+---
+ open-vm-tools/configure.ac | 1 +
+ open-vm-tools/lib/include/hgfsUtil.h | 8 +-------
+ 2 files changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
+index 9e2a1d6e3..2f34f6eda 100644
+--- a/open-vm-tools/configure.ac
++++ b/open-vm-tools/configure.ac
+@@ -1441,6 +1441,7 @@ AC_TYPE_OFF_T
+ AC_TYPE_PID_T
+ AC_TYPE_SIZE_T
+ AC_CHECK_MEMBERS([struct stat.st_rdev])
++AC_CHECK_MEMBERS([struct timespec.tv_sec],[],[],[[#include <time.h>]])
+ AC_HEADER_TIME
+ AC_STRUCT_TM
+ AC_C_VOLATILE
+diff --git a/open-vm-tools/lib/include/hgfsUtil.h b/open-vm-tools/lib/include/hgfsUtil.h
+index 609f4c000..a3a022d42 100644
+--- a/open-vm-tools/lib/include/hgfsUtil.h
++++ b/open-vm-tools/lib/include/hgfsUtil.h
+@@ -53,13 +53,7 @@
+ # include <time.h>
+ # endif
+ # include "vm_basic_types.h"
+-# if !defined _STRUCT_TIMESPEC && \
+- !defined _TIMESPEC_DECLARED && \
+- !defined __timespec_defined && \
+- !defined sun && \
+- !defined __FreeBSD__ && \
+- !__APPLE__ && \
+- !defined _WIN32
++# if !defined HAVE_STRUCT_TIMESPEC_TV_SEC
+ struct timespec {
+ time_t tv_sec;
+ long tv_nsec;
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
new file mode 100644
index 0000000000..b4bd646d61
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0003-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch
@@ -0,0 +1,63 @@
+From ef466581b53a1e64f53d4839bdacfab1d65cc6b9 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 18 Nov 2015 09:10:14 +0000
+Subject: [PATCH] Fix definition of ALLPERMS and ACCESSPERMS
+
+The ALLPERMS and ACCESSPERMS defines are not specified in POSIX so
+assume it is not there instead of testing for specific implementations.
+
+This is needed for musl libc.
+
+Upstream-Status: Pending
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+---
+ open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 8 +++++---
+ open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c | 3 +--
+ 2 files changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+index 4a0bc9378..6ed49e2b7 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+@@ -105,11 +105,13 @@ typedef struct DirectoryEntry {
+ #endif
+
+ /*
+- * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not defined in the
+- * Solaris version of <sys/stat.h>.
++ * ALLPERMS (mode 07777) and ACCESSPERMS (mode 0777) are not specified in
++ * POSIX.
+ */
+-#ifdef sun
++#ifndef ACCESSPERMS
+ # define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO)
++#endif
++#ifndef ALLPERMS
+ # define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)
+ #endif
+
+diff --git a/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c b/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c
+index 219065f74..b5b7e6203 100644
+--- a/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c
++++ b/open-vm-tools/services/plugins/dndcp/dnd/dndLinux.c
+@@ -53,7 +53,7 @@
+
+ #define DND_ROOTDIR_PERMS (S_IRWXU | S_IRWXG | S_IRWXO)
+ #define DND_STAGINGDIR_PERMS (S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH)
+-#ifdef sun
++#ifndef ACCESSPERMS
+ #define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO)
+ #endif
+ #ifdef __ANDROID__
+@@ -62,7 +62,6 @@
+ */
+ #define NO_SETMNTENT
+ #define NO_ENDMNTENT
+-#define ACCESSPERMS (S_IRWXU | S_IRWXG | S_IRWXO)
+ #endif
+
+
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Use-configure-to-test-for-feature-instead-of-platfor.patch
new file mode 100644
index 0000000000..f23235e902
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0004-Use-configure-to-test-for-feature-instead-of-platfor.patch
@@ -0,0 +1,144 @@
+From 4462efefdd61bff1e39e946b917b01433898be88 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 18 Nov 2015 10:05:07 +0000
+Subject: [PATCH] Use configure to test for feature instead of platform
+
+Test for various functions instead of trying to keep track of what
+platform and what version of the given platform has support for what.
+
+This should make it easier to port to currently unknown platforms and
+will solve the issue if a platform add support for a missing feature in
+the future.
+
+The features we test for are:
+- getifaddrs
+- getauxval
+- issetugid
+- __secure_getenv
+
+This is needed for musl libc.
+
+Upstream-Status: Pending
+
+Refit patch of open-vm-tools/lib/nicInfo/nicInfoPosix.c
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+Signed-off-by: Randy MacLeod <randy.macleod@windriver.com>
+---
+ open-vm-tools/configure.ac | 4 ++++
+ open-vm-tools/lib/misc/idLinux.c | 30 +++++++++++-------------
+ open-vm-tools/lib/nicInfo/nicInfoPosix.c | 6 ++++-
+ 3 files changed, 23 insertions(+), 17 deletions(-)
+
+diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
+index 2f34f6eda..daa0939c3 100644
+--- a/open-vm-tools/configure.ac
++++ b/open-vm-tools/configure.ac
+@@ -1169,6 +1169,7 @@ AC_CHECK_FUNCS(
+
+ AC_CHECK_FUNCS([ecvt])
+ AC_CHECK_FUNCS([fcvt])
++AC_CHECK_FUNCS([getifaddrs getauxval issetugid __secure_getenv])
+
+ AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes])
+
+@@ -1378,10 +1379,13 @@ fi
+ ###
+
+ AC_CHECK_HEADERS([crypt.h])
++AC_CHECK_HEADERS([ifaddrs.h])
+ AC_CHECK_HEADERS([inttypes.h])
+ AC_CHECK_HEADERS([stdint.h])
+ AC_CHECK_HEADERS([stdlib.h])
+ AC_CHECK_HEADERS([wchar.h])
++AC_CHECK_HEADERS([net/if.h])
++AC_CHECK_HEADERS([sys/auxv.h])
+ AC_CHECK_HEADERS([sys/inttypes.h])
+ AC_CHECK_HEADERS([sys/io.h])
+ AC_CHECK_HEADERS([sys/param.h]) # Required to make the sys/user.h check work correctly on FreeBSD
+diff --git a/open-vm-tools/lib/misc/idLinux.c b/open-vm-tools/lib/misc/idLinux.c
+index 3d7d1e303..0e12ac5bd 100644
+--- a/open-vm-tools/lib/misc/idLinux.c
++++ b/open-vm-tools/lib/misc/idLinux.c
+@@ -27,12 +27,9 @@
+ #include <sys/syscall.h>
+ #include <string.h>
+ #include <unistd.h>
+-#ifdef __linux__
+-#if defined(__GLIBC__) && \
+- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
++#ifdef HAVE_SYS_AUXV_H
+ #include <sys/auxv.h>
+ #endif
+-#endif
+ #ifdef __APPLE__
+ #include <sys/socket.h>
+ #include <TargetConditionals.h>
+@@ -1025,24 +1022,23 @@ Id_EndSuperUser(uid_t uid) // IN:
+ static Bool
+ IdIsSetUGid(void)
+ {
+-#if defined(__ANDROID__)
+- /* Android does not have a secure_getenv, so be conservative. */
+- return TRUE;
+-#else
+ /*
+ * We use __secure_getenv, which returns NULL if the binary is
+- * setuid or setgid. Alternatives include,
++ * setuid or setgid, when issetugid or getauxval(AT_SECURE) is not
++ * available. Alternatives include,
+ *
+- * a) getauxval(AT_SECURE); not available until glibc 2.16.
+- * b) __libc_enable_secure; may not be exported.
++ * a) issetugid(); not (yet?) available in glibc.
++ * b) getauxval(AT_SECURE); not available until glibc 2.16.
++ * c) __libc_enable_secure; may not be exported.
+ *
+- * Use (a) when we are based on glibc 2.16, or newer.
++ * Use (b) when we are based on glibc 2.16, or newer.
+ */
+
+-#if defined(__GLIBC__) && \
+- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
++#if HAVE_ISSETUGID
++ return issetugid();
++#elif HAVE_GETAUXVAL
+ return getauxval(AT_SECURE) != 0;
+-#else
++#elif HAVE___SECURE_GETENV
+ static const char envName[] = "VMW_SETUGID_TEST";
+
+ /*
+@@ -1062,7 +1058,9 @@ IdIsSetUGid(void)
+ return secure_getenv(envName) == NULL;
+ }
+ return TRUE;
+-#endif
++#else
++ /* Android does not have a secure_getenv, so be conservative. */
++ return TRUE;
+ #endif
+ }
+ #endif
+diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+index 0135e6a09..6f20547b2 100644
+--- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
++++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
+@@ -35,9 +35,13 @@
+ #include <sys/stat.h>
+ #include <errno.h>
+ #include <limits.h>
+-#if defined(__FreeBSD__) || defined(__APPLE__)
++#if HAVE_SYS_SYSCTL_H
+ # include <sys/sysctl.h>
++#endif
++#if HAVE_IFADDRS_H
+ # include <ifaddrs.h>
++#endif
++#if HAVE_NET_IF_H
+ # include <net/if.h>
+ #endif
+ #ifndef NO_DNET
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-test-for-sys-stat.h-include.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-test-for-sys-stat.h-include.patch
new file mode 100644
index 0000000000..fda4c37e59
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-test-for-sys-stat.h-include.patch
@@ -0,0 +1,30 @@
+From 79675399124b61f4e3da1f64f4b265f83dd26cdc Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 18 Nov 2015 10:41:01 +0000
+Subject: [PATCH] Use configure test for sys/stat.h include
+
+This is needed for musl libc.
+
+Upstream-Status: Pending
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+---
+ open-vm-tools/services/plugins/vix/vixTools.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/open-vm-tools/services/plugins/vix/vixTools.c b/open-vm-tools/services/plugins/vix/vixTools.c
+index 75d24a29e..d11c42178 100644
+--- a/open-vm-tools/services/plugins/vix/vixTools.c
++++ b/open-vm-tools/services/plugins/vix/vixTools.c
+@@ -66,7 +66,7 @@
+ #include <unistd.h>
+ #endif
+
+-#if defined(sun) || defined(__FreeBSD__) || defined(__APPLE__)
++#ifdef HAVE_SYS_STAT_H
+ #include <sys/stat.h>
+ #endif
+
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Fix-subdir-objects-configure-error.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Fix-subdir-objects-configure-error.patch
new file mode 100644
index 0000000000..4c6f6ce022
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0006-Fix-subdir-objects-configure-error.patch
@@ -0,0 +1,38 @@
+From 37ad9845b5b8ab7170a2aaba31a505b2a36ba0f8 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 13 Jun 2018 23:48:04 -0700
+Subject: [PATCH] Fix subdir objects configure error
+
+Fix build on musl while here
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/configure.ac | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
+index daa0939c3..497e9459a 100644
+--- a/open-vm-tools/configure.ac
++++ b/open-vm-tools/configure.ac
+@@ -326,7 +326,6 @@ AC_ARG_ENABLE(
+ [],
+ [enable_resolutionkms="auto"])
+
+-
+ AC_ARG_ENABLE(
+ vmwgfxctrl,
+ AS_HELP_STRING(
+@@ -335,7 +334,7 @@ AC_ARG_ENABLE(
+ [],
+ [enable_vmwgfxctrl="auto"])
+
+-AM_INIT_AUTOMAKE
++AM_INIT_AUTOMAKE([subdir-objects])
+
+ ###
+ ### Constants
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-include-poll.h-instead-of-sys-poll.h.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-include-poll.h-instead-of-sys-poll.h.patch
new file mode 100644
index 0000000000..fc0ce961c2
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0007-include-poll.h-instead-of-sys-poll.h.patch
@@ -0,0 +1,31 @@
+From d138b808a8b47a02a370b411149ef8ce7883ca6f Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 13 Jun 2018 23:02:50 -0700
+Subject: [PATCH] include poll.h instead of sys/poll.h
+
+including sys/poll.h is deprecated
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/open-vm-tools/lib/asyncsocket/asyncsocket.c b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+index 26aee553a..4f413db73 100644
+--- a/open-vm-tools/lib/asyncsocket/asyncsocket.c
++++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+@@ -70,8 +70,8 @@
+ #else
+ #include <stddef.h>
+ #include <ctype.h>
++#include <poll.h>
+ #include <sys/types.h>
+-#include <sys/poll.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
+ #include <netdb.h>
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-Rename-poll.h-to-vm_poll.h.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-Rename-poll.h-to-vm_poll.h.patch
new file mode 100644
index 0000000000..2654767099
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0008-Rename-poll.h-to-vm_poll.h.patch
@@ -0,0 +1,114 @@
+From e86d7b309bdf5b7c6c38faeded157e220d4ccc78 Mon Sep 17 00:00:00 2001
+From: Randy MacLeod <Randy.MacLeod@windriver.com>
+Date: Wed, 24 Mar 2021 16:21:35 -0400
+Subject: [PATCH] Rename poll.h to vm_poll.h
+
+Rename poll.h to vm_poll.h and switch from:
+ #include <sys/poll.h>
+to
+ #include <poll.h>
+
+musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this
+we rename poll.h to vm_poll.h.
+
+Update for open-vm-tools-11.2.5.
+
+Upstream-Status: Pending
+
+Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+---
+ open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
+ open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +-
+ open-vm-tools/lib/include/asyncsocket.h | 2 +-
+ open-vm-tools/lib/include/pollImpl.h | 2 +-
+ open-vm-tools/lib/include/{poll.h => vm_poll.h} | 2 +-
+ open-vm-tools/lib/rpcIn/rpcin.c | 2 +-
+ 6 files changed, 6 insertions(+), 6 deletions(-)
+ rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (99%)
+
+diff --git a/open-vm-tools/lib/asyncsocket/asyncsocket.c b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+index 4f413db73..684008d34 100644
+--- a/open-vm-tools/lib/asyncsocket/asyncsocket.c
++++ b/open-vm-tools/lib/asyncsocket/asyncsocket.c
+@@ -87,7 +87,7 @@
+ #include "random.h"
+ #include "asyncsocket.h"
+ #include "asyncSocketBase.h"
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "log.h"
+ #include "err.h"
+ #include "hostinfo.h"
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServer.c b/open-vm-tools/lib/hgfsServer/hgfsServer.c
+index c7b4cdd0f..d6e0cdc0e 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServer.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServer.c
+@@ -51,7 +51,7 @@
+ #include "hgfsDirNotify.h"
+ #include "hgfsThreadpool.h"
+ #include "userlock.h"
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "mutexRankLib.h"
+ #include "vm_basic_asm.h"
+ #include "unicodeOperations.h"
+diff --git a/open-vm-tools/lib/include/asyncsocket.h b/open-vm-tools/lib/include/asyncsocket.h
+index 09947002e..3800f5971 100644
+--- a/open-vm-tools/lib/include/asyncsocket.h
++++ b/open-vm-tools/lib/include/asyncsocket.h
+@@ -177,7 +177,7 @@ typedef struct AsyncSocket AsyncSocket;
+ * Or the client can specify its favorite poll class and locking behavior.
+ * Use of IVmdbPoll is only supported for regular sockets and for Attach.
+ */
+-#include "poll.h"
++#include "vm_poll.h"
+ struct IVmdbPoll;
+ typedef struct AsyncSocketPollParams {
+ int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */
+diff --git a/open-vm-tools/lib/include/pollImpl.h b/open-vm-tools/lib/include/pollImpl.h
+index 46442e556..8bc669970 100644
+--- a/open-vm-tools/lib/include/pollImpl.h
++++ b/open-vm-tools/lib/include/pollImpl.h
+@@ -44,7 +44,7 @@
+ #define INCLUDE_ALLOW_USERLEVEL
+ #include "includeCheck.h"
+
+-#include "poll.h"
++#include "vm_poll.h"
+ #include "vm_basic_asm.h"
+
+ #if defined(__cplusplus)
+diff --git a/open-vm-tools/lib/include/poll.h b/open-vm-tools/lib/include/vm_poll.h
+similarity index 99%
+rename from open-vm-tools/lib/include/poll.h
+rename to open-vm-tools/lib/include/vm_poll.h
+index ade356b9f..8759fb960 100644
+--- a/open-vm-tools/lib/include/poll.h
++++ b/open-vm-tools/lib/include/vm_poll.h
+@@ -60,7 +60,7 @@ extern "C" {
+ #if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
+ #include <sys/kernel.h>
+ #endif
+-#include <sys/poll.h>
++#include <poll.h>
+ #define HZ 100
+ #endif
+ #ifdef __ANDROID__
+diff --git a/open-vm-tools/lib/rpcIn/rpcin.c b/open-vm-tools/lib/rpcIn/rpcin.c
+index f1709fe03..c1a5dfdba 100644
+--- a/open-vm-tools/lib/rpcIn/rpcin.c
++++ b/open-vm-tools/lib/rpcIn/rpcin.c
+@@ -57,7 +57,7 @@
+
+ #if defined(VMTOOLS_USE_VSOCKET)
+ # include <glib.h>
+-# include "poll.h"
++# include "vm_poll.h"
+ # include "asyncsocket.h"
+ # include "vmci_defs.h"
+ #include "dataMap.h"
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-use-posix-strerror_r-unless-on-gnu-libc-system.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-use-posix-strerror_r-unless-on-gnu-libc-system.patch
new file mode 100644
index 0000000000..a6638adb9a
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0009-use-posix-strerror_r-unless-on-gnu-libc-system.patch
@@ -0,0 +1,44 @@
+From 666a043be7d6fe07a36599260f7214cbd29a79e7 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 13 Jun 2018 23:16:53 -0700
+Subject: [PATCH] use posix strerror_r unless on gnu libc system
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/lib/err/errPosix.c | 9 ++++++---
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+diff --git a/open-vm-tools/lib/err/errPosix.c b/open-vm-tools/lib/err/errPosix.c
+index c81b4c13f..7a4036402 100644
+--- a/open-vm-tools/lib/err/errPosix.c
++++ b/open-vm-tools/lib/err/errPosix.c
+@@ -31,6 +31,7 @@
+ #include <errno.h>
+ #include <string.h>
+ #include <locale.h>
++#include <stdio.h>
+
+ #include "vmware.h"
+ #include "errInt.h"
+@@ -63,11 +64,13 @@ ErrErrno2String(Err_Number errorNumber, // IN
+ {
+ char *p;
+
+-#if defined(__linux__) && !defined(__ANDROID__)
++#if defined(__GLIBC__) && !defined(__ANDROID__)
+ p = strerror_r(errorNumber, buf, bufSize);
+ #else
+- p = strerror(errorNumber);
+-#endif
++ if (strerror_r(errorNumber, buf, bufSize) != 0)
++ snprintf(buf, bufSize, "unknown error %i", errorNumber);
++ p = buf;
++#endif /* defined __GLIBC__ */
+ ASSERT(p != NULL);
+ return p;
+ }
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-Use-uintmax_t-for-handling-rlim_t.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-Use-uintmax_t-for-handling-rlim_t.patch
new file mode 100644
index 0000000000..6d0f8a3ae0
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0010-Use-uintmax_t-for-handling-rlim_t.patch
@@ -0,0 +1,38 @@
+From b294005f3748c6caee002fd7588964f7bf9b1d09 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 Mar 2021 17:26:53 -0400
+Subject: [PATCH] Use uintmax_t for handling rlim_t
+
+rlimit types are not representable with long or long long
+formats, therefore use uintmax_t to typecast rlim_t types
+and use %j to print it
+
+Upstream-Status: Pending
+
+Refit patch for open-vm-tools-11.2.5.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+index 6ed49e2b7..0cc7c4094 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+@@ -5294,8 +5294,8 @@ HgfsWriteCheckIORange(off_t offset, // IN:
+ goto exit;
+ }
+
+- LOG(6, "%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
+- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max);
++ //LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n",
++ // __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max));
+
+ /*
+ * Check the offset is within the file size range.
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-off64_t-instead-of-__off64_t.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-off64_t-instead-of-__off64_t.patch
new file mode 100644
index 0000000000..c6ab4d44d6
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0011-Use-off64_t-instead-of-__off64_t.patch
@@ -0,0 +1,35 @@
+From a8ef33b0623ba3494594a040ff5c77771168fdd6 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 27 Aug 2018 23:22:21 -0700
+Subject: [PATCH] Use off64_t instead of __off64_t
+
+Fixes
+unknown type name '__off64_t'
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/lib/file/fileIOPosix.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/open-vm-tools/lib/file/fileIOPosix.c b/open-vm-tools/lib/file/fileIOPosix.c
+index 492a4bf4a..a80a884cd 100644
+--- a/open-vm-tools/lib/file/fileIOPosix.c
++++ b/open-vm-tools/lib/file/fileIOPosix.c
+@@ -211,10 +211,10 @@ static AlignedPool alignedPool;
+ * the symbols (and anyone building XOPEN<700 gets nothing).
+ */
+ extern ssize_t preadv64(int fd, const struct iovec *iov, int iovcnt,
+- __off64_t offset) __attribute__ ((weak));
++ off64_t offset) __attribute__ ((weak));
+
+ extern ssize_t pwritev64(int fd, const struct iovec *iov, int iovcnt,
+- __off64_t offset) __attribute__ ((weak));
++ off64_t offset) __attribute__ ((weak));
+ #else
+ #error "Large file support is unavailable."
+ #endif
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-hgfsServerLinux-Consider-64bit-time_t-possibility.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
new file mode 100644
index 0000000000..388857fc10
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0012-hgfsServerLinux-Consider-64bit-time_t-possibility.patch
@@ -0,0 +1,44 @@
+From 2904454f3408a3abe3f2b0681504a66ea5ce713c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 Mar 2021 17:36:26 -0400
+Subject: [PATCH] hgfsServerLinux: Consider 64bit time_t possibility
+
+Upstream-Status: Pending
+
+Refit for open-vm-tools-11.2.5.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
+Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
+---
+ open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 14 --------------
+ 1 file changed, 14 deletions(-)
+
+diff --git a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+index 0cc7c4094..445a53881 100644
+--- a/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
++++ b/open-vm-tools/lib/hgfsServer/hgfsServerLinux.c
+@@ -2559,20 +2559,6 @@ HgfsStatToFileAttr(struct stat *stats, // IN: stat information
+ LOG(4, "%s: done, permissions %o%o%o%o, size %"FMT64"u\n", __FUNCTION__,
+ attr->specialPerms, attr->ownerPerms, attr->groupPerms,
+ attr->otherPerms, attr->size);
+-#ifdef __FreeBSD__
+-# if !defined(VM_X86_64) && !defined(VM_ARM_64)
+-# define FMTTIMET ""
+-# else
+-# define FMTTIMET "l"
+-# endif
+-#else
+-# define FMTTIMET "l"
+-#endif
+- LOG(4, "access: %"FMTTIMET"d/%"FMT64"u \nwrite: %"FMTTIMET"d/%"FMT64"u \n"
+- "attr: %"FMTTIMET"d/%"FMT64"u\n",
+- stats->st_atime, attr->accessTime, stats->st_mtime, attr->writeTime,
+- stats->st_ctime, attr->attrChangeTime);
+-#undef FMTTIMET
+
+ attr->userId = stats->st_uid;
+ attr->groupId = stats->st_gid;
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-open-vm-tools-Correct-include-path-for-poll.h.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-open-vm-tools-Correct-include-path-for-poll.h.patch
new file mode 100644
index 0000000000..f2f6893db0
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0013-open-vm-tools-Correct-include-path-for-poll.h.patch
@@ -0,0 +1,37 @@
+From eae0a65a9d6c9df20d05b4208aee23656915480b Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 7 Feb 2022 13:32:32 -0800
+Subject: [PATCH] open-vm-tools: Correct include path for poll.h
+
+sys/poll.h is deprecated and musl calls it out explicitly.
+
+Fixes
+| In file included from ../../../../git/open-vm-tools/services/plugins/gdp/gdpPlugin.c:35:
+| /mnt/b/yoe/master/build/tmp/work/core2-32-yoe-linux-musl/open-vm-tools/11.3.5-r0/recipe-sysroot/usr/include/sys/poll.h:1:2: error: redirecting incorrect #include <sys/poll.h> to <poll.h> [-Werror,-W#warnings]
+| #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
+| ^
+| 1 error generated.
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/services/plugins/gdp/gdpPlugin.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/open-vm-tools/services/plugins/gdp/gdpPlugin.c b/open-vm-tools/services/plugins/gdp/gdpPlugin.c
+index 96e6d717b..0b8a583b8 100644
+--- a/open-vm-tools/services/plugins/gdp/gdpPlugin.c
++++ b/open-vm-tools/services/plugins/gdp/gdpPlugin.c
+@@ -32,7 +32,7 @@
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/eventfd.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <unistd.h>
+ #endif
+
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0014-timeSync-Portable-way-to-print-64bit-time_t.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0014-timeSync-Portable-way-to-print-64bit-time_t.patch
new file mode 100644
index 0000000000..39eea767a0
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0014-timeSync-Portable-way-to-print-64bit-time_t.patch
@@ -0,0 +1,55 @@
+From 09cc01b2fa15e319afafa13d7365b399a60f443c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 3 Jan 2023 13:36:01 -0800
+Subject: [PATCH] timeSync: Portable way to print 64bit time_t
+
+This ensures when 64bit time_t is used on 32bit architectures (
+-D_TIME_BITS=64 ) then it can print it correctly as well.
+
+Fixes
+pllLinux.c:43:20: error: format specifies type 'long' but the argument has type 'long long' [-Werror,-Wformat]
+| prefix, tx->offset, tx->freq, tx->maxerror, tx->esterror,
+| ^~~~~~~~~~
+
+Upstream-Status: Submitted [https://github.com/vmware/open-vm-tools/pull/631]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ open-vm-tools/services/plugins/timeSync/pllLinux.c | 8 ++++----
+ open-vm-tools/services/plugins/timeSync/slewLinux.c | 2 +-
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/open-vm-tools/services/plugins/timeSync/pllLinux.c b/open-vm-tools/services/plugins/timeSync/pllLinux.c
+index e9c8e61de..90ba8c63f 100644
+--- a/open-vm-tools/services/plugins/timeSync/pllLinux.c
++++ b/open-vm-tools/services/plugins/timeSync/pllLinux.c
+@@ -38,10 +38,10 @@
+ static void
+ TimeSyncLogPLLState(const char *prefix, struct timex *tx)
+ {
+- g_debug("%s : off %ld freq %ld maxerr %ld esterr %ld status %d "
+- "const %ld precision %ld tolerance %ld tick %ld\n",
+- prefix, tx->offset, tx->freq, tx->maxerror, tx->esterror,
+- tx->status, tx->constant, tx->precision, tx->tolerance, tx->tick);
++ g_debug("%s : off %jd freq %jd maxerr %jd esterr %jd status %d "
++ "const %jd precision %jd tolerance %jd tick %jd\n",
++ prefix, (intmax_t)tx->offset, (intmax_t)tx->freq, (intmax_t)tx->maxerror, (intmax_t)tx->esterror,
++ tx->status, (intmax_t)tx->constant, (intmax_t)tx->precision, (intmax_t)tx->tolerance, (intmax_t)tx->tick);
+ }
+
+ /*
+diff --git a/open-vm-tools/services/plugins/timeSync/slewLinux.c b/open-vm-tools/services/plugins/timeSync/slewLinux.c
+index 1ab6e3584..0c304b5d7 100644
+--- a/open-vm-tools/services/plugins/timeSync/slewLinux.c
++++ b/open-vm-tools/services/plugins/timeSync/slewLinux.c
+@@ -156,6 +156,6 @@ TimeSync_Slew(int64 delta,
+ g_debug("adjtimex failed: %s\n", strerror(errno));
+ return FALSE;
+ }
+- g_debug("time slew start: %ld\n", tx.tick);
++ g_debug("time slew start: %jd\n", (intmax_t)tx.tick);
+ return TRUE;
+ }
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
new file mode 100644
index 0000000000..f6cae70cc5
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/tools.conf
@@ -0,0 +1,2 @@
+[guestinfo]
+disable-perf-mon=1
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
new file mode 100644
index 0000000000..38280464a7
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
@@ -0,0 +1,66 @@
+#!/bin/sh
+#
+# vmtoolsd Start/stop the vmware tools daemon
+#
+# chkconfig: 2345 90 60
+# description: vmtoolsd is a daemon that starts up. for some reason, it
+# doesn't include a sysv init startup file in the latest release.
+# so i have to write this
+#
+
+### BEGIN INIT INFO
+# Provides: vmtoolsd
+# Required-Start: $local_fs $syslog
+# Required-Stop: $local_fs $syslog
+# Default-Start: 2345
+# Default-Stop: 90
+# Short-Description: Run vmware tools daemon
+### END INIT INFO
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=/usr/bin/vmtoolsd
+NAME=vmtoolsd
+DESC="vmware tools daemon"
+VMTOOLSDARGS=" -b /var/run/vmtoolsd.pid "
+RETVAL="1"
+
+# source function library
+. /etc/init.d/functions
+
+test -f $DAEMON || exit 0
+
+
+case "$1" in
+ start)
+ echo -n "Starting vmware tools daemon: "
+ start-stop-daemon --start --quiet --exec $DAEMON -- $VMTOOLSDARGS
+ RETVAL=$?
+ if [ $RETVAL -eq 0 ] ; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ ;;
+ stop)
+ echo -n "Stopping vmware tools daemon: "
+ start-stop-daemon --stop --quiet --pidfile /var/run/vmtoolsd.pid
+ RETVAL=$?
+ if [ $RETVAL -eq 0 ] ; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ ;;
+ status)
+ status vmtoolsd
+ exit $?
+ ;;
+ restart)
+ $0 stop && sleep 1 && $0 start
+ ;;
+ *)
+ echo "Usage: /etc/init.d/vmtoolsd {start|stop|status|restart}"
+ exit 1
+esac
+
+exit $RETVAL
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
new file mode 100644
index 0000000000..d30e38055c
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Open Virtual Machine Tools (VMware Tools)
+ConditionVirtualization=vmware
+
+[Service]
+ExecStart=/usr/bin/vmtoolsd
+Restart=on-failure
+KillSignal=SIGKILL
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools_12.3.5.bb b/meta-networking/recipes-support/open-vm-tools/open-vm-tools_12.3.5.bb
new file mode 100644
index 0000000000..82aab051f1
--- /dev/null
+++ b/meta-networking/recipes-support/open-vm-tools/open-vm-tools_12.3.5.bb
@@ -0,0 +1,124 @@
+# This recipe is modified from the recipe originally found in the Open-Switch
+# repository:
+#
+# https://github.com/open-switch/ops-build
+# yocto/openswitch/meta-foss-openswitch/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.0.5.bb
+# Commit 9008de2d8e100f3f868c66765742bca9fa98f3f9
+#
+# The recipe packaging has been relicensed under the MIT license for inclusion
+# in meta-openembedded by agreement of the author (Diego Dompe).
+#
+
+SUMMARY = "Tools to enhance VMWare guest integration and performance"
+HOMEPAGE = "https://github.com/vmware/open-vm-tools"
+DESCRIPTION = "\
+open-vm-tools is a set of services and modules that enable several features in VMware products \
+for better management of and seamless user interactions with guests.\
+"
+SECTION = "vmware-tools"
+
+LICENSE = "LGPL-2.0-only & GPL-2.0-only & BSD-2-Clause & CDDL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=559317809c5444fb39ceaf6ac45c43ac"
+LICENSE:modules/freebsd/vmblock = "BSD-2-Clause"
+LICENSE:modules/freebsd/vmmemctl = "GPL-2.0-only"
+LICENSE:modules/freebsd/vmxnet = "GPL-2.0-only"
+LICENSE:modules/linux = "GPL-2.0-only"
+LICENSE:modules/solaris = "CDDL-1.0"
+
+SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https;branch=stable-12.3.x \
+ file://tools.conf \
+ file://vmtoolsd.service \
+ file://vmtoolsd.init \
+ file://0001-configure.ac-don-t-use-dnet-config.patch;patchdir=.. \
+ file://0002-Use-configure-test-for-struct-timespec.patch;patchdir=.. \
+ file://0003-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch;patchdir=.. \
+ file://0004-Use-configure-to-test-for-feature-instead-of-platfor.patch;patchdir=.. \
+ file://0005-Use-configure-test-for-sys-stat.h-include.patch;patchdir=.. \
+ file://0006-Fix-subdir-objects-configure-error.patch;patchdir=.. \
+ file://0007-include-poll.h-instead-of-sys-poll.h.patch;patchdir=.. \
+ file://0008-Rename-poll.h-to-vm_poll.h.patch;patchdir=.. \
+ file://0009-use-posix-strerror_r-unless-on-gnu-libc-system.patch;patchdir=.. \
+ file://0010-Use-uintmax_t-for-handling-rlim_t.patch;patchdir=.. \
+ file://0011-Use-off64_t-instead-of-__off64_t.patch;patchdir=.. \
+ file://0012-hgfsServerLinux-Consider-64bit-time_t-possibility.patch;patchdir=.. \
+ file://0013-open-vm-tools-Correct-include-path-for-poll.h.patch;patchdir=.. \
+ file://0014-timeSync-Portable-way-to-print-64bit-time_t.patch;patchdir=.. \
+ "
+
+UPSTREAM_CHECK_GITTAGREGEX = "stable-(?P<pver>\d+(\.\d+)+)"
+
+SRC_URI:append:libc-musl = " file://0001-Add-resolv_compat.h-for-musl-builds.patch;patchdir=.. \
+"
+
+SRCREV = "1b362b9eb449fb5de3809aaea4a636ece30ee5b7"
+
+S = "${WORKDIR}/git/open-vm-tools"
+
+DEPENDS = "glib-2.0 glib-2.0-native util-linux libdnet procps libtirpc"
+
+# open-vm-tools is supported only on x86.
+COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux'
+
+inherit autotools pkgconfig systemd update-rc.d
+
+SYSTEMD_SERVICE:${PN} = "vmtoolsd.service"
+
+EXTRA_OECONF = "--without-icu --disable-multimon --disable-docs \
+ --disable-tests --without-gtkmm --without-xerces --without-pam \
+ --disable-vgauth --disable-deploypkg --disable-containerinfo \
+ --without-root-privileges --without-kernel-modules --with-tirpc \
+ --with-udev-rules-dir=${nonarch_base_libdir}/udev/rules.d"
+
+NO_X11_FLAGS = "--without-x --without-gtk2 --without-gtk3"
+X11_DEPENDS = "libxext libxi libxrender libxrandr libxtst gtk+ gdk-pixbuf"
+PACKAGECONFIG[x11] = ",${NO_X11_FLAGS},${X11_DEPENDS}"
+
+# fuse gets implicitly detected; there is no --without-fuse option.
+PACKAGECONFIG[fuse] = ",,fuse"
+
+CFLAGS:append:toolchain-clang = " -Wno-address-of-packed-member -Wno-error=unused-function"
+FILES:${PN} += "\
+ ${libdir}/open-vm-tools/plugins/vmsvc/lib*.so \
+ ${libdir}/open-vm-tools/plugins/common/lib*.so \
+ ${sysconfdir}/vmware-tools/tools.conf \
+"
+FILES:${PN}-locale += "${datadir}/open-vm-tools/messages"
+FILES:${PN}-dev += "${libdir}/open-vm-tools/plugins/common/lib*.la"
+
+CONFFILES:${PN} += "${sysconfdir}/vmware-tools/tools.conf"
+
+RDEPENDS:${PN} = "util-linux libdnet fuse"
+
+do_install:append() {
+ if ! ${@bb.utils.contains('DISTRO_FEATURES','usrmerge','true','false',d)}; then
+ install -d ${D}/sbin
+ ln -sf ${sbindir}/mount.vmhgfs ${D}/sbin/mount.vmhgfs
+ fi
+ install -d ${D}${sysconfdir}/vmware-tools
+ if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+ install -d ${D}${systemd_unitdir}/system
+ install -m 644 ${WORKDIR}/*.service ${D}${systemd_unitdir}/system
+ else
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/vmtoolsd.init ${D}${sysconfdir}/init.d/vmtoolsd
+ fi
+ install -m 0644 ${WORKDIR}/tools.conf ${D}${sysconfdir}/vmware-tools/tools.conf
+}
+
+do_configure:prepend() {
+ export CUSTOM_DNET_NAME=dnet
+ export CUSTOM_DNET_LIBS=-L${STAGING_LIBDIR}/libdnet.so
+}
+
+INITSCRIPT_PACKAGES = "${PN}"
+INITSCRIPT_NAME:${PN} = "vmtoolsd"
+INITSCRIPT_PARAMS:${PN} = "start 90 2 3 4 5 . stop 60 0 1 6 ."
+
+python() {
+ if 'filesystems-layer' not in d.getVar('BBFILE_COLLECTIONS').split():
+ raise bb.parse.SkipRecipe('Requires meta-filesystems to be present to provide fuse.')
+}
+
+CVE_PRODUCT = "open-vm-tools vmware:tools"
+CVE_STATUS[CVE-2014-4199] = "fixed-version: No action required. The current version (12.3.5) is not affected by the CVE which affects version 10.0.3"
+CVE_STATUS[CVE-2014-4200] = "fixed-version: No action required. The current version (12.3.5) is not affected by the CVE which affects version 10.0.3"
diff --git a/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch b/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch
deleted file mode 100644
index d4e02be450..0000000000
--- a/meta-networking/recipes-support/openipmi/files/do-not-install-pyc-and-pyo.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Do not install pyc and pyo for python module
-
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
----
- swig/python/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/swig/python/Makefile.am b/swig/python/Makefile.am
-index da95a81..97a62bf 100644
---- a/swig/python/Makefile.am
-+++ b/swig/python/Makefile.am
-@@ -33,8 +33,6 @@ CLEANFILES = OpenIPMI_wrap.c OpenIPMI.py OpenIPMI.pyo OpenIPMI.pyc
- install-exec-local: _OpenIPMI.la OpenIPMI.py OpenIPMI.pyc OpenIPMI.pyo
- $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR)
- $(INSTALL_DATA) OpenIPMI.py "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
-- $(INSTALL_DATA) OpenIPMI.pyc "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
-- $(INSTALL_DATA) OpenIPMI.pyo "$(DESTDIR)$(PYTHON_INSTALL_DIR)"
- if test "x$(PYTHON_GUI_DIR)" = "xopenipmigui"; then \
- $(INSTALL) -d $(DESTDIR)$(bindir); \
- $(INSTALL_SCRIPT) $(srcdir)/openipmigui.py "$(DESTDIR)$(bindir)/openipmigui";\
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch b/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch
index 449142fcfa..5bbccdcbf6 100644
--- a/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch
+++ b/meta-networking/recipes-support/openipmi/files/fix-symlink-install-error-in-cmdlang.patch
@@ -1,20 +1,26 @@
-Author: Aws Ismail <aws.ismail@windriver.com>
-Date: Thu Jun 7 16:00:13 2012 -0400
+From 0ccfefe624e25f937b27b2caf3671e80c2c29391 Mon Sep 17 00:00:00 2001
+From: Aws Ismail <aws.ismail@windriver.com>
+Date: Thu, 7 Jun 2012 16:00:13 -0400
+Subject: [PATCH] Fix symlink install error in cmdlang
- This patch fixes the error during the install stage when
- creating a symbolic link for opeipmish in openipmi/cmdlang
-
- Upstream-Status: Pending
-
- Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
+This patch fixes the error during the install stage when
+creating a symbolic link for opeipmish in openipmi/cmdlang
-Index: OpenIPMI-2.0.24/cmdlang/Makefile.am
-===================================================================
---- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am
-+++ OpenIPMI-2.0.24/cmdlang/Makefile.am
-@@ -35,6 +35,7 @@ openipmish_LDADD = libOpenIPMIcmdlang.l
+Upstream-Status: Pending
+
+Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
+
+---
+ cmdlang/Makefile.am | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/cmdlang/Makefile.am b/cmdlang/Makefile.am
+index 7235446..4a81ae3 100644
+--- a/cmdlang/Makefile.am
++++ b/cmdlang/Makefile.am
+@@ -41,6 +41,7 @@ openipmish_CFLAGS = -Wall -Wsign-compare -I$(top_builddir)/include \
# compatability.
- install-data-local:
+ install-exec-hook:
rm -f $(DESTDIR)$(bindir)/ipmish
+ mkdir -p $(DESTDIR)$(bindir)/
$(LN_S) openipmish $(DESTDIR)$(bindir)/ipmish
diff --git a/meta-networking/recipes-support/openipmi/files/include_sys_types.patch b/meta-networking/recipes-support/openipmi/files/include_sys_types.patch
index 082511a67b..18129e6fcb 100644
--- a/meta-networking/recipes-support/openipmi/files/include_sys_types.patch
+++ b/meta-networking/recipes-support/openipmi/files/include_sys_types.patch
@@ -1,12 +1,26 @@
+From d667aedc37aeabdb9f8574ee0b9cf85b844ca2d2 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 2 Jun 2017 21:58:32 -0700
+Subject: [PATCH] openipmi: Fix build with musl
+
include sys/types.h for u_int32_t
ui.c:340:5: error: unknown type name 'u_int32_t'; did you mean 'uint32_t'?
u_int32_t addr;
^~~~~~~~~
-Index: OpenIPMI-2.0.24/ui/ui.c
-===================================================================
---- OpenIPMI-2.0.24.orig/ui/ui.c
-+++ OpenIPMI-2.0.24/ui/ui.c
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+---
+ ui/ui.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/ui/ui.c b/ui/ui.c
+index 9c6a51f..34f7e34 100644
+--- a/ui/ui.c
++++ b/ui/ui.c
@@ -42,6 +42,7 @@
#include <fcntl.h>
#include <time.h>
diff --git a/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch b/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch
index 51a398ba53..d9ee5cc28f 100644
--- a/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch
+++ b/meta-networking/recipes-support/openipmi/files/ipmi-init-fix-the-arguments.patch
@@ -1,3 +1,6 @@
+From 7d9f6526dbcd46130d279c363d38781969807f74 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Mon, 29 Dec 2014 18:16:04 +0800
Subject: [PATCH] ipmi-init: fix the arguments
The functions success/failure/warning defined in /etc/init.d/functions
@@ -7,12 +10,13 @@ not a string.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+
---
ipmi.init | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/ipmi.init b/ipmi.init
-index 2ebcd94..d8161c5 100644
+index bd80f0d..53305bb 100644
--- a/ipmi.init
+++ b/ipmi.init
@@ -45,17 +45,17 @@ elif [ -r /etc/init.d/functions ]; then
@@ -36,6 +40,3 @@ index 2ebcd94..d8161c5 100644
echo
;;
*)
---
-1.9.1
-
diff --git a/meta-networking/recipes-support/openipmi/files/openipmi-helper b/meta-networking/recipes-support/openipmi/files/openipmi-helper
index 4cebfb9c6a..4cebfb9c6a 100755..100644
--- a/meta-networking/recipes-support/openipmi/files/openipmi-helper
+++ b/meta-networking/recipes-support/openipmi/files/openipmi-helper
diff --git a/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch b/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch
index 1fa68f9bac..f14626a38d 100644
--- a/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch
+++ b/meta-networking/recipes-support/openipmi/files/openipmi-no-openipmigui-man.patch
@@ -1,16 +1,20 @@
-Author: Aws Ismail <aws.ismail@windriver.com>
-Date: Thu Jun 7 12:28:34 2012 -0400
+From c76e727433ed895c605f9e7a3612bbc16ff558de Mon Sep 17 00:00:00 2001
+From: Aws Ismail <aws.ismail@windriver.com>
+Date: Thu, 7 Jun 2012 12:28:34 -0400
+Subject: [PATCH] Do not build openipmigui man page
- This patch was carried over from WRL4.3 (openipmi v2.0.16)
-
- It was updated for openipmi v2.0.19
-
- Disable making openipmigui man page since we don't need it
-
- Upstream-Status: Pending
-
- Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
- Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+This patch was carried over from WRL4.3 (openipmi v2.0.16)
+It was updated for openipmi v2.0.19
+Disable making openipmigui man page since we don't need it
+
+Upstream-Status: Pending
+
+Signed-off-by: Aws Ismail <aws.ismail@windriver.com>
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+
+---
+ man/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/man/Makefile.am b/man/Makefile.am
index 632f55b..5ce79f5 100644
diff --git a/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch b/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch
deleted file mode 100644
index 83485a9e60..0000000000
--- a/meta-networking/recipes-support/openipmi/files/openipmi-remove-host-path-from-la_LDFLAGS.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa0dc0783a6ff5fb56c914b640836223e3c192bb Mon Sep 17 00:00:00 2001
-From: Jackie Huang <jackie.huang@windriver.com>
-Date: Mon, 29 Dec 2014 18:16:04 +0800
-Subject: [PATCH] remove host path from la_LDFLAGS
-
-Upstream-Status: Inappropriate [ cross compile specific ]
-
-Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
----
- cmdlang/Makefile.am | 2 +-
- glib/Makefile.am | 4 ++--
- tcl/Makefile.am | 2 +-
- unix/Makefile.am | 4 ++--
- 4 files changed, 6 insertions(+), 6 deletions(-)
-
-Index: OpenIPMI-2.0.24/cmdlang/Makefile.am
-===================================================================
---- OpenIPMI-2.0.24.orig/cmdlang/Makefile.am
-+++ OpenIPMI-2.0.24/cmdlang/Makefile.am
-@@ -15,8 +15,7 @@ libOpenIPMIcmdlang_la_SOURCES = cmdlang.
- libOpenIPMIcmdlang_la_LIBADD = -lm \
- $(top_builddir)/utils/libOpenIPMIutils.la \
- $(top_builddir)/lib/libOpenIPMI.la
--libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
-- -L$(libdir)
-+libOpenIPMIcmdlang_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION)
-
- bin_PROGRAMS = openipmish
-
-Index: OpenIPMI-2.0.24/unix/Makefile.am
-===================================================================
---- OpenIPMI-2.0.24.orig/unix/Makefile.am
-+++ OpenIPMI-2.0.24/unix/Makefile.am
-@@ -10,14 +10,12 @@ lib_LTLIBRARIES = libOpenIPMIposix.la li
- libOpenIPMIpthread_la_SOURCES = posix_thread_os_hnd.c selector.c
- libOpenIPMIpthread_la_LIBADD = -lpthread $(GDBM_LIB) \
- $(top_builddir)/utils/libOpenIPMIutils.la $(RT_LIB)
--libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
-- -L$(libdir)
-+libOpenIPMIpthread_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION)
-
- libOpenIPMIposix_la_SOURCES = posix_os_hnd.c selector.c
- libOpenIPMIposix_la_LIBADD = $(top_builddir)/utils/libOpenIPMIutils.la \
- $(GDBM_LIB) $(RT_LIB)
--libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION) \
-- -L$(libdir)
-+libOpenIPMIposix_la_LDFLAGS = -rdynamic -version-info $(LD_VERSION)
-
- noinst_HEADERS = heap.h
-
diff --git a/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch b/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch
deleted file mode 100644
index 3894075906..0000000000
--- a/meta-networking/recipes-support/openipmi/files/openipmigui-not-compile-pyc-pyo.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-openipmi load swig/python/.libs/_OpenIPMI.so to create .pyc and .pyo files.
-It fails when multilib is enable:
-
-| ImportError: .../lib32-openipmi/2.0.25-r0/OpenIPMI-2.0.25/swig/python/.libs/_OpenIPMI.so: wrong ELF class: ELFCLASS32
-
-Don't compile and install .pyc and .pyo files to fix the failure.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-diff --git a/swig/python/openipmigui/Makefile.am b/swig/python/openipmigui/Makefile.am
-index 570e7b9..88258bf 100644
---- a/swig/python/openipmigui/Makefile.am
-+++ b/swig/python/openipmigui/Makefile.am
-@@ -34,9 +34,9 @@ localcopy:
- fi \
- done
-
--all-local: localcopy $(PYC_FILES) $(PYO_FILES)
-+all-local: localcopy
-
--install-exec-local: $(EXTRA_DIST) $(PYC_FILES) $(PYO_FILES)
-+install-exec-local: $(EXTRA_DIST)
- $(INSTALL) -d $(DESTDIR)$(PYTHON_INSTALL_DIR)/openipmigui
- $(INSTALL_DATA) $^ $(DESTDIR)$(PYTHON_INSTALL_DIR)/openipmigui
-
diff --git a/meta-networking/recipes-support/openipmi/openipmi_2.0.25.bb b/meta-networking/recipes-support/openipmi/openipmi_2.0.35.bb
index d28ebd4845..1209c064f5 100644
--- a/meta-networking/recipes-support/openipmi/openipmi_2.0.25.bb
+++ b/meta-networking/recipes-support/openipmi/openipmi_2.0.35.bb
@@ -11,11 +11,12 @@ DEPENDS = " \
net-snmp \
openssl \
popt \
- python \
+ python3 \
swig-native \
+ readline \
"
-LICENSE = "GPLv2 & LGPLv2.1 & BSD"
+LICENSE = "GPL-2.0-only & LGPL-2.1-only & BSD-3-Clause"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
@@ -25,46 +26,45 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
SRC_URI = "${SOURCEFORGE_MIRROR}/openipmi/OpenIPMI-${PV}.tar.gz \
file://fix-symlink-install-error-in-cmdlang.patch \
file://openipmi-no-openipmigui-man.patch \
- file://openipmi-remove-host-path-from-la_LDFLAGS.patch \
file://ipmi-init-fix-the-arguments.patch \
- file://do-not-install-pyc-and-pyo.patch \
file://include_sys_types.patch \
- file://openipmigui-not-compile-pyc-pyo.patch \
file://openipmi-helper \
file://ipmi.service \
"
S = "${WORKDIR}/OpenIPMI-${PV}"
-SRC_URI[md5sum] = "1461ac4d78fc516646fd0a6e605a8b05"
-SRC_URI[sha256sum] = "f0f1a0ec732409930b7a31a6daa6cf39b585f52059b62a5f092b7ece21aa75a5"
-inherit autotools-brokensep pkgconfig pythonnative perlnative update-rc.d systemd
+SRC_URI[sha256sum] = "b059114f6299d73f04ff6e76a0857a0ab81aa362dee99644d256b223872437ad"
+
+inherit autotools-brokensep pkgconfig perlnative update-rc.d systemd cpan-base python3targetconfig
+
+CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
EXTRA_OECONF = "--disable-static \
--with-perl='${STAGING_BINDIR_NATIVE}/perl-native/perl' \
- --with-python='${STAGING_BINDIR_NATIVE}/python-native/python' \
- --with-pythoninstall='${PYTHON_SITEPACKAGES_DIR}' \
- --with-glibver=2.0"
+ --with-glibver=2.0 \
+ --with-pythoncflags='-I${STAGING_INCDIR}/${PYTHON_DIR}${PYTHON_ABI}' \
+ "
PACKAGECONFIG ??= "gdbm"
PACKAGECONFIG[gdbm] = "ac_cv_header_gdbm_h=yes,ac_cv_header_gdbm_h=no,gdbm,"
PACKAGES += "${PN}-perl ${PN}-python"
+PRIVATE_LIBS:${PN}-perl = "libOpenIPMI.so.0"
-FILES_${PN}-perl = " \
+FILES:${PN}-perl = " \
${libdir}/perl/vendor_perl/*/OpenIPMI.pm \
${libdir}/perl/vendor_perl/*/auto/OpenIPMI/OpenIPMI.so \
"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
+FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
-FILES_${PN}-dbg += " \
+FILES:${PN}-dbg += " \
${libdir}/perl/vendor_perl/*/auto/OpenIPMI/.debug \
${PYTHON_SITEPACKAGES_DIR}/.debug \
"
do_configure () {
-
# Let's perform regular configuration first then handle perl issues.
autotools_do_configure
@@ -78,11 +78,16 @@ do_configure () {
echo "SAL: STAGING_INCDIR_NATIVE = $STAGING_INCDIR_NATIVE"
echo "SAL: libdir = $libdir"
sed -i -e "/^PERL_CFLAGS/s:-I/usr/local/include:-I${STAGING_INCDIR_NATIVE}:g" $i
+ sed -i -e "/^PERL_CFLAGS/s:-I .* :-I ${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}/CORE :g" $i
sed -i -e "/^PERL_INSTALL_DIR/s:^PERL_INSTALL_DIR = .*:PERL_INSTALL_DIR = ${libdir}/perl/vendor_perl/$perl_ver:g" $i
done
}
-do_install_append () {
+do_compile:append () {
+ sed -i -e 's#${RECIPE_SYSROOT_NATIVE}##g' ${S}/swig/perl/OpenIPMI_wrap.c
+}
+
+do_install:append () {
echo "SAL: D = $D"
echo "SAL: libdir = $libdir"
install -m 0755 -d ${D}${sysconfdir}/sysconfig ${D}${sysconfdir}/init.d
@@ -106,5 +111,5 @@ do_install_append () {
INITSCRIPT_NAME = "ipmi"
INITSCRIPT_PARAMS = "start 30 . stop 70 0 1 2 3 4 5 6 ."
-SYSTEMD_SERVICE_${PN} = "ipmi.service"
+SYSTEMD_SERVICE:${PN} = "ipmi.service"
SYSTEMD_AUTO_ENABLE = "disable"
diff --git a/meta-networking/recipes-support/openvpn/openvpn/0001-configure.ac-eliminate-build-path-from-openvpn-versi.patch b/meta-networking/recipes-support/openvpn/openvpn/0001-configure.ac-eliminate-build-path-from-openvpn-versi.patch
new file mode 100644
index 0000000000..03b454d625
--- /dev/null
+++ b/meta-networking/recipes-support/openvpn/openvpn/0001-configure.ac-eliminate-build-path-from-openvpn-versi.patch
@@ -0,0 +1,48 @@
+From ea179d83b0aa62719d90748cd1fb260f40055f15 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Mon, 13 Jun 2022 22:44:28 +0800
+Subject: [PATCH] configure.ac: eliminate build path from openvpn --version
+ option
+
+Before the patch:
+$ openvpn --version
+OpenVPN 2.5.7 x86_64-poky-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL]
+[snip]
+Compile time defines: enable_async_push=no enable_comp_stub=no
+[snip]
+with_crypto_library=openssl with_gnu_ld=yes
+with_libtool_sysroot=/buildarea/build/tmp/work/core2-64-poky-linux/openvpn/2.5.7-r0/recipe-sysroot
+with_mem_check=no with_openssl_engine=auto
+
+After the patch:
+$ openvpn --version
+OpenVPN 2.5.7 x86_64-poky-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL]
+[snip]
+Compile time defines: enable_async_push=no enable_comp_stub=no
+[snip]
+with_crypto_library=openssl with_gnu_ld=yes with_mem_check=no
+with_openssl_engine=auto
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 2f5f6bc..eddcbc5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1377,7 +1377,7 @@ if test "${enable_async_push}" = "yes"; then
+ esac
+ fi
+
+-CONFIGURE_DEFINES="`set | grep '^enable_.*=' ; set | grep '^with_.*='`"
++CONFIGURE_DEFINES="`set | grep '^enable_.*=' ; set | grep '^with_.*=' | grep -v 'libtool_sysroot'`"
+ AC_DEFINE_UNQUOTED([CONFIGURE_DEFINES], ["`echo ${CONFIGURE_DEFINES}`"], [Configuration settings])
+
+ TAP_WIN_COMPONENT_ID="PRODUCT_TAP_WIN_COMPONENT_ID"
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/openvpn/openvpn/openvpn b/meta-networking/recipes-support/openvpn/openvpn/openvpn
index a3cd6a2f49..e5af4b2301 100755..100644
--- a/meta-networking/recipes-support/openvpn/openvpn/openvpn
+++ b/meta-networking/recipes-support/openvpn/openvpn/openvpn
@@ -4,6 +4,7 @@
# <rob@mars.org>, edited by iwj and cs
# Modified for openvpn by Alberto Gonzalez Iniesta <agi@agi.as>
# Modified for restarting / starting / stopping single tunnels by Richard Mueller <mueller@teamix.net>
+# Modified for respecting pid file on service start by Fabian Klemp <fabian.klemp@axino-group.com>
test $DEBIAN_SCRIPT_DEBUG && set -v -x
@@ -14,10 +15,17 @@ test -d $CONFIG_DIR || exit 0
start_vpn () {
modprobe tun >/dev/null 2>&1 || true
- $DAEMON --daemon --writepid /var/run/openvpn.$NAME.pid \
- --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || echo -n " FAILED->"
+ start-stop-daemon --start --quiet --pidfile /var/run/openvpn.$NAME.pid \
+ --exec $DAEMON -- \
+ --daemon --writepid /var/run/openvpn.$NAME.pid \
+ --config $CONFIG_DIR/$NAME.conf --cd $CONFIG_DIR || rc="$?"
+ case $rc in
+ 1) echo -n " ALREADY STARTED->";;
+ 3) echo -n " FAILED->";;
+ esac
echo -n " $NAME"
}
+
stop_vpn () {
kill `cat $PIDFILE` || true
rm $PIDFILE
diff --git a/meta-networking/recipes-support/openvpn/openvpn/openvpn-volatile.conf b/meta-networking/recipes-support/openvpn/openvpn/openvpn-volatile.conf
deleted file mode 100644
index 1205806d52..0000000000
--- a/meta-networking/recipes-support/openvpn/openvpn/openvpn-volatile.conf
+++ /dev/null
@@ -1 +0,0 @@
-d @LOCALSTATEDIR@/run/openvpn 0755 root root -
diff --git a/meta-networking/recipes-support/openvpn/openvpn/openvpn@.service b/meta-networking/recipes-support/openvpn/openvpn/openvpn@.service
deleted file mode 100644
index 358dcb791a..0000000000
--- a/meta-networking/recipes-support/openvpn/openvpn/openvpn@.service
+++ /dev/null
@@ -1,12 +0,0 @@
-[Unit]
-Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I
-After=syslog.target network.target
-
-[Service]
-PrivateTmp=true
-Type=forking
-PIDFile=/var/run/openvpn/%i.pid
-ExecStart=/usr/sbin/openvpn --daemon --writepid /var/run/openvpn/%i.pid --cd /etc/openvpn/ --config %i.conf
-
-[Install]
-WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb b/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb
deleted file mode 100644
index 84fd467c75..0000000000
--- a/meta-networking/recipes-support/openvpn/openvpn_2.4.6.bb
+++ /dev/null
@@ -1,71 +0,0 @@
-SUMMARY = "A full-featured SSL VPN solution via tun device."
-HOMEPAGE = "http://openvpn.sourceforge.net"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7aee596ed2deefe3e8a861e24292abba"
-DEPENDS = "lzo openssl iproute2 ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-
-inherit autotools systemd update-rc.d
-
-SRC_URI = "http://swupdate.openvpn.org/community/releases/${BP}.tar.gz \
- file://openvpn \
- file://openvpn@.service \
- file://openvpn-volatile.conf"
-
-SRC_URI[md5sum] = "971d57e29b78b4b902eb2f4aae2f05a7"
-SRC_URI[sha256sum] = "738dbd37fcf8eb9382c53628db22258c41ba9550165519d9200e8bebaef4cbe2"
-
-SYSTEMD_SERVICE_${PN} += "openvpn@loopback-server.service openvpn@loopback-client.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-INITSCRIPT_PACKAGES = "${PN}"
-INITSCRIPT_NAME_${PN} = "openvpn"
-INITSCRIPT_PARAMS_${PN} = "start 10 2 3 4 5 . stop 70 0 1 6 ."
-
-CFLAGS += "-fno-inline"
-
-# I want openvpn to be able to read password from file (hrw)
-EXTRA_OECONF += "--enable-iproute2"
-EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '--disable-plugin-auth-pam', d)}"
-
-# Explicitly specify IPROUTE to bypass the configure-time check for /sbin/ip on the host.
-EXTRA_OECONF += "IPROUTE=${base_sbindir}/ip"
-
-do_install_append() {
- install -d ${D}/${sysconfdir}/init.d
- install -m 755 ${WORKDIR}/openvpn ${D}/${sysconfdir}/init.d
-
- install -d ${D}/${sysconfdir}/openvpn
- install -d ${D}/${sysconfdir}/openvpn/sample
- install -m 755 ${S}/sample/sample-config-files/loopback-server ${D}${sysconfdir}/openvpn/sample/loopback-server.conf
- install -m 755 ${S}/sample/sample-config-files/loopback-client ${D}${sysconfdir}/openvpn/sample/loopback-client.conf
- install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-keys
- install -m 644 ${S}/sample/sample-keys/* ${D}${sysconfdir}/openvpn/sample/sample-keys
-
- if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
- install -d ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-server.service
- install -m 644 ${WORKDIR}/openvpn@.service ${D}/${systemd_unitdir}/system/openvpn@loopback-client.service
-
- install -d ${D}/${localstatedir}
- install -d ${D}/${localstatedir}/lib
- install -d -m 710 ${D}/${localstatedir}/lib/openvpn
-
- install -d ${D}${sysconfdir}/tmpfiles.d
- install -m 0644 ${WORKDIR}/openvpn-volatile.conf ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
- sed -i -e 's#@LOCALSTATEDIR@#${localstatedir}#g' ${D}${sysconfdir}/tmpfiles.d/openvpn.conf
- fi
-}
-
-PACKAGES =+ " ${PN}-sample "
-
-RRECOMMENDS_${PN} = "kernel-module-tun"
-
-FILES_${PN}-dbg += "${libdir}/openvpn/plugins/.debug"
-FILES_${PN} += "${systemd_unitdir}/system/openvpn@.service \
- ${sysconfdir}/tmpfiles.d \
- "
-FILES_${PN}-sample += "${systemd_unitdir}/system/openvpn@loopback-server.service \
- ${systemd_unitdir}/system/openvpn@loopback-client.service \
- ${sysconfdir}/openvpn/sample/"
diff --git a/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb b/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb
new file mode 100644
index 0000000000..f8de78ff74
--- /dev/null
+++ b/meta-networking/recipes-support/openvpn/openvpn_2.6.10.bb
@@ -0,0 +1,76 @@
+SUMMARY = "A full-featured SSL VPN solution via tun device."
+HOMEPAGE = "https://openvpn.net/"
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+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
+
+SRC_URI = "http://swupdate.openvpn.org/community/releases/${BP}.tar.gz \
+ file://0001-configure.ac-eliminate-build-path-from-openvpn-versi.patch \
+ file://openvpn \
+ "
+
+UPSTREAM_CHECK_URI = "https://openvpn.net/community-downloads"
+
+SRC_URI[sha256sum] = "1993bbb7b9edb430626eaa24573f881fd3df642f427fcb824b1aed1fca1bcc9b"
+
+CVE_STATUS[CVE-2020-27569] = "not-applicable-config: Applies only Aviatrix OpenVPN client, not openvpn"
+
+INITSCRIPT_PACKAGES = "${PN}"
+INITSCRIPT_NAME:${PN} = "openvpn"
+INITSCRIPT_PARAMS:${PN} = "start 10 2 3 4 5 . stop 70 0 1 6 ."
+
+CFLAGS += "-fno-inline"
+
+# I want openvpn to be able to read password from file (hrw)
+EXTRA_OECONF += "--enable-iproute2"
+EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '--disable-plugin-auth-pam', d)}"
+
+# Explicitly specify IPROUTE to bypass the configure-time check for /sbin/ip on the host.
+EXTRA_OECONF += "IPROUTE=${base_sbindir}/ip"
+
+EXTRA_OECONF += "SYSTEMD_UNIT_DIR=${systemd_system_unitdir} \
+ TMPFILES_DIR=${nonarch_libdir}/tmpfiles.d \
+ "
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
+ "
+
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
+PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
+
+do_install:append() {
+ install -d ${D}/${sysconfdir}/init.d
+ install -m 755 ${WORKDIR}/openvpn ${D}/${sysconfdir}/init.d
+
+ install -d ${D}/${sysconfdir}/openvpn
+ install -d ${D}/${sysconfdir}/openvpn/server
+ install -d ${D}/${sysconfdir}/openvpn/client
+
+ install -d ${D}/${sysconfdir}/openvpn/sample
+ install -m 644 ${S}/sample/sample-config-files/loopback-server ${D}${sysconfdir}/openvpn/sample/loopback-server.conf
+ install -m 644 ${S}/sample/sample-config-files/loopback-client ${D}${sysconfdir}/openvpn/sample/loopback-client.conf
+ install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-config-files
+ install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-keys
+ install -dm 755 ${D}${sysconfdir}/openvpn/sample/sample-scripts
+ install -m 644 ${S}/sample/sample-config-files/* ${D}${sysconfdir}/openvpn/sample/sample-config-files
+ install -m 644 ${S}/sample/sample-keys/* ${D}${sysconfdir}/openvpn/sample/sample-keys
+ install -m 644 ${S}/sample/sample-scripts/* ${D}${sysconfdir}/openvpn/sample/sample-scripts
+
+ install -d -m 710 ${D}/${localstatedir}/lib/openvpn
+}
+
+PACKAGES =+ " ${PN}-sample "
+
+RRECOMMENDS:${PN} = "kernel-module-tun"
+
+FILES:${PN}-dbg += "${libdir}/openvpn/plugins/.debug"
+FILES:${PN} += "${systemd_system_unitdir}/openvpn-server@.service \
+ ${systemd_system_unitdir}/openvpn-client@.service \
+ ${nonarch_libdir}/tmpfiles.d \
+ "
+FILES:${PN}-sample = "${sysconfdir}/openvpn/sample/ \
+ "
diff --git a/meta-networking/recipes-support/pgpool2/pgpool2/0001-Fix-build-error-when-build-this-file.patch b/meta-networking/recipes-support/pgpool2/pgpool2/0001-Fix-build-error-when-build-this-file.patch
new file mode 100644
index 0000000000..52bcc3b7e3
--- /dev/null
+++ b/meta-networking/recipes-support/pgpool2/pgpool2/0001-Fix-build-error-when-build-this-file.patch
@@ -0,0 +1,32 @@
+From f8ab74a76049f69adeebe92c62593547e05a075d Mon Sep 17 00:00:00 2001
+From: Lei Maohui <leimaohui@fujitsu.com>
+Date: Wed, 11 Jan 2023 17:22:41 +0900
+Subject: [PATCH] Fix build error when build this file.
+
+| snprintf.c:770:64: error: 'PG_STRERROR_R_BUFLEN' undeclared (first use in this function)
+| 770 | char errbuf[PG_STRERROR_R_BUFLEN];
+| | ^~~~~~~~~~~~~~~~~~~~
+
+PG_STRERROR_R_BUFLEN is defined in postgresql, but pgpool doesn't
+include the header of postgresql.
+
+Upstream-Status: Inappropriate [OE-Specific]
+Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
+---
+ src/parser/snprintf.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/parser/snprintf.c b/src/parser/snprintf.c
+index 84ebdb2..3387897 100644
+--- a/src/parser/snprintf.c
++++ b/src/parser/snprintf.c
+@@ -46,6 +46,7 @@
+ #include "pool_parser.h"
+ #include "stringinfo.h"
+ #include "utils/palloc.h"
++#include "postgresql/server/port.h"
+
+ /*
+ * We used to use the platform's NL_ARGMAX here, but that's a bad idea,
+--
+2.25.1
diff --git a/meta-networking/recipes-support/pgpool2/pgpool2/define_SIGNAL_ARGS.patch b/meta-networking/recipes-support/pgpool2/pgpool2/define_SIGNAL_ARGS.patch
new file mode 100644
index 0000000000..3ae9b1bd9a
--- /dev/null
+++ b/meta-networking/recipes-support/pgpool2/pgpool2/define_SIGNAL_ARGS.patch
@@ -0,0 +1,25 @@
+Define SIGNAL_ARGS if its not defined, this is flagged with
+newer C compilers e.g. clang18, where if it is not defined
+then it ends up with compiler errors
+
+/usr/include/postgresql/server/port.h:488:28: error: a parameter l
+ist without types is only allowed in a function definition
+| 488 | typedef void (*pqsigfunc) (SIGNAL_ARGS);
+| | ^
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+--- a/src/include/pool_type.h
++++ b/src/include/pool_type.h
+@@ -125,7 +125,9 @@ extern void ExceptionalCondition(const c
+ #define LONGALIGN(LEN) TYPEALIGN(ALIGNOF_LONG, (LEN))
+ #define DOUBLEALIGN(LEN) TYPEALIGN(ALIGNOF_DOUBLE, (LEN))
+ #define MAXALIGN(LEN) TYPEALIGN(MAXIMUM_ALIGNOF, (LEN))
+-
++#ifndef SIGNAL_ARGS
++#define SIGNAL_ARGS int postgres_signal_arg
++#endif
+ /*
+ * It seems that sockaddr_storage is now commonly used in place of sockaddr.
+ * So, define it if it is not define yet, and create new SockAddr structure
diff --git a/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.service b/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.service
new file mode 100644
index 0000000000..bf2d323639
--- /dev/null
+++ b/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=Pgpool-II
+After=syslog.target network.target
+
+[Service]
+
+User=postgres
+Group=postgres
+
+EnvironmentFile=-/etc/sysconfig/pgpool
+
+ExecStart=/usr/bin/pgpool -f /etc/pgpool-II/pgpool.conf $OPTS
+ExecStop=/usr/bin/pgpool -f /etc/pgpool-II/pgpool.conf $STOP_OPTS stop
+ExecReload=/usr/bin/pgpool -f /etc/pgpool-II/pgpool.conf reload
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.sysconfig b/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.sysconfig
new file mode 100644
index 0000000000..ea13089b7b
--- /dev/null
+++ b/meta-networking/recipes-support/pgpool2/pgpool2/pgpool.sysconfig
@@ -0,0 +1,7 @@
+# Options for pgpool
+
+# -n: don't run in daemon mode. does not detach control tty
+# -d: debug mode. lots of debug information will be printed
+
+#OPTS=" -d -n"
+OPTS=" -n"
diff --git a/meta-networking/recipes-support/pgpool2/pgpool2_4.5.1.bb b/meta-networking/recipes-support/pgpool2/pgpool2_4.5.1.bb
new file mode 100644
index 0000000000..ffb879952c
--- /dev/null
+++ b/meta-networking/recipes-support/pgpool2/pgpool2_4.5.1.bb
@@ -0,0 +1,50 @@
+SUMMARY = "A language independent connection pool server for PostgreSQL."
+
+DESCRIPTION = "Pgpool-II is a middleware that works between PostgreSQL \
+ servers and a PostgreSQL database client. It is distributed \
+ under a license similar to BSD and MIT. It provides the \
+ following features."
+
+HOMEPAGE = "http://pgpool.net"
+
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e4b38de086d73e0521de0bbdbaa4a1a9"
+
+SRC_URI = "http://www.pgpool.net/mediawiki/images/pgpool-II-${PV}.tar.gz \
+ file://0001-Fix-build-error-when-build-this-file.patch \
+ file://define_SIGNAL_ARGS.patch \
+ file://pgpool.sysconfig \
+ file://pgpool.service \
+ "
+SRC_URI[sha256sum] = "8e14b0558a15dae8767c8e1acee3f2f6c7c08ebfffda66a359367eaaa56c3936"
+
+S = "${WORKDIR}/pgpool-II-${PV}"
+
+inherit autotools-brokensep systemd
+
+SYSTEMD_SERVICE:${PN} = "pgpool.service"
+
+PACKAGECONFIG ??= " openssl libmemcached postgresql \
+"
+PACKAGECONFIG[pam] = "--with-pam,,libpam"
+PACKAGECONFIG[openssl] = "--with-openssl,,openssl"
+PACKAGECONFIG[libmemcached] = "--with-memcached=${STAGING_INCDIR}/libmemcachedutil-1.0,,libmemcached"
+PACKAGECONFIG[postgresql] = "--with-pgsql-includedir=${STAGING_INCDIR}/postgresql,, postgresql"
+
+EXTRA_OECONF += "--disable-static \
+ --disable-rpath \
+ "
+FILES:${PN} += "${datadir}/pgpool-II/ "
+
+do_configure:append() {
+ echo "#define HAVE_STRCHRNUL 1" >> ${S}/src/include/config.h
+ sed -i "s,#define USE_REPL_SNPRINTF 1,/* #undef USE_REPL_SNPRINTF*/,g" ${S}/src/include/config.h
+}
+
+do_install:append() {
+ install -d ${D}${sysconfdir}/pgpool-II
+ install -D -m 0644 ${WORKDIR}/pgpool.sysconfig ${D}${sysconfdir}/pgpool-II/pgpool.conf
+ install -D -m 0644 ${S}/src/sample/pcp.conf.sample ${D}${sysconfdir}/pgpool-II/pcp.conf
+ install -D -m 0644 ${S}/src/sample/pool_hba.conf.sample ${D}${sysconfdir}/pgpool-II/pool_hba.conf
+ install -Dm 0644 ${WORKDIR}/pgpool.service ${D}${systemd_system_unitdir}/pgpool.service
+}
diff --git a/meta-networking/recipes-support/phytool/phytool.bb b/meta-networking/recipes-support/phytool/phytool.bb
index 4ed3ed1e40..b918e50c68 100644
--- a/meta-networking/recipes-support/phytool/phytool.bb
+++ b/meta-networking/recipes-support/phytool/phytool.bb
@@ -1,10 +1,10 @@
SUMMARY = "PHY interface tool for Linux"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://LICENSE;md5=39bba7d2cf0ba1036f2a6e2be52fe3f0"
-PV = "1.0.1+git${SRCPV}"
-SRCREV = "3149bfdb4f513e2f0da0a7d0bc5d0873578696f2"
-SRC_URI = "git://github.com/wkz/phytool.git"
+PV = "2+git"
+SRCREV = "8882328c08ba2efb13c049812098f1d0cb8adf0c"
+SRC_URI = "git://github.com/wkz/phytool.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
diff --git a/meta-networking/recipes-support/pimd/pimd/0001-configure-Dont-use-uname-to-determine-target-OS.patch b/meta-networking/recipes-support/pimd/pimd/0001-configure-Dont-use-uname-to-determine-target-OS.patch
index eb549ded9d..cacb84a1ca 100644
--- a/meta-networking/recipes-support/pimd/pimd/0001-configure-Dont-use-uname-to-determine-target-OS.patch
+++ b/meta-networking/recipes-support/pimd/pimd/0001-configure-Dont-use-uname-to-determine-target-OS.patch
@@ -7,6 +7,8 @@ Helps with cross-compiling
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+Upstream-Status: Pending
+
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta-networking/recipes-support/pimd/pimd_2.3.2.bb b/meta-networking/recipes-support/pimd/pimd_2.3.2.bb
index 2faa7cb1ce..647f9df515 100644
--- a/meta-networking/recipes-support/pimd/pimd_2.3.2.bb
+++ b/meta-networking/recipes-support/pimd/pimd_2.3.2.bb
@@ -4,17 +4,20 @@ SECTION = "net"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE;md5=94f108f91fab720d62425770b70dd790"
-SRC_URI = "ftp://ftp.troglobit.com/pimd/${BP}.tar.gz \
+SRC_URI = "https://ftp.troglobit.com/pimd/${BP}.tar.gz \
file://0001-configure-Dont-use-uname-to-determine-target-OS.patch \
"
-SRC_URI[md5sum] = "a3c03e40540980b2c06e265a17988e60"
SRC_URI[sha256sum] = "c77a9812751f114490a28a6839b16aac8b020c8d9fd6aa22bf3880c054e19f1d"
-EXTRA_OECONF_append_libc-musl = " --embedded-libc"
+EXTRA_OECONF:append:libc-musl = " --embedded-libc"
-inherit autotools-brokensep
+inherit autotools-brokensep update-alternatives
do_configure() {
oe_runconf
}
+ALTERNATIVE_PRIORITY = "100"
+
+ALTERNATIVE:${PN} = "pimd"
+ALTERNATIVE_LINK_NAME[pimd] = "${sbindir}/pimd"
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch
deleted file mode 100644
index 4b595613fa..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core/0001-Remove-man-files-which-cant-be-built.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-From 5a8a2f81ef8650f06d1d9d268add612ab46025f1 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Jun 2018 22:57:04 -0700
-Subject: [PATCH] Remove man files which cant be built
-
-Remove need for pandoc-prebuilt during cross build
-
-Fixes errors
-
-| CMake Error at libibumad/man/cmake_install.cmake:105 (file):
-| file INSTALL cannot find
-| "/mnt/a/oe/build/tmp/work/core2-64-bec-linux-musl/rdma-core/18.1-r0/git/buildlib/pandoc-prebuilt/41bbb0bed7a781be59e8c0dcd8b7278af2ce6882".
-| Call Stack (most recent call first):
-| cmake_install.cmake:48 (include)
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libibumad/man/CMakeLists.txt | 1 -
- libibverbs/man/CMakeLists.txt | 15 ---------------
- providers/mlx5/man/CMakeLists.txt | 1 -
- 3 files changed, 17 deletions(-)
-
-diff --git a/libibumad/man/CMakeLists.txt b/libibumad/man/CMakeLists.txt
-index 185584a0..ac45a4e9 100644
---- a/libibumad/man/CMakeLists.txt
-+++ b/libibumad/man/CMakeLists.txt
-@@ -15,7 +15,6 @@ rdma_man_pages(
- umad_get_mad_addr.3
- umad_get_pkey.3
- umad_get_port.3
-- umad_init.3.md
- umad_open_port.3
- umad_poll.3
- umad_recv.3
-diff --git a/libibverbs/man/CMakeLists.txt b/libibverbs/man/CMakeLists.txt
-index 86dd49de..b54675be 100644
---- a/libibverbs/man/CMakeLists.txt
-+++ b/libibverbs/man/CMakeLists.txt
-@@ -5,7 +5,6 @@ rdma_man_pages(
- ibv_alloc_pd.3
- ibv_alloc_td.3
- ibv_asyncwatch.1
-- ibv_attach_mcast.3.md
- ibv_bind_mw.3
- ibv_create_ah.3
- ibv_create_ah_from_wc.3
-@@ -14,7 +13,6 @@ rdma_man_pages(
- ibv_create_cq_ex.3
- ibv_modify_cq.3
- ibv_create_flow.3
-- ibv_create_flow_action.3.md
- ibv_create_qp.3
- ibv_create_qp_ex.3
- ibv_create_rwq_ind_table.3
-@@ -23,15 +21,9 @@ rdma_man_pages(
- ibv_create_wq.3
- ibv_devices.1
- ibv_devinfo.1
-- ibv_event_type_str.3.md
-- ibv_fork_init.3.md
- ibv_get_async_event.3
- ibv_get_cq_event.3
-- ibv_get_device_guid.3.md
- ibv_get_device_list.3
-- ibv_get_device_name.3.md
-- ibv_get_srq_num.3.md
-- ibv_inc_rkey.3.md
- ibv_modify_qp.3
- ibv_modify_qp_rate_limit.3
- ibv_modify_srq.3
-@@ -46,19 +38,12 @@ rdma_man_pages(
- ibv_post_srq_recv.3
- ibv_query_device.3
- ibv_query_device_ex.3
-- ibv_query_gid.3.md
-- ibv_query_pkey.3.md
- ibv_query_port.3
- ibv_query_qp.3
- ibv_query_rt_values_ex.3
- ibv_query_srq.3
-- ibv_rate_to_mbps.3.md
-- ibv_rate_to_mult.3.md
- ibv_rc_pingpong.1
- ibv_reg_mr.3
-- ibv_req_notify_cq.3.md
-- ibv_rereg_mr.3.md
-- ibv_resize_cq.3.md
- ibv_srq_pingpong.1
- ibv_uc_pingpong.1
- ibv_ud_pingpong.1
-diff --git a/providers/mlx5/man/CMakeLists.txt b/providers/mlx5/man/CMakeLists.txt
-index cdc7115e..876b6fcf 100644
---- a/providers/mlx5/man/CMakeLists.txt
-+++ b/providers/mlx5/man/CMakeLists.txt
-@@ -1,5 +1,4 @@
- rdma_man_pages(
-- mlx5dv_flow_action_esp.3.md
- mlx5dv_get_clock_info.3
- mlx5dv_init_obj.3
- mlx5dv_query_device.3
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch
deleted file mode 100644
index b04c9b7230..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core/0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From f2df1db11f3a9580774300e703b6f53dbcdb28ef Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 8 Jun 2018 20:17:57 -0700
-Subject: [PATCH] S_IFSOCK is defined in both glibc/musl
-
-Fixes
-
-preload.c:1183:46: error: '__S_IFSOCK' undeclared (first use in this function); did you mean 'S_IFSOCK'?
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- librdmacm/preload.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/librdmacm/preload.c b/librdmacm/preload.c
-index 0f2aa250..d46beb1b 100644
---- a/librdmacm/preload.c
-+++ b/librdmacm/preload.c
-@@ -1180,7 +1180,7 @@ int __fxstat(int ver, int socket, struct stat *buf)
- if (fd_get(socket, &fd) == fd_rsocket) {
- ret = real.fxstat(ver, socket, buf);
- if (!ret)
-- buf->st_mode = (buf->st_mode & ~S_IFMT) | __S_IFSOCK;
-+ buf->st_mode = (buf->st_mode & ~S_IFMT) | S_IFSOCK;
- } else {
- ret = real.fxstat(ver, fd, buf);
- }
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch
new file mode 100644
index 0000000000..e181ee2872
--- /dev/null
+++ b/meta-networking/recipes-support/rdma-core/rdma-core/0001-cmake-Allow-SYSTEMCTL_BIN-to-be-overridden-from-envi.patch
@@ -0,0 +1,31 @@
+From 209f346d55eeaf74e21c541d70ec43d39b6c8c3c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 27 May 2023 17:22:10 -0700
+Subject: [PATCH] cmake: Allow SYSTEMCTL_BIN to be overridden from environment
+
+This allows to encode correct paths which are inside the target rootfs
+for systemctl
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 98985e7ee..001efb800 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -237,7 +237,10 @@ else()
+ endif()
+ endif()
+
+-find_program(SYSTEMCTL_BIN systemctl HINTS "/usr/bin" "/bin")
++if (NOT SYSTEMCTL_BIN)
++ find_program(SYSTEMCTL_BIN systemctl HINTS "/usr/bin" "/bin")
++endif()
++
+ if (NOT SYSTEMCTL_BIN)
+ set (SYSTEMCTL_BIN "/bin/systemctl")
+ endif()
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch
deleted file mode 100644
index aa335244b6..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-endian.h-for-htole32-and-friends.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 65b9a47c07be4611b4fbbcafff1993186bcb0537 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Jun 2018 19:15:52 -0700
-Subject: [PATCH 1/2] include endian.h for htole32 and friends
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- providers/hns/hns_roce_u.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/providers/hns/hns_roce_u.h b/providers/hns/hns_roce_u.h
-index bd66c6e7..b07424db 100644
---- a/providers/hns/hns_roce_u.h
-+++ b/providers/hns/hns_roce_u.h
-@@ -34,6 +34,7 @@
- #define _HNS_ROCE_U_H
-
- #include <stddef.h>
-+#include <endian.h>
- #include <util/compiler.h>
-
- #include <infiniband/driver.h>
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000000..a093e47048
--- /dev/null
+++ b/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-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch
deleted file mode 100644
index 347f964e94..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core/0002-Remove-unused-include-for-execinfo.h.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 3d9cae15c69c0b3260a024ad5d6802a8d85515a2 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Jun 2018 19:18:24 -0700
-Subject: [PATCH 2/2] Remove unused include for execinfo.h
-
-Fixes build on musl
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- providers/qedr/qelr_verbs.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/providers/qedr/qelr_verbs.c b/providers/qedr/qelr_verbs.c
-index e3b01f28..2ee1c832 100644
---- a/providers/qedr/qelr_verbs.c
-+++ b/providers/qedr/qelr_verbs.c
-@@ -54,7 +54,6 @@
-
- #include <stdio.h>
- #include <stdlib.h>
--#include <execinfo.h>
-
- #define QELR_SQE_ELEMENT_SIZE (sizeof(struct rdma_sq_sge))
- #define QELR_RQE_ELEMENT_SIZE (sizeof(struct rdma_rq_sge))
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch b/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch
deleted file mode 100644
index e887f222b0..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core/0002-neigh.c-Do-not-include-net-if_packet.h.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 82486f7e1ee2aa07a5c12cb357834993aa8c1d20 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 8 Jun 2018 20:19:13 -0700
-Subject: [PATCH] neigh.c: Do not include net/if_packet.h
-
-This header is glibc specific
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libibverbs/neigh.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/libibverbs/neigh.c b/libibverbs/neigh.c
-index 21177db0..cfc593a0 100644
---- a/libibverbs/neigh.c
-+++ b/libibverbs/neigh.c
-@@ -2,7 +2,6 @@
- */
-
- #include "config.h"
--#include <net/if_packet.h>
- #include <linux/netlink.h>
- #include <linux/rtnetlink.h>
- #include <endian.h>
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb b/meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb
deleted file mode 100644
index 6ad864d1e8..0000000000
--- a/meta-networking/recipes-support/rdma-core/rdma-core_18.1.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Userspace support for InfiniBand/RDMA verbs"
-DESCRIPTION = "This is the userspace components for the Linux Kernel's drivers Infiniband/RDMA subsystem."
-SECTION = "libs"
-
-DEPENDS = "libnl"
-RDEPENDS_${PN} = "bash perl"
-
-SRC_URI = "git://github.com/linux-rdma/rdma-core.git;branch=stable-v18 \
- file://0001-S_IFSOCK-is-defined-in-both-glibc-musl.patch \
- file://0002-neigh.c-Do-not-include-net-if_packet.h.patch \
- file://0001-include-endian.h-for-htole32-and-friends.patch \
- file://0002-Remove-unused-include-for-execinfo.h.patch \
- file://0001-Remove-man-files-which-cant-be-built.patch \
- "
-SRCREV = "7844b3fbe5120623d63b29ecb43eb83a61129658"
-S = "${WORKDIR}/git"
-
-#Default Dual License https://github.com/linux-rdma/rdma-core/blob/master/COPYING.md
-LICENSE = "BSD-2-Clause | GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING.BSD_FB;md5=0ec18bae1a9df92c8d6ae01f94a289ae \
- file://COPYING.GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-
-FILES_SOLIBSDEV = ""
-FILES_${PN} += "${libdir}/*"
-INSANE_SKIP_${PN} += "dev-so"
-
-inherit cmake
-
-OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
diff --git a/meta-networking/recipes-support/rdma-core/rdma-core_51.0.bb b/meta-networking/recipes-support/rdma-core/rdma-core_51.0.bb
new file mode 100644
index 0000000000..7c26a8c436
--- /dev/null
+++ b/meta-networking/recipes-support/rdma-core/rdma-core_51.0.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Userspace support for InfiniBand/RDMA verbs"
+DESCRIPTION = "This is the userspace components for the Linux Kernel's drivers Infiniband/RDMA subsystem."
+SECTION = "libs"
+
+DEPENDS = "libnl"
+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-include-libgen.h-for-basename.patch \
+"
+SRCREV = "6cd09097ad2eebde9a7fa3d3bb09a2cea6e3c2d6"
+S = "${WORKDIR}/git"
+
+#Default Dual License https://github.com/linux-rdma/rdma-core/blob/master/COPYING.md
+LICENSE = "BSD-2-Clause | GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING.BSD_FB;md5=0ec18bae1a9df92c8d6ae01f94a289ae \
+ file://COPYING.GPL2;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+EXTRA_OECMAKE = " \
+ -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=${systemd_system_unitdir} \
+ -DSYSTEMCTL_BIN=${base_bindir}/systemctl \
+ -DCMAKE_INSTALL_PERLDIR=${libdir}/perl5/${@get_perl_version(d)} \
+ -DNO_MAN_PAGES=1 \
+"
+
+LTO = ""
+
+FILES_SOLIBSDEV = ""
+FILES:${PN} += "${libdir}/*"
+INSANE_SKIP:${PN} += "dev-so"
+
+inherit cmake cpan-base pkgconfig python3native python3targetconfig systemd
+
+SYSTEMD_SERVICE:${PN} = " \
+ srp_daemon.service \
+ iwpmd.service \
+ ibacm.socket \
+ rdma-load-modules@.service \
+ srp_daemon_port@.service \
+ rdma-hw.target \
+ ibacm.service \
+"
+SYSTEMD_AUTO_ENABLE = "disable"
+
+OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
diff --git a/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch b/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch
index f8eb3ae67a..8ca26b51bb 100644
--- a/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch
+++ b/meta-networking/recipes-support/ruli/files/0001-Fix-build-with-format-string-checks.patch
@@ -15,11 +15,9 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/ruli_addr.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/src/ruli_addr.c b/src/ruli_addr.c
-index 00d5d0d..f1eabae 100644
--- a/src/ruli_addr.c
+++ b/src/ruli_addr.c
-@@ -415,7 +415,7 @@ int ruli_in_print(FILE *out, const _ruli_addr *addr, int family)
+@@ -415,7 +415,7 @@ int ruli_in_print(FILE *out, const _ruli
{
switch (family) {
case PF_INET:
@@ -28,6 +26,25 @@ index 00d5d0d..f1eabae 100644
case PF_INET6:
return ruli_inet6_print(out, &addr->ipv6);
---
-2.13.1
-
+--- a/sample/getaddrinfo.c
++++ b/sample/getaddrinfo.c
+@@ -174,7 +174,7 @@ static void solve(const char *fullname)
+
+ for (ai = ai_res; ai; ai = ai->ai_next) {
+
+- printf(fullname);
++ printf("%s", fullname);
+
+ switch (ai->ai_family) {
+ case PF_INET:
+--- a/sample/ruli-getaddrinfo.c
++++ b/sample/ruli-getaddrinfo.c
+@@ -176,7 +176,7 @@ static void solve(const char *fullname)
+
+ for (ai = ai_res; ai; ai = ai->ai_next) {
+
+- printf(fullname);
++ printf("%s", fullname);
+
+ switch (ai->ai_family) {
+ case PF_INET:
diff --git a/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch b/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch
new file mode 100644
index 0000000000..c3ca07a390
--- /dev/null
+++ b/meta-networking/recipes-support/ruli/files/0001-Make-space-for-flags-from-environment.patch
@@ -0,0 +1,95 @@
+From bb19a2c7e5b3142d70d3e13c2d8a92a63f2b840a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 20 Nov 2019 22:12:52 -0800
+Subject: [PATCH] Make space for flags from environment
+
+Add force option to ln cmd, so do_install can be rerun in same directory
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ sample/Makefile | 20 ++++++++++----------
+ src/Makefile | 8 ++++----
+ 2 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/sample/Makefile b/sample/Makefile
+index 15cafd9..d83641f 100644
+--- a/sample/Makefile
++++ b/sample/Makefile
+@@ -35,9 +35,9 @@ ifeq ($(PLATFORM),SunOS)
+ SOLARIS_LIBS = -lresolv -lnsl -lsocket
+ endif
+
+-CC = gcc
+-CFLAGS = -O2 -pipe -Wall -g -I../src -I$(OOP_INCLUDE_DIR)
+-LDFLAGS = -L../src -L$(OOP_LIB_DIR) $(SOLARIS_LDFLAGS)
++CC ?= gcc
++CFLAGS += -O2 -pipe -Wall -g -I../src -I$(OOP_INCLUDE_DIR)
++LDFLAGS += -L../src -L$(OOP_LIB_DIR) $(SOLARIS_LDFLAGS)
+ UNRULI_LINK = $(CC) $(ARCH) $(LDFLAGS) -o $@ $^ $(SOLARIS_LIBS)
+ LINK = $(UNRULI_LINK) -lruli -loop
+
+@@ -65,13 +65,13 @@ install: $(TARGETS)
+ mkdir -p $(INSTALL_BIN_DIR) $(INSTALL_MAN1_DIR)
+ cp $(TARGETS) $(INSTALL_BIN_DIR)
+ cp ../doc/man/*.1 $(INSTALL_MAN1_DIR)
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 smtpsearch.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 httpsearch.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_srvsearch.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_smtpsearch.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 sync_httpsearch.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 ruli-getaddrinfo.1
+- cd $(INSTALL_MAN_DIR)/man1 && ln -s srvsearch.1 getaddrinfo.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 smtpsearch.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 httpsearch.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_srvsearch.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_smtpsearch.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 sync_httpsearch.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 ruli-getaddrinfo.1
++ cd $(INSTALL_MAN_DIR)/man1 && ln -sf srvsearch.1 getaddrinfo.1
+
+ %.o: %.c
+ $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c $<
+diff --git a/src/Makefile b/src/Makefile
+index 9b56b5e..39a5ea1 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -45,7 +45,7 @@ endif
+
+ WARN = -pedantic -ansi -Wshadow -Wpointer-arith -Wcast-qual \
+ -Wcast-align -Wwrite-strings -Wredundant-decls
+-CC = gcc
++CC ?= gcc
+
+ # gcc-specific options (not valid for g++)
+ ifeq ($(CC),gcc)
+@@ -58,7 +58,7 @@ SHARED = -fPIC
+ FLAGS = $(DEBUG) -O2 -pipe -Wall -g -shared -D_REENTRANT \
+ $(DEFINE_SOLARIS) -I. -I$(OOP_INCLUDE_DIR)
+ SOFT_CFLAGS = $(WARN) $(FLAGS)
+-CFLAGS = $(WARN) -Werror $(FLAGS)
++CFLAGS += $(WARN) -Werror $(FLAGS)
+ LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \
+ ruli_addr.o ruli_sock.o ruli_txt.o ruli_msg.o ruli_fsm.o \
+ ruli_res.o ruli_parse.o ruli_host.o ruli_srv.o ruli_conf.o \
+@@ -66,7 +66,7 @@ LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \
+ ruli_getaddrinfo.o
+ SHAREDOBJ = $(LIBOBJ:%.o=%.os)
+ SONAME = libruli.so.4
+-LDFLAGS = -L$(OOP_LIB_DIR)
++LDFLAGS += -L$(OOP_LIB_DIR)
+
+ COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c
+ SHARED_COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(SHARED) $(CFLAGS) -o $@ -c
+@@ -95,7 +95,7 @@ install: ruli
+ cp $(SONAME) libruli.a $(INSTALL_LIB_DIR)
+ cp *.h $(INSTALL_INCLUDE_DIR)
+ cp ../doc/man/*.3 $(INSTALL_MAN3_DIR)
+- cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so
++ cd $(INSTALL_LIB_DIR) && ln -sf $(SONAME) libruli.so
+ @echo
+ @echo "REMINDER:"
+ @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:"
+--
+2.24.0
+
diff --git a/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch b/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch
new file mode 100644
index 0000000000..213006a677
--- /dev/null
+++ b/meta-networking/recipes-support/ruli/files/0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch
@@ -0,0 +1,35 @@
+From 895ae26e36c4498677ad0b2695a6e5af05548a29 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 20 Nov 2019 22:02:43 -0800
+Subject: [PATCH] ruli_srv: Mark prev_addr_list_size as unused
+
+This ensures that compiler does not trip on building it
+
+ruli_srv.c:157:20: error: variable 'prev_addr_list_size' set but not used [-Werror=unused-but-set-variable]
+| int prev_addr_list_size;
+| ^~~~~~~~~~~~~~~~~~~
+cc1: all warnings being treated as errors
+
+Upstream-Status: Inappropriate [Workaround]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/ruli_srv.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/ruli_srv.c b/src/ruli_srv.c
+index 45c70c7..ff82349 100644
+--- a/src/ruli_srv.c
++++ b/src/ruli_srv.c
+@@ -154,7 +154,7 @@ static void *on_walk_answer(ruli_host_t *host_qry, void *qry_arg)
+ walk_t *walk_qry = (walk_t *) qry_arg;
+ ruli_srv_t *srv_qry = walk_qry->srv_query;
+ ruli_srv_entry_t *srv_entry;
+- int prev_addr_list_size;
++ __attribute__((unused)) int prev_addr_list_size;
+
+ assert(ruli_host_answer_code(host_qry) != RULI_SRV_CODE_VOID);
+
+--
+2.24.0
+
diff --git a/meta-networking/recipes-support/ruli/files/Makefile.patch b/meta-networking/recipes-support/ruli/files/Makefile.patch
deleted file mode 100644
index 60789a3d56..0000000000
--- a/meta-networking/recipes-support/ruli/files/Makefile.patch
+++ /dev/null
@@ -1,122 +0,0 @@
-diff -Naur patch.org/ruli-0.36/Makefile patch.new/ruli-0.36/Makefile
---- ruli-0.36/Makefile 2015-09-10 15:14:13.952262350 -0400
-+++ ruli-0.36/Makefile 2015-09-10 15:14:38.628261620 -0400
-@@ -7,17 +7,17 @@
- .PHONY: default
- default:
- $(MAKE) -C src
-- $(MAKE) -C sample
-+# $(MAKE) -C sample
-
- .PHONY: clean
- clean:
- $(MAKE) -C src clean
-- $(MAKE) -C sample clean
-+# $(MAKE) -C sample clean
-
- .PHONY: install
- install:
- $(MAKE) -C src install
-- $(MAKE) -C sample install
-+# $(MAKE) -C sample install
-
- .PHONY: dpkg
- dpkg:
-
-=====================================================================
-
-diff -Naur patch.org/git/src/Makefile patch.new/git/src/Makefile
---- ruli-0.36/src/Makefile 2005-06-13 12:34:53.000000000 -0400
-+++ ruli-0.36/src/Makefile 2015-09-11 09:46:06.290287347 -0400
-@@ -18,9 +18,9 @@
- #
- # Debian packaging likes this: OOP_BASE_DIR = /usr
- #
--OOP_BASE_DIR = /usr/local/oop
--OOP_INCLUDE_DIR = $(OOP_BASE_DIR)/include
--OOP_LIB_DIR = $(OOP_BASE_DIR)/lib
-+#OOP_BASE_DIR = /usr/local/oop
-+OOP_INCLUDE_DIR = ${PKG_CONFIG_SYSROOT_DIR}/$(includedir)/
-+#OOP_LIB_DIR = $(OOP_BASE_DIR)/lib
-
- #
- # INSTALL_BASE_DIR indicates where RULI
-@@ -30,11 +30,11 @@
- #
- # Debian packaging likes this: INSTALL_BASE_DIR = $(DESTDIR)/usr
- #
--INSTALL_BASE_DIR = ../install/ruli
--INSTALL_INCLUDE_DIR = $(INSTALL_BASE_DIR)/include
--INSTALL_LIB_DIR = $(INSTALL_BASE_DIR)/lib
--INSTALL_MAN_DIR = $(INSTALL_BASE_DIR)/share/man
--INSTALL_MAN3_DIR = $(INSTALL_MAN_DIR)/man3
-+#INSTALL_BASE_DIR = ../install/ruli
-+#INSTALL_INCLUDE_DIR = $(INSTALL_BASE_DIR)/include
-+#INSTALL_LIB_DIR = $(INSTALL_BASE_DIR)/lib
-+#INSTALL_MAN_DIR = $(INSTALL_BASE_DIR)/share/man
-+#INSTALL_MAN3_DIR = $(INSTALL_MAN_DIR)/man3
-
- # SunOS, Linux
- PLATFORM=$(shell uname)
-@@ -45,7 +45,7 @@
-
- WARN = -pedantic -ansi -Wshadow -Wpointer-arith -Wcast-qual \
- -Wcast-align -Wwrite-strings -Wredundant-decls
--CC = gcc
-+#CC = gcc
-
- # gcc-specific options (not valid for g++)
- ifeq ($(CC),gcc)
-@@ -58,7 +58,7 @@
- FLAGS = $(DEBUG) -O2 -pipe -Wall -g -shared -D_REENTRANT \
- $(DEFINE_SOLARIS) -I. -I$(OOP_INCLUDE_DIR)
- SOFT_CFLAGS = $(WARN) $(FLAGS)
--CFLAGS = $(WARN) -Werror $(FLAGS)
-+CFLAGS = $(WARN) $(FLAGS)
- LIBOBJ = ruli_isaac.o ruli_mem.o ruli_rand.o ruli_util.o ruli_list.o \
- ruli_addr.o ruli_sock.o ruli_txt.o ruli_msg.o ruli_fsm.o \
- ruli_res.o ruli_parse.o ruli_host.o ruli_srv.o ruli_conf.o \
-@@ -66,7 +66,7 @@
- ruli_getaddrinfo.o
- SHAREDOBJ = $(LIBOBJ:%.o=%.os)
- SONAME = libruli.so.4
--LDFLAGS = -L$(OOP_LIB_DIR)
-+#LDFLAGS = -L$(OOP_LIB_DIR)
-
- COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(CFLAGS) -c
- SHARED_COMPILE = $(CC) $(ARCH) $(CPPFLAGS) $(SHARED) $(CFLAGS) -o $@ -c
-@@ -89,19 +89,19 @@
- strip: ruli
- strip $(SONAME) libruli.a
-
--.PHONY: install
--install: ruli
-- mkdir -p $(INSTALL_LIB_DIR) $(INSTALL_INCLUDE_DIR) $(INSTALL_MAN3_DIR)
-- cp $(SONAME) libruli.a $(INSTALL_LIB_DIR)
-- cp *.h $(INSTALL_INCLUDE_DIR)
-- cp ../doc/man/*.3 $(INSTALL_MAN3_DIR)
-- cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so
-- @echo
-- @echo "REMINDER:"
-- @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:"
-- @echo "# echo $(INSTALL_LIB_DIR) >> /etc/ld.so.conf"
-- @echo "# ldconfig"
-- @echo
-+#.PHONY: install
-+#install: ruli
-+# mkdir -p $(INSTALL_LIB_DIR) $(INSTALL_INCLUDE_DIR) $(INSTALL_MAN3_DIR)
-+# cp $(SONAME) libruli.a $(INSTALL_LIB_DIR)
-+# cp *.h $(INSTALL_INCLUDE_DIR)
-+# cp ../doc/man/*.3 $(INSTALL_MAN3_DIR)
-+# cd $(INSTALL_LIB_DIR) && ln -s $(SONAME) libruli.so
-+# @echo
-+# @echo "REMINDER:"
-+# @echo "Add $(INSTALL_LIB_DIR) to your dynamic loader path:"
-+# @echo "# echo $(INSTALL_LIB_DIR) >> /etc/ld.so.conf"
-+# @echo "# ldconfig"
-+# @echo
-
- .PHONY: ruli
- ruli: $(SONAME) libruli.a
-
-
diff --git a/meta-networking/recipes-support/ruli/files/float-conversion.patch b/meta-networking/recipes-support/ruli/files/float-conversion.patch
new file mode 100644
index 0000000000..999f23fc6a
--- /dev/null
+++ b/meta-networking/recipes-support/ruli/files/float-conversion.patch
@@ -0,0 +1,19 @@
+clarify type conversion
+
+fixes
+| ruli_rand.c:54:47: error: implicit conversion from 'unsigned int' to 'float' changes value from 4294967295 to 4294967296 [-Werror,-Wimplicit-int-float-conversion]
+|
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/ruli_rand.c
++++ b/src/ruli_rand.c
+@@ -51,7 +51,7 @@ int ruli_rand_next(ruli_rand_t *rand_ctx
+
+ u = isaac_rand(&rand_ctx->isaac_ctx);
+
+- r = (int) ((float) (1.0 + max - min) * u / ISAAC_UB4MAXVAL + min);
++ r = (int) ((float) (1.0 + max - min) * u / (float) (ISAAC_UB4MAXVAL + min));
+
+ assert(min <= r);
+ assert(r <= max);
diff --git a/meta-networking/recipes-support/ruli/ruli_0.36.bb b/meta-networking/recipes-support/ruli/ruli_0.36.bb
index 885796d2a5..178906b7b5 100644
--- a/meta-networking/recipes-support/ruli/ruli_0.36.bb
+++ b/meta-networking/recipes-support/ruli/ruli_0.36.bb
@@ -2,24 +2,33 @@ SUMMARY = "RULI stands for Resolver User Layer Interface It's a library built on
HOMEPAGE = "http://www.nongnu.org/ruli/"
-LICENSE = "GPL-2.0"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
DEPENDS = "liboop"
SRC_URI = "http://download.savannah.gnu.org/releases/ruli/ruli_${PV}.orig.tar.gz \
- file://Makefile.patch \
file://0001-Fix-build-with-format-string-checks.patch \
file://0001-src-ruli_addr.c-Add-missing-format-string.patch \
+ file://0001-ruli_srv-Mark-prev_addr_list_size-as-unused.patch \
+ file://0001-Make-space-for-flags-from-environment.patch \
+ file://float-conversion.patch \
"
SRC_URI[md5sum] = "e73fbfdeadddb68a703a70cea5271468"
SRC_URI[sha256sum] = "11d32def5b514748fbd9ea8c88049ae99e1bb358efc74eb91a4d268a3999dbfa"
-do_install1() {
- install -d ${D}${includedir}/ruli
- install -d ${D}${libdir}
- install -m 0644 ${S}/src/ruli*.h ${D}${includedir}/ruli
- install -m 0644 ${S}/src/libruli.so ${D}${libdir}
- install -m 0644 ${S}/src/libruli.so.4 ${D}${libdir}
+EXTRA_OEMAKE = 'CC="${CC}" CPPFLAGS="${CFLAGS}" OOP_BASE_DIR="${STAGING_EXECPREFIXDIR}" \
+ INSTALL_BASE_DIR="${D}${exec_prefix}" \
+ OOP_LIB_DIR=${STAGING_EXECPREFIXDIR}/${baselib} \
+ INSTALL_LIB_DIR=${D}${libdir}'
+
+do_configure() {
+ touch configure-stamp
+}
+
+do_install() {
+ oe_runmake install
}
+
+PACKAGES =+ "${PN}-bin"
diff --git a/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb b/meta-networking/recipes-support/smcroute/smcroute_2.5.7.bb
index 9b6fc2f38a..950f6a2e21 100644
--- a/meta-networking/recipes-support/smcroute/smcroute_2.0.0.bb
+++ b/meta-networking/recipes-support/smcroute/smcroute_2.5.7.bb
@@ -2,12 +2,12 @@ SUMMARY = "Static Multicast Routing Daemon"
DESCRIPTION = "SMCRoute is a daemon and command line tool to manipulate the multicast routing table in the UNIX kernel."
HOMEPAGE = "http://troglobit.github.io/smcroute.html"
SECTION = "net"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SRCREV = "d6280e64b27d5a4bd7f37dac36b455f4ae5f9ab3"
-SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=git"
+SRCREV = "b315d06ddb0dad16a52fe91e5831b4030ce37010"
+SRC_URI = "git://github.com/troglobit/smcroute.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
-inherit autotools
+inherit autotools pkgconfig
diff --git a/meta-networking/recipes-support/sngrep/sngrep_1.8.1.bb b/meta-networking/recipes-support/sngrep/sngrep_1.8.1.bb
new file mode 100644
index 0000000000..50248078a2
--- /dev/null
+++ b/meta-networking/recipes-support/sngrep/sngrep_1.8.1.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 = "373abb90804ba71f980c7120e62f90d3a5c81213"
+
+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-networking/recipes-support/spice/libcacard_2.8.1.bb b/meta-networking/recipes-support/spice/libcacard_2.8.1.bb
new file mode 100644
index 0000000000..65f2f80ace
--- /dev/null
+++ b/meta-networking/recipes-support/spice/libcacard_2.8.1.bb
@@ -0,0 +1,17 @@
+SUMMARY = "This library provides emulation of smart cards to a virtual card reader running in a guest virtual machine."
+LICENSE = "LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=79ffa0ec772fa86740948cb7327a0cc7"
+
+DEPENDS = "glib-2.0 pcsc-lite nss"
+
+SRCREV = "7b07684ea6698d4885ff2062350ad8798a04de42"
+
+SRC_URI = "git://gitlab.freedesktop.org/spice/libcacard.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+do_configure:prepend() {
+ echo ${PV} > ${S}/.tarball-version
+}
diff --git a/meta-networking/recipes-support/spice/phodav_3.0.bb b/meta-networking/recipes-support/spice/phodav_3.0.bb
new file mode 100644
index 0000000000..08c65eb259
--- /dev/null
+++ b/meta-networking/recipes-support/spice/phodav_3.0.bb
@@ -0,0 +1,24 @@
+SUMMARY = "phodav is a WebDav server implementation using libsoup (RFC 4918)."
+LICENSE = "LGPL-2.1-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
+
+DEPENDS = " \
+ glib-2.0 \
+ libsoup \
+"
+
+GTKDOC_MESON_OPTION = 'gtk_doc'
+GTKDOC_MESON_ENABLE_FLAG = 'enabled'
+GTKDOC_MESON_DISABLE_FLAG = 'disabled'
+
+PACKAGECONFIG ??= "avahi"
+PACKAGECONFIG[avahi] = "-Davahi=enabled,-Davahi=disabled,avahi"
+
+inherit pkgconfig gnomebase gettext gtk-doc
+
+EXTRA_OEMESON += "-Dsystemdsystemunitdir=${systemd_system_unitdir}"
+
+SRC_URI = "https://download.gnome.org/sources/phodav/3.0/phodav-${PV}.tar.xz;name=archive"
+SRC_URI[archive.sha256sum] = "392ec2d06d50300dcff1ef269a2a985304e29bce3520002fca29f2edc1d138d1"
+
+FILES:${PN} += "${libdir} ${systemd_system_unitdir}"
diff --git a/meta-networking/recipes-support/spice/spice-gtk_0.42.bb b/meta-networking/recipes-support/spice/spice-gtk_0.42.bb
new file mode 100644
index 0000000000..c8a3f7f532
--- /dev/null
+++ b/meta-networking/recipes-support/spice/spice-gtk_0.42.bb
@@ -0,0 +1,69 @@
+SUMMARY = "A Gtk client and libraries for SPICE remote desktop servers."
+HOMEPAGE = "https://spice-space.org"
+LICENSE = "LGPL-2.1-only & BSD-3-Clause & GPL-2.0-only"
+LIC_FILES_CHKSUM = " \
+ file://COPYING;md5=4fbd65380cdd255951079008b364516c \
+ file://subprojects/spice-common/COPYING;md5=4b54a1fd55a448865a0b32d41598759d \
+ file://subprojects/keycodemapdb/LICENSE.BSD;md5=5ae30ba4123bc4f2fa49aa0b0dce887b \
+ file://subprojects/keycodemapdb/LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
+"
+
+SRCREV = "f04479c16f0969fb394ebe74b6eff74e560a42f0"
+
+SRC_URI = "gitsm://gitlab.freedesktop.org/spice/spice-gtk.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = " \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'polkit', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland wayland-native wayland-protocols', '', d)} \
+ acl \
+ cyrus-sasl \
+ gstreamer1.0 \
+ gstreamer1.0-plugins-base \
+ gstreamer1.0-vaapi \
+ gtk+3 \
+ jpeg \
+ json-glib \
+ libcap-ng \
+ libepoxy \
+ libopus \
+ libusb1 \
+ lz4 \
+ pixman \
+ python3-pyparsing-native \
+ python3-six-native \
+ spice-protocol \
+ usbredir \
+ usbutils \
+ zlib \
+"
+DEPENDS:append:libc-musl = " libucontext"
+
+RDEPENDS:${PN} = "python3-pyparsing python3-six hwdata"
+
+inherit meson pkgconfig vala gobject-introspection features_check gtk-doc
+
+REQUIRED_DISTRO_FEATURES = "opengl"
+
+GIR_MESON_ENABLE_FLAG = 'enabled'
+GIR_MESON_DISABLE_FLAG = 'disabled'
+GTKDOC_MESON_OPTION = 'gtk_doc'
+GTKDOC_MESON_ENABLE_FLAG = 'enabled'
+GTKDOC_MESON_DISABLE_FLAG = 'disabled'
+
+do_configure:prepend() {
+ echo ${PV} > ${S}/.tarball-version
+}
+
+PACKAGECONFIG ??= "${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'vapi', '', d)} smartcard"
+PACKAGECONFIG[vapi] = "-Dvapi=enabled,-Dvapi=disabled"
+PACKAGECONFIG[smartcard] = "-Dsmartcard=enabled,-Dsmartcard=disabled,libcacard"
+PACKAGECONFIG[webdav] = "-Dwebdav=enabled,-Dwebdav=disabled,phodav libsoup"
+
+EXTRA_OEMESON = "-Dpie=true -Dusb-ids-path=${datadir}/hwdata/usb.ids "
+EXTRA_OEMESON:append:libc-musl = " -Dcoroutine=libucontext"
+
+LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-lld', ' -Wl,--undefined-version', '', d)}"
+
+FILES:${PN} += "${datadir}"
diff --git a/meta-networking/recipes-support/spice/spice-guest-vdagent_0.22.1.bb b/meta-networking/recipes-support/spice/spice-guest-vdagent_0.22.1.bb
new file mode 100644
index 0000000000..3af973eed1
--- /dev/null
+++ b/meta-networking/recipes-support/spice/spice-guest-vdagent_0.22.1.bb
@@ -0,0 +1,25 @@
+SUMMARY = "Spice agent for Linux"
+HOMEPAGE = "https://spice-space.org"
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
+
+SRCREV = "aa08162f036840d3e33502dc0a836b03b9cec97c"
+
+SRC_URI = "git://gitlab.freedesktop.org/spice/linux/vd_agent.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "opengl x11"
+
+inherit autotools pkgconfig features_check
+
+DEPENDS = "glib-2.0 alsa-lib gtk4 dbus libdrm spice-protocol libxfixes xrandr xinerama libx11"
+
+EXTRA_OECONF = " \
+ --with-gtk4 \
+ --enable-pie \
+"
+
+FILES:${PN} += "${datadir}"
+
diff --git a/meta-networking/recipes-support/spice/spice-protocol_0.14.4.bb b/meta-networking/recipes-support/spice/spice-protocol_0.14.4.bb
new file mode 100644
index 0000000000..3c8458baac
--- /dev/null
+++ b/meta-networking/recipes-support/spice/spice-protocol_0.14.4.bb
@@ -0,0 +1,21 @@
+#
+# Copyright (C) 2013 Wind River Systems, Inc.
+#
+
+SUMMARY = "Simple Protocol for Independent Computing Environments (protocol definition"
+HOMEPAGE = "https://spice-space.org"
+
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b37311cb5604f3e5cc2fb0fd23527e95"
+
+SRCREV = "6f453a775d87087c6ba59fc180c1a1e466631a47"
+
+SRC_URI = "git://gitlab.freedesktop.org/spice/spice-protocol.git;protocol=https;branch=master"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig
+
+ALLOW_EMPTY:${PN} = "1"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/spice/spice-protocol_git.bb b/meta-networking/recipes-support/spice/spice-protocol_git.bb
deleted file mode 100644
index 30d0a76752..0000000000
--- a/meta-networking/recipes-support/spice/spice-protocol_git.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Copyright (C) 2013 Wind River Systems, Inc.
-#
-
-SUMMARY = "Simple Protocol for Independent Computing Environments"
-DESCRIPTION = "SPICE (the Simple Protocol for Independent Computing \
-Environments) is a remote-display system built for virtual \
-environments which allows users to view a computing 'desktop' \
-environment - not only on its computer-server machine, but also from \
-anywhere on the Internet and using a wide variety of machine \
-architectures."
-
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b37311cb5604f3e5cc2fb0fd23527e95"
-
-PV = "0.12.13+git${SRCPV}"
-
-SRCREV = "87441524f4e7b79658e42bd8f1f6c3e3c8649aa5"
-
-SRC_URI = " \
- git://anongit.freedesktop.org/spice/spice-protocol \
-"
-
-S = "${WORKDIR}/git"
-
-inherit autotools gettext pkgconfig
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch b/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch
deleted file mode 100644
index 505b7c890b..0000000000
--- a/meta-networking/recipes-support/spice/spice/0001-Convert-pthread_t-to-be-numeric.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 0726ce6d6f52e135e28f15ca8392568c84909b1d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Sat, 16 Jun 2018 16:21:39 -0700
-Subject: [PATCH] Convert pthread_t to be numeric
-
-typecast pthread_t to unsigned long
-pthread_t is implemented as a struct point in musl and its as per standard
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
-Upstream-Status: Pending
-
- server/red-channel.c | 5 +++--
- server/red-client.c | 6 +++---
- 2 files changed, 6 insertions(+), 5 deletions(-)
-
-diff --git a/server/red-channel.c b/server/red-channel.c
-index 1b38f04d..11dc667b 100644
---- a/server/red-channel.c
-+++ b/server/red-channel.c
-@@ -192,7 +192,7 @@ red_channel_constructed(GObject *object)
- {
- RedChannel *self = RED_CHANNEL(object);
-
-- red_channel_debug(self, "thread_id 0x%lx", self->priv->thread_id);
-+ red_channel_debug(self, "thread_id 0x%lx", (unsigned long)self->priv->thread_id);
-
- RedChannelClass *klass = RED_CHANNEL_GET_CLASS(self);
-
-@@ -475,7 +475,8 @@ void red_channel_remove_client(RedChannel *channel, RedChannelClient *rcc)
- red_channel_warning(channel, "channel->thread_id (0x%lx) != pthread_self (0x%lx)."
- "If one of the threads is != io-thread && != vcpu-thread, "
- "this might be a BUG",
-- channel->priv->thread_id, pthread_self());
-+ (unsigned long)channel->priv->thread_id,
-+ (unsigned long)pthread_self());
- }
- spice_return_if_fail(channel);
- link = g_list_find(channel->priv->clients, rcc);
-diff --git a/server/red-client.c b/server/red-client.c
-index ddfc5400..76986640 100644
---- a/server/red-client.c
-+++ b/server/red-client.c
-@@ -180,7 +180,7 @@ void red_client_migrate(RedClient *client)
- spice_warning("client->thread_id (0x%lx) != pthread_self (0x%lx)."
- "If one of the threads is != io-thread && != vcpu-thread,"
- " this might be a BUG",
-- client->thread_id, pthread_self());
-+ (unsigned long)client->thread_id, (unsigned long)pthread_self());
- }
- FOREACH_CHANNEL_CLIENT(client, rcc) {
- if (red_channel_client_is_connected(rcc)) {
-@@ -199,8 +199,8 @@ void red_client_destroy(RedClient *client)
- spice_warning("client->thread_id (0x%lx) != pthread_self (0x%lx)."
- "If one of the threads is != io-thread && != vcpu-thread,"
- " this might be a BUG",
-- client->thread_id,
-- pthread_self());
-+ (unsigned long)client->thread_id,
-+ (unsigned long)pthread_self());
- }
- red_client_set_disconnecting(client);
- FOREACH_CHANNEL_CLIENT(client, rcc) {
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch b/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch
deleted file mode 100644
index 1f9d5fdd7b..0000000000
--- a/meta-networking/recipes-support/spice/spice/0001-spice-fix-compile-fail-problem.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7023732c65b4dc509c46a54fb7715da275b5597f Mon Sep 17 00:00:00 2001
-From: Changqing Li <changqing.li@windriver.com>
-Date: Thu, 13 Sep 2018 12:39:44 +0800
-Subject: [PATCH] spice: fix compile fail problem
-
-compile error:
-format '%d' expects argument of type 'int', but argument 6 has
-type 'long unsigned int' [-Werror=format=]
-
-spice compile failed on 32bit system, since upstream commit
-9541cd2fe(in V0.14.1) change %ld to %PRIdPTR, %PRIdPTR is %d, but argument
-strm.total_out is uLong.
-
-Upstream-Status: Submitted[https://github.com/freedesktop/spice/pull/1]
-
-Signed-off-by: Changqing Li <changqing.li@windriver.com>
----
- server/red-replay-qxl.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/server/red-replay-qxl.c b/server/red-replay-qxl.c
-index 1fce76c..bd33b58 100644
---- a/server/red-replay-qxl.c
-+++ b/server/red-replay-qxl.c
-@@ -266,7 +266,7 @@ static replay_t read_binary(SpiceReplay *replay, const char *prefix, size_t *siz
- exit(1);
- }
- if ((ret = inflate(&strm, Z_NO_FLUSH)) != Z_STREAM_END) {
-- spice_error("inflate error %d (disc: %" PRIdPTR ")", ret, *size - strm.total_out);
-+ spice_error("inflate error %d (disc: %ld)", ret, *size - strm.total_out);
- if (ret == Z_DATA_ERROR) {
- /* last operation may be wrong. since we do the recording
- * in red_worker, when there is a shutdown from the vcpu/io thread
---
-2.7.4
-
diff --git a/meta-networking/recipes-support/spice/spice_git.bb b/meta-networking/recipes-support/spice/spice_git.bb
index 1ad46c2c31..419316a26e 100644
--- a/meta-networking/recipes-support/spice/spice_git.bb
+++ b/meta-networking/recipes-support/spice/spice_git.bb
@@ -10,48 +10,39 @@ environment - not only on its computer-server machine, but also from \
anywhere on the Internet and using a wide variety of machine \
architectures."
-LICENSE = "BSD & LGPLv2.1+"
+LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-PV = "0.14.1+git${SRCPV}"
+PV = "0.15.2"
-SRCREV_spice = "eaa07ef15cfc3bf57a69da2576af66f028787774"
-SRCREV_spice-common = "6b93b3fce8909b836ef1d1434d191900d8aa00be"
+SRCREV = "0c2c1413a8b387ea597a95b6c867470a7c56c8ab"
-SRCREV_FORMAT = "spice_spice-common"
-
-SRC_URI = " \
- git://anongit.freedesktop.org/spice/spice;name=spice \
- git://anongit.freedesktop.org/spice/spice-common;destsuffix=git/subprojects/spice-common;name=spice-common \
- file://0001-Convert-pthread_t-to-be-numeric.patch \
- file://0001-spice-fix-compile-fail-problem.patch \
-"
+SRC_URI = "gitsm://gitlab.freedesktop.org/spice/spice;branch=master;protocol=https"
S = "${WORKDIR}/git"
-inherit autotools gettext pythonnative python-dir pkgconfig
+CVE_STATUS[CVE-2018-10893] = "fixed-version: patched already, caused by inaccurate CPE in the NVD database."
-DEPENDS += "spice-protocol jpeg pixman alsa-lib glib-2.0 python-pyparsing-native python-six-native glib-2.0-native"
-DEPENDS_append_class-nativesdk = "nativesdk-openssl"
+inherit meson gettext python3native python3-dir pkgconfig
-export PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python"
-export PYTHONPATH="${PKG_CONFIG_SYSROOT_DIR}${libdir}/python2.7/site-packages"
+DEPENDS = "spice-protocol jpeg pixman alsa-lib glib-2.0 gdk-pixbuf lz4 orc python3-pyparsing-native python3-six-native glib-2.0-native zlib"
+DEPENDS:append:class-nativesdk = " nativesdk-openssl"
-PACKAGECONFIG_class-native = ""
-PACKAGECONFIG_class-nativesdk = ""
-PACKAGECONFIG ?= "sasl"
+export PYTHON="${STAGING_BINDIR_NATIVE}/python3-native/python3"
-PACKAGECONFIG[celt051] = "--enable-celt051,--disable-celt051,celt051"
-PACKAGECONFIG[smartcard] = "--enable-smartcard,--disable-smartcard,libcacard,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,"
-PACKAGECONFIG[client] = "--enable-client,--disable-client,,"
-PACKAGECONFIG[gui] = "--enable-gui,--disable-gui,,"
-PACKAGECONFIG[opus] = "--enable-opus,--disable-opus,libopus,"
-PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,,"
-PACKAGECONFIG[xinerama] = "--enable-xinerama,--disable-xinerama,libxinerama,"
+do_configure:prepend() {
+ echo ${PV} > ${S}/.tarball-version
+}
-COMPATIBLE_HOST = '(x86_64|i.86).*-linux'
+PACKAGECONFIG:class-native = ""
+PACKAGECONFIG:class-nativesdk = ""
+PACKAGECONFIG ?= "sasl opus smartcard gstreamer"
-BBCLASSEXTEND = "native nativesdk"
+PACKAGECONFIG[gstreamer] = "-Dgstreamer=1.0,-Dgstreamer=no,gstreamer1.0 gstreamer1.0-plugins-base"
+PACKAGECONFIG[smartcard] = "-Dsmartcard=enabled,-Dsmartcard=disabled,libcacard,libcacard"
+PACKAGECONFIG[sasl] = "-Dsasl=true,-Dsasl=false,cyrus-sasl,"
+PACKAGECONFIG[opus] = "-Dopus=enabled,-Dopus=disabled,libopus,"
-EXTRA_OECONF_toolchain-clang += "--disable-werror"
+COMPATIBLE_HOST = '(x86_64|i.86|aarch64).*-linux'
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/spice/usbredir_git.bb b/meta-networking/recipes-support/spice/usbredir_0.13.0.bb
index 3fea7528e5..3a73f9b189 100644
--- a/meta-networking/recipes-support/spice/usbredir_git.bb
+++ b/meta-networking/recipes-support/spice/usbredir_0.13.0.bb
@@ -1,21 +1,18 @@
SUMMARY = "usbredir libraries and utilities"
-LICENSE = "GPLv2+ & LGPLv2.1+"
+LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LIB;md5=4b54a1fd55a448865a0b32d41598759d \
"
-DEPENDS = "libusb1"
+DEPENDS = "libusb1 glib-2.0"
-SRCREV = "39aa3c69f61bba28856a3eef3fe4ab37a3968e88"
-PV = "0.7.1+git${SRCPV}"
+SRCREV = "5fc0e1c43194d948545941d408f4c10d084eb6ed"
-SRC_URI = " \
- git://anongit.freedesktop.org/spice/usbredir \
-"
+SRC_URI = "git://gitlab.freedesktop.org/spice/usbredir;branch=main;protocol=https"
S = "${WORKDIR}/git"
-inherit autotools pkgconfig
+inherit meson pkgconfig
BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-networking/recipes-support/ssmping/files/0001-Makefile-tweak-install-dir.patch b/meta-networking/recipes-support/ssmping/files/0001-Makefile-tweak-install-dir.patch
index 0cb981cf7a..4e1498a366 100644
--- a/meta-networking/recipes-support/ssmping/files/0001-Makefile-tweak-install-dir.patch
+++ b/meta-networking/recipes-support/ssmping/files/0001-Makefile-tweak-install-dir.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Makefile: tweak install dir
For oe-core, the man doc should be installed to /usr/share/man
rather than /usr/locale/man.
-Upstream-Status: inappropriate (oe specific)
+Upstream-Status: Inappropriate [oe specific]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
diff --git a/meta-networking/recipes-support/ssmping/ssmping_0.9.1.bb b/meta-networking/recipes-support/ssmping/ssmping_0.9.1.bb
index 0531ffe640..2d63119750 100644
--- a/meta-networking/recipes-support/ssmping/ssmping_0.9.1.bb
+++ b/meta-networking/recipes-support/ssmping/ssmping_0.9.1.bb
@@ -15,3 +15,7 @@ CFLAGS += "-D_GNU_SOURCE "
do_install() {
oe_runmake 'DESTDIR=${D}' 'PREFIX=${prefix}' install
}
+
+# http://errors.yoctoproject.org/Errors/Details/766895/
+# ssmping.c:55:51: error: passing argument 3 of 'getsockname' from incompatible pointer type [-Wincompatible-pointer-types]
+CFLAGS += "-Wno-error=incompatible-pointer-types"
diff --git a/meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch b/meta-networking/recipes-support/ssmtp/ssmtp/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000000..094ba5afa2
--- /dev/null
+++ b/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-networking/recipes-support/ssmtp/ssmtp/0001-ssmtp-Correct-the-null-pointer-assignment-to-char-po.patch b/meta-networking/recipes-support/ssmtp/ssmtp/0001-ssmtp-Correct-the-null-pointer-assignment-to-char-po.patch
new file mode 100644
index 0000000000..c7468fe17f
--- /dev/null
+++ b/meta-networking/recipes-support/ssmtp/ssmtp/0001-ssmtp-Correct-the-null-pointer-assignment-to-char-po.patch
@@ -0,0 +1,51 @@
+From 58cfb4f86b7fbf19eb643dfba87fdd890b3d4a4a Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 24 Aug 2022 19:27:31 -0700
+Subject: [PATCH] ssmtp: Correct the null pointer assignment to char pointers
+
+Fixes
+error: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'char' [-Wint-conversion]
+| char *from = (char)NULL; /* Use this as the From: address */
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ ssmtp.c | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/ssmtp.c b/ssmtp.c
+index a74ba4e..0a719ac 100644
+--- a/ssmtp.c
++++ b/ssmtp.c
+@@ -55,21 +55,21 @@ bool_t use_oldauth = False; /* use old AUTH LOGIN username style */
+
+ #define ARPADATE_LENGTH 32 /* Current date in RFC format */
+ char arpadate[ARPADATE_LENGTH];
+-char *auth_user = (char)NULL;
+-char *auth_pass = (char)NULL;
+-char *auth_method = (char)NULL; /* Mechanism for SMTP authentication */
+-char *mail_domain = (char)NULL;
+-char *from = (char)NULL; /* Use this as the From: address */
++char *auth_user = NULL;
++char *auth_pass = NULL;
++char *auth_method = NULL; /* Mechanism for SMTP authentication */
++char *mail_domain = NULL;
++char *from = NULL; /* Use this as the From: address */
+ char *hostname;
+ char *mailhost = "mailhub";
+-char *minus_f = (char)NULL;
+-char *minus_F = (char)NULL;
++char *minus_f = NULL;
++char *minus_F = NULL;
+ char *gecos;
+-char *prog = (char)NULL;
++char *prog = NULL;
+ char *root = NULL;
+ char *tls_cert = "/etc/ssl/certs/ssmtp.pem"; /* Default Certificate */
+-char *uad = (char)NULL;
+-char *config_file = (char)NULL; /* alternate configuration file */
++char *uad = NULL;
++char *config_file = NULL; /* alternate configuration file */
+
+ headers_t headers, *ht;
+
diff --git a/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb b/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
index 07e3ffed42..499a79d1ed 100644
--- a/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
+++ b/meta-networking/recipes-support/ssmtp/ssmtp_2.64.bb
@@ -1,18 +1,20 @@
SUMMARY = "extremely simple MTA to get mail off the system to a mail hub"
HOMEPAGE = "http://packages.qa.debian.org/s/ssmtp.html"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=0c56db0143f4f80c369ee3af7425af6e"
SRC_URI = "${DEBIAN_MIRROR}/main/s/${BPN}/${BPN}_${PV}.orig.tar.bz2 \
file://ssmtp-bug584162-fix.patch \
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"
SRC_URI[sha256sum] = "22c37dc90c871e8e052b2cab0ad219d010fa938608cd66b21c8f3c759046fa36"
-inherit autotools
+inherit autotools update-alternatives
PACKAGECONFIG ?= "ssl ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
@@ -25,7 +27,7 @@ EXTRA_OEMAKE = "GEN_CONFIG='/bin/true'"
LDFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'ssl', '-lssl -lcrypto', '', d)}"
-do_install_append () {
+do_install:append () {
install -d ${D}${mandir}/
mv ${D}${exec_prefix}/man/* ${D}${mandir}/
rmdir ${D}${exec_prefix}/man
@@ -33,3 +35,10 @@ do_install_append () {
ln -s ssmtp ${D}${sbindir}/newaliases
ln -s ssmtp ${D}${sbindir}/mailq
}
+
+ALTERNATIVE_PRIORITY_${PN} = "100"
+
+ALTERNATIVE:${PN} = "mailq newaliases sendmail"
+ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail"
+ALTERNATIVE_LINK_NAME[newaliases] = "${sbindir}/newaliases"
+ALTERNATIVE_LINK_NAME[mailq] = "${sbindir}/mailq"
diff --git a/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch b/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch
deleted file mode 100644
index 00178c84a4..0000000000
--- a/meta-networking/recipes-support/strongswan/files/0001-memory.h-Include-stdint.h-for-uintptr_t.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 33a53dc13fd924949a582109b45fedd8d0bed59b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 27 Jun 2017 07:42:11 -0700
-Subject: [PATCH] memory.h: Include stdint.h for uintptr_t
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- src/libstrongswan/utils/utils/memory.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/libstrongswan/utils/utils/memory.h b/src/libstrongswan/utils/utils/memory.h
-index e840330..8a356a8 100644
---- a/src/libstrongswan/utils/utils/memory.h
-+++ b/src/libstrongswan/utils/utils/memory.h
-@@ -22,6 +22,8 @@
- #ifndef MEMORY_H_
- #define MEMORY_H_
-
-+#include <stdint.h>
-+
- /**
- * Helper function that compares two binary blobs for equality
- */
diff --git a/meta-networking/recipes-support/strongswan/files/fix-funtion-parameter.patch b/meta-networking/recipes-support/strongswan/files/fix-funtion-parameter.patch
deleted file mode 100644
index 5945507bf1..0000000000
--- a/meta-networking/recipes-support/strongswan/files/fix-funtion-parameter.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 9f97479373f3fceedc471074b81486d77a49618d Mon Sep 17 00:00:00 2001
-From: "Roy.Li" <rongqing.li@windriver.com>
-Date: Tue, 4 Mar 2014 14:38:42 +0800
-Subject: [PATCH] fix the function parameter
-
-Upstream-Status: Pending
-
-Original openssl_diffie_hellman_create has three parameters, but
-it is reassigned a function pointer which has one parameter, and
-is called with one parameter, which will lead to segment fault
-on PPC, Now we simply correct the number of parameters.
-
- #0 0x484d4aa0 in __GI_raise (sig=6)
- at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
- #1 0x484d9930 in __GI_abort () at abort.c:91
- #2 0x10002064 in segv_handler (signal=11) at charon.c:224
- #3 <signal handler called>
- #4 0x48d89630 in openssl_diffie_hellman_create (group=MODP_1024_BIT, g=...,
- p=<error reading variable: Cannot access memory at address 0x0>)
- at openssl_diffie_hellman.c:143
- #5 0x482c54f8 in create_dh (this=0x11ac6e68, group=MODP_1024_BIT)
- at crypto/crypto_factory.c:358
- #6 0x48375884 in create_dh (this=<optimized out>, group=<optimized out>)
- at sa/keymat.c:132
- #7 0x483843b8 in process_payloads (this=0x51400a78, message=<optimized
- out>)
- at sa/tasks/ike_init.c:200
- #8 0x483844d0 in process_r (this=0x51400a78, message=0x51500778)
- at sa/tasks/ike_init.c:319
- #9 0x48374c9c in process_request (message=0x51500778, this=0x51400d20)
- at sa/task_manager.c:870
- #10 process_message (this=0x51400d20, msg=0x51500778) at
- sa/task_manager.c:925
- #11 0x4836c378 in process_message (this=0x514005f0, message=0x51500778)
- at sa/ike_sa.c:1317
- #12 0x48362270 in execute (this=0x515008d0)
- at processing/jobs/process_message_job.c:74
-
-Signed-off-by: Roy.Li <rongqing.li@windriver.com>
-
----
- src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c | 8 +++++++-
- src/libstrongswan/plugins/openssl/openssl_diffie_hellman.h | 4 +++-
- src/libstrongswan/plugins/openssl/openssl_plugin.c | 1 +
- 3 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c b/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c
-index 8e9c118..a73b038 100644
---- a/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c
-+++ b/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.c
-@@ -192,7 +192,7 @@ METHOD(diffie_hellman_t, destroy, void,
- /*
- * Described in header.
- */
--openssl_diffie_hellman_t *openssl_diffie_hellman_create(
-+openssl_diffie_hellman_t *openssl_diffie_hellman_create_custom(
- diffie_hellman_group_t group, ...)
- {
- private_openssl_diffie_hellman_t *this;
-@@ -255,5 +255,11 @@ openssl_diffie_hellman_t *openssl_diffie_hellman_create(
- DBG2(DBG_LIB, "size of DH secret exponent: %d bits", BN_num_bits(privkey));
- return &this->public;
- }
-+openssl_diffie_hellman_t *openssl_diffie_hellman_create( diffie_hellman_group_t group)
-+{
-+ chunk_t g;
-+ chunk_t p;
-+ openssl_diffie_hellman_create_custom(group, g, p);
-+}
-
- #endif /* OPENSSL_NO_DH */
-diff --git a/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.h b/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.h
-index 5de5520..22586e0 100644
---- a/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.h
-+++ b/src/libstrongswan/plugins/openssl/openssl_diffie_hellman.h
-@@ -43,8 +43,10 @@ struct openssl_diffie_hellman_t {
- * @param ... expects generator and prime as chunk_t if MODP_CUSTOM
- * @return openssl_diffie_hellman_t object, NULL if not supported
- */
--openssl_diffie_hellman_t *openssl_diffie_hellman_create(
-+openssl_diffie_hellman_t *openssl_diffie_hellman_create_custom(
- diffie_hellman_group_t group, ...);
-+openssl_diffie_hellman_t *openssl_diffie_hellman_create(
-+ diffie_hellman_group_t group);
-
- #endif /** OPENSSL_DIFFIE_HELLMAN_H_ @}*/
-
-diff --git a/src/libstrongswan/plugins/openssl/openssl_plugin.c b/src/libstrongswan/plugins/openssl/openssl_plugin.c
-index 8b0a7c5..114d575 100644
---- a/src/libstrongswan/plugins/openssl/openssl_plugin.c
-+++ b/src/libstrongswan/plugins/openssl/openssl_plugin.c
-@@ -609,6 +609,7 @@ METHOD(plugin_t, get_features, int,
- PLUGIN_PROVIDE(DH, MODP_1024_BIT),
- PLUGIN_PROVIDE(DH, MODP_1024_160),
- PLUGIN_PROVIDE(DH, MODP_768_BIT),
-+ PLUGIN_REGISTER(DH, openssl_diffie_hellman_create_custom),
- PLUGIN_PROVIDE(DH, MODP_CUSTOM),
- #endif
- #ifndef OPENSSL_NO_RSA
diff --git a/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb b/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb
deleted file mode 100644
index c8bb17c5ba..0000000000
--- a/meta-networking/recipes-support/strongswan/strongswan_5.7.1.bb
+++ /dev/null
@@ -1,134 +0,0 @@
-DESCRIPTION = "strongSwan is an OpenSource IPsec implementation for the \
-Linux operating system."
-SUMMARY = "strongSwan is an OpenSource IPsec implementation"
-HOMEPAGE = "http://www.strongswan.org"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-DEPENDS = "gmp openssl flex-native flex bison-native"
-
-SRC_URI = "http://download.strongswan.org/strongswan-${PV}.tar.bz2 \
- file://fix-funtion-parameter.patch \
- file://0001-memory.h-Include-stdint.h-for-uintptr_t.patch \
- "
-
-SRC_URI[md5sum] = "86b7e9321cde075cf382268fd282e0b0"
-SRC_URI[sha256sum] = "006f9c9126e2a2f4e7a874b5e1bd2abec1bbbb193c8b3b3a4c6ccd8c2d454bec"
-
-UPSTREAM_CHECK_REGEX = "strongswan-(?P<pver>\d+(\.\d+)+)\.tar"
-
-EXTRA_OECONF = " \
- --without-lib-prefix \
-"
-
-EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/', '--without-systemdsystemunitdir', d)}"
-
-
-PACKAGECONFIG ??= "charon curl gmp openssl stroke sqlite3 \
- ${@bb.utils.filter('DISTRO_FEATURES', 'ldap', d)} \
-"
-PACKAGECONFIG[aesni] = "--enable-aesni,--disable-aesni,,${PN}-plugin-aesni"
-PACKAGECONFIG[charon] = "--enable-charon,--disable-charon,"
-PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,${PN}-plugin-curl"
-PACKAGECONFIG[gmp] = "--enable-gmp,--disable-gmp,gmp,${PN}-plugin-gmp"
-PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,openldap,${PN}-plugin-ldap"
-PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5,${PN}-plugin-mysql"
-PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl,${PN}-plugin-openssl"
-PACKAGECONFIG[scep] = "--enable-scepclient,--disable-scepclient,"
-PACKAGECONFIG[soup] = "--enable-soup,--disable-soup,libsoup-2.4,${PN}-plugin-soup"
-PACKAGECONFIG[sqlite3] = "--enable-sqlite,--disable-sqlite,sqlite3,${PN}-plugin-sqlite"
-PACKAGECONFIG[stroke] = "--enable-stroke,--disable-stroke,,${PN}-plugin-stroke"
-PACKAGECONFIG[swanctl] = "--enable-swanctl,--disable-swanctl,,libgcc"
-
-# requires swanctl
-PACKAGECONFIG[systemd-charon] = "--enable-systemd,--disable-systemd,systemd,"
-
-inherit autotools systemd pkgconfig
-
-RRECOMMENDS_${PN} = "kernel-module-ipsec"
-
-FILES_${PN} += "${libdir}/ipsec/lib*${SOLIBS}"
-FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug"
-FILES_${PN}-dev += "${libdir}/ipsec/lib*${SOLIBSDEV} ${libdir}/ipsec/*.la"
-FILES_${PN}-staticdev += "${libdir}/ipsec/*.a"
-
-CONFFILES_${PN} = "${sysconfdir}/*.conf ${sysconfdir}/ipsec.d/*.conf ${sysconfdir}/strongswan.d/*.conf"
-
-PACKAGES += "${PN}-plugins"
-ALLOW_EMPTY_${PN}-plugins = "1"
-
-PACKAGES_DYNAMIC += "^${PN}-plugin-.*$"
-NOAUTOPACKAGEDEBUG = "1"
-
-python split_strongswan_plugins () {
- sysconfdir = d.expand('${sysconfdir}/strongswan.d/charon')
- libdir = d.expand('${libdir}/ipsec/plugins')
- dbglibdir = os.path.join(libdir, '.debug')
-
- def add_plugin_conf(f, pkg, file_regex, output_pattern, modulename):
- dvar = d.getVar('PKGD', True)
- oldfiles = d.getVar('CONFFILES_' + pkg, True)
- newfile = '/' + os.path.relpath(f, dvar)
-
- if not oldfiles:
- d.setVar('CONFFILES_' + pkg, newfile)
- else:
- d.setVar('CONFFILES_' + pkg, oldfiles + " " + newfile)
-
- split_packages = do_split_packages(d, libdir, 'libstrongswan-(.*)\.so', '${PN}-plugin-%s', 'strongSwan %s plugin', prepend=True)
- do_split_packages(d, sysconfdir, '(.*)\.conf', '${PN}-plugin-%s', 'strongSwan %s plugin', prepend=True, hook=add_plugin_conf)
-
- split_dbg_packages = do_split_packages(d, dbglibdir, 'libstrongswan-(.*)\.so', '${PN}-plugin-%s-dbg', 'strongSwan %s plugin - Debugging files', prepend=True, extra_depends='${PN}-dbg')
- split_dev_packages = do_split_packages(d, libdir, 'libstrongswan-(.*)\.la', '${PN}-plugin-%s-dev', 'strongSwan %s plugin - Development files', prepend=True, extra_depends='${PN}-dev')
- split_staticdev_packages = do_split_packages(d, libdir, 'libstrongswan-(.*)\.a', '${PN}-plugin-%s-staticdev', 'strongSwan %s plugin - Development files (Static Libraries)', prepend=True, extra_depends='${PN}-staticdev')
-
- if split_packages:
- pn = d.getVar('PN', True)
- d.setVar('RRECOMMENDS_' + pn + '-plugins', ' '.join(split_packages))
- d.appendVar('RRECOMMENDS_' + pn + '-dbg', ' ' + ' '.join(split_dbg_packages))
- d.appendVar('RRECOMMENDS_' + pn + '-dev', ' ' + ' '.join(split_dev_packages))
- d.appendVar('RRECOMMENDS_' + pn + '-staticdev', ' ' + ' '.join(split_staticdev_packages))
-}
-
-PACKAGESPLITFUNCS_prepend = "split_strongswan_plugins "
-
-# Install some default plugins based on default strongSwan ./configure options
-# See https://wiki.strongswan.org/projects/strongswan/wiki/Pluginlist
-RDEPENDS_${PN} += "\
- ${PN}-plugin-aes \
- ${PN}-plugin-attr \
- ${PN}-plugin-cmac \
- ${PN}-plugin-constraints \
- ${PN}-plugin-des \
- ${PN}-plugin-dnskey \
- ${PN}-plugin-hmac \
- ${PN}-plugin-kernel-netlink \
- ${PN}-plugin-md5 \
- ${PN}-plugin-nonce \
- ${PN}-plugin-pem \
- ${PN}-plugin-pgp \
- ${PN}-plugin-pkcs1 \
- ${PN}-plugin-pkcs7 \
- ${PN}-plugin-pkcs8 \
- ${PN}-plugin-pkcs12 \
- ${PN}-plugin-pubkey \
- ${PN}-plugin-random \
- ${PN}-plugin-rc2 \
- ${PN}-plugin-resolve \
- ${PN}-plugin-revocation \
- ${PN}-plugin-sha1 \
- ${PN}-plugin-sha2 \
- ${PN}-plugin-socket-default \
- ${PN}-plugin-sshkey \
- ${PN}-plugin-updown \
- ${PN}-plugin-vici \
- ${PN}-plugin-x509 \
- ${PN}-plugin-xauth-generic \
- ${PN}-plugin-xcbc \
- ${PN}-plugin-curve25519 \
- "
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}-swanctl.service', '${BPN}.service', d)}"
diff --git a/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb b/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb
new file mode 100644
index 0000000000..2e2da8274b
--- /dev/null
+++ b/meta-networking/recipes-support/strongswan/strongswan_5.9.14.bb
@@ -0,0 +1,194 @@
+DESCRIPTION = "strongSwan is an OpenSource IPsec implementation for the \
+Linux operating system."
+SUMMARY = "strongSwan is an OpenSource IPsec implementation"
+HOMEPAGE = "http://www.strongswan.org"
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+DEPENDS = "flex-native flex bison-native"
+DEPENDS:append = "${@bb.utils.contains('DISTRO_FEATURES', 'tpm2', ' tpm2-tss', '', d)}"
+
+SRC_URI = "https://download.strongswan.org/strongswan-${PV}.tar.bz2 \
+ "
+
+SRC_URI[sha256sum] = "728027ddda4cb34c67c4cec97d3ddb8c274edfbabdaeecf7e74693b54fc33678"
+
+UPSTREAM_CHECK_REGEX = "strongswan-(?P<pver>\d+(\.\d+)+)\.tar"
+
+EXTRA_OECONF = " \
+ --without-lib-prefix \
+ --with-dev-headers=${includedir}/strongswan \
+"
+
+EXTRA_OECONF += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/', '--without-systemdsystemunitdir', d)}"
+
+PACKAGECONFIG ?= "curl gmp openssl sqlite3 swanctl curve25519\
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-charon', 'charon', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'tpm2', 'tpm2', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'ima', 'tnc-imc imc-hcd imc-os imc-scanner imc-attestation', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'ima', 'tnc-imv imv-hcd imv-os imv-scanner imv-attestation', '', d)} \
+"
+
+PACKAGECONFIG[aesni] = "--enable-aesni,--disable-aesni,,${PN}-plugin-aesni"
+PACKAGECONFIG[bfd] = "--enable-bfd-backtraces,--disable-bfd-backtraces,binutils"
+PACKAGECONFIG[charon] = "--enable-charon,--disable-charon,"
+PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl,${PN}-plugin-curl"
+PACKAGECONFIG[eap-identity] = "--enable-eap-identity,--disable-eap-identity,,${PN}-plugin-eap-identity"
+PACKAGECONFIG[eap-mschapv2] = "--enable-eap-mschapv2,--disable-eap-mschapv2,,${PN}-plugin-eap-mschapv2"
+PACKAGECONFIG[gmp] = "--enable-gmp,--disable-gmp,gmp,${PN}-plugin-gmp"
+PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,openldap,${PN}-plugin-ldap"
+PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5,${PN}-plugin-mysql"
+PACKAGECONFIG[nm] = "--enable-nm,--disable-nm,networkmanager,${PN}-nm"
+PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl,${PN}-plugin-openssl"
+PACKAGECONFIG[soup] = "--enable-soup,--disable-soup,libsoup-2.4,${PN}-plugin-soup"
+PACKAGECONFIG[sqlite3] = "--enable-sqlite,--disable-sqlite,sqlite3,${PN}-plugin-sqlite"
+PACKAGECONFIG[stroke] = "--enable-stroke,--disable-stroke,,${PN}-plugin-stroke"
+PACKAGECONFIG[swanctl] = "--enable-swanctl,--disable-swanctl,,libgcc"
+PACKAGECONFIG[curve25519] = "--enable-curve25519,--disable-curve25519,, ${PN}-plugin-curve25519"
+
+# requires swanctl
+PACKAGECONFIG[systemd-charon] = "--enable-systemd,--disable-systemd,systemd,"
+
+# tpm needs meta-tpm layer
+PACKAGECONFIG[tpm2] = "--enable-tpm,--disable-tpm,,${PN}-plugin-tpm"
+
+
+# integraty configuration needs meta-integraty
+#imc
+PACKAGECONFIG[tnc-imc] = "--enable-tnc-imc,--disable-tnc-imc,, ${PN}-plugin-tnc-imc ${PN}-plugin-tnc-tnccs"
+PACKAGECONFIG[imc-test] = "--enable-imc-test,--disable-imc-test,,"
+PACKAGECONFIG[imc-scanner] = "--enable-imc-scanner,--disable-imc-scanner,,"
+PACKAGECONFIG[imc-os] = "--enable-imc-os,--disable-imc-os,,"
+PACKAGECONFIG[imc-attestation] = "--enable-imc-attestation,--disable-imc-attestation,,"
+PACKAGECONFIG[imc-swima] = "--enable-imc-swima, --disable-imc-swima, json-c,"
+PACKAGECONFIG[imc-hcd] = "--enable-imc-hcd, --disable-imc-hcd,,"
+
+#imv set
+PACKAGECONFIG[tnc-imv] = "--enable-tnc-imv,--disable-tnc-imv,, ${PN}-plugin-tnc-imv ${PN}-plugin-tnc-tnccs"
+PACKAGECONFIG[imv-test] = "--enable-imv-test,--disable-imv-test,,"
+PACKAGECONFIG[imv-scanner] = "--enable-imv-scanner,--disable-imv-scanner,,"
+PACKAGECONFIG[imv-os] = "--enable-imv-os,--disable-imv-os,,"
+PACKAGECONFIG[imv-attestation] = "--enable-imv-attestation,--disable-imv-attestation,,"
+PACKAGECONFIG[imv-swima] = "--enable-imv-swima, --disable-imv-swima, json-c,"
+PACKAGECONFIG[imv-hcd] = "--enable-imv-hcd, --disable-imv-hcd,,"
+
+PACKAGECONFIG[tnc-ifmap] = "--enable-tnc-ifmap,--disable-tnc-ifmap, libxml2, ${PN}-plugin-tnc-ifmap"
+PACKAGECONFIG[tnc-pdp] = "--enable-tnc-pdp,--disable-tnc-pdp,, ${PN}-plugin-tnc-pdp"
+
+PACKAGECONFIG[tnccs-11] = "--enable-tnccs-11,--disable-tnccs-11,libxml2, ${PN}-plugin-tnccs-11"
+PACKAGECONFIG[tnccs-20] = "--enable-tnccs-20,--disable-tnccs-20,, ${PN}-plugin-tnccs-20"
+PACKAGECONFIG[tnccs-dynamic] = "--enable-tnccs-dynamic,--disable-tnccs-dynamic,,${PN}-plugin-tnccs-dynamic"
+
+inherit autotools systemd pkgconfig
+
+RRECOMMENDS:${PN} = "kernel-module-ah4 \
+ kernel-module-esp4 \
+ kernel-module-xfrm-user \
+ "
+
+FILES:${PN} += "${libdir}/ipsec/lib*${SOLIBS}"
+FILES:${PN}-dbg += "${bindir}/.debug ${sbindir}/.debug ${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug"
+FILES:${PN}-dev += "${libdir}/ipsec/lib*${SOLIBSDEV} ${libdir}/ipsec/*.la ${libdir}/ipsec/include/config.h"
+FILES:${PN}-staticdev += "${libdir}/ipsec/*.a"
+
+CONFFILES:${PN} = "${sysconfdir}/*.conf ${sysconfdir}/ipsec.d/*.conf ${sysconfdir}/strongswan.d/*.conf"
+
+PACKAGES += "${PN}-plugins"
+ALLOW_EMPTY:${PN}-plugins = "1"
+
+PACKAGE_BEFORE_PN = "${PN}-imcvs ${PN}-imcvs-dbg"
+ALLOW_EMPTY:${PN}-imcvs = "1"
+
+FILES:${PN}-imcvs = "${libdir}/ipsec/imcvs/*.so"
+FILES:${PN}-imcvs-dbg += "${libdir}/ipsec/imcvs/.debug"
+
+PACKAGES =+ "${PN}-nm ${PN}-nm-dbg"
+FILES:${PN}-nm = "${libexecdir}/ipsec/charon-nm ${datadir}/dbus-1/system.d/nm-strongswan-service.conf"
+FILES:${PN}-nm-dbg = "${libexecdir}/ipsec/.debug/charon-nm"
+
+PACKAGES_DYNAMIC += "^${PN}-plugin-.*$"
+NOAUTOPACKAGEDEBUG = "1"
+
+python split_strongswan_plugins () {
+ sysconfdir = d.expand('${sysconfdir}/strongswan.d/charon')
+ libdir = d.expand('${libdir}/ipsec/plugins')
+ dbglibdir = os.path.join(libdir, '.debug')
+
+ def add_plugin_conf(f, pkg, file_regex, output_pattern, modulename):
+ dvar = d.getVar('PKGD')
+ oldfiles = d.getVar('CONFFILES:' + pkg)
+ newfile = '/' + os.path.relpath(f, dvar)
+
+ if not oldfiles:
+ d.setVar('CONFFILES:' + pkg, newfile)
+ else:
+ d.setVar('CONFFILES:' + pkg, oldfiles + " " + newfile)
+
+ split_packages = do_split_packages(d, libdir, r'libstrongswan-(.*)\.so', '${PN}-plugin-%s', 'strongSwan %s plugin', prepend=True)
+ do_split_packages(d, sysconfdir, r'(.*)\.conf', '${PN}-plugin-%s', 'strongSwan %s plugin', prepend=True, hook=add_plugin_conf)
+
+ split_dbg_packages = do_split_packages(d, dbglibdir, r'libstrongswan-(.*)\.so', '${PN}-plugin-%s-dbg', 'strongSwan %s plugin - Debugging files', prepend=True, extra_depends='${PN}-dbg')
+ split_dev_packages = do_split_packages(d, libdir, r'libstrongswan-(.*)\.la', '${PN}-plugin-%s-dev', 'strongSwan %s plugin - Development files', prepend=True, extra_depends='${PN}-dev')
+ split_staticdev_packages = do_split_packages(d, libdir, r'libstrongswan-(.*)\.a', '${PN}-plugin-%s-staticdev', 'strongSwan %s plugin - Development files (Static Libraries)', prepend=True, extra_depends='${PN}-staticdev')
+
+ if split_packages:
+ pn = d.getVar('PN')
+ d.setVar('RRECOMMENDS:' + pn + '-plugins', ' '.join(split_packages))
+ d.appendVar('RRECOMMENDS:' + pn + '-dbg', ' ' + ' '.join(split_dbg_packages))
+ d.appendVar('RRECOMMENDS:' + pn + '-dev', ' ' + ' '.join(split_dev_packages))
+ d.appendVar('RRECOMMENDS:' + pn + '-staticdev', ' ' + ' '.join(split_staticdev_packages))
+}
+
+PACKAGESPLITFUNCS:prepend = "split_strongswan_plugins "
+
+# Install some default plugins based on default strongSwan ./configure options
+# See https://wiki.strongswan.org/projects/strongswan/wiki/Pluginlist
+RDEPENDS:${PN} += "\
+ ${PN}-plugin-aes \
+ ${PN}-plugin-attr \
+ ${PN}-plugin-cmac \
+ ${PN}-plugin-constraints \
+ ${PN}-plugin-des \
+ ${PN}-plugin-dnskey \
+ ${PN}-plugin-drbg \
+ ${PN}-plugin-fips-prf \
+ ${PN}-plugin-gcm \
+ ${PN}-plugin-hmac \
+ ${PN}-plugin-kdf \
+ ${PN}-plugin-kernel-netlink \
+ ${PN}-plugin-md5 \
+ ${PN}-plugin-mgf1 \
+ ${PN}-plugin-nonce \
+ ${PN}-plugin-pem \
+ ${PN}-plugin-pgp \
+ ${PN}-plugin-pkcs1 \
+ ${PN}-plugin-pkcs7 \
+ ${PN}-plugin-pkcs8 \
+ ${PN}-plugin-pkcs12 \
+ ${PN}-plugin-pubkey \
+ ${PN}-plugin-random \
+ ${PN}-plugin-rc2 \
+ ${PN}-plugin-resolve \
+ ${PN}-plugin-revocation \
+ ${PN}-plugin-sha1 \
+ ${PN}-plugin-sha2 \
+ ${PN}-plugin-socket-default \
+ ${PN}-plugin-sshkey \
+ ${PN}-plugin-updown \
+ ${PN}-plugin-vici \
+ ${PN}-plugin-x509 \
+ ${PN}-plugin-xauth-generic \
+ ${PN}-plugin-xcbc \
+ "
+
+RPROVIDES:${PN} += "${PN}-systemd"
+RREPLACES:${PN} += "${PN}-systemd"
+RCONFLICTS:${PN} += "${PN}-systemd"
+
+# The deprecated legacy 'strongswan-starter' service should only be used when charon and
+# stroke are enabled. When swanctl is in use, 'strongswan.service' is needed.
+# See: https://wiki.strongswan.org/projects/strongswan/wiki/Charon-systemd
+SYSTEMD_SERVICE:${PN} = " \
+ ${@bb.utils.contains('PACKAGECONFIG', 'swanctl', '${BPN}.service', '', d)} \
+ ${@bb.utils.contains('PACKAGECONFIG', 'charon', '${BPN}-starter.service', '', d)} \
+"
diff --git a/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch b/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
index 209b0dd409..82d3551019 100644
--- a/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
+++ b/meta-networking/recipes-support/stunnel/stunnel/fix-openssl-no-des.patch
@@ -1,3 +1,8 @@
+From 7ff4eba20b5c4fc7365e5ee0dfb775ed29bdd5ce Mon Sep 17 00:00:00 2001
+From: Kai Kang <kai.kang@windriver.com>
+Date: Wed, 1 Nov 2017 09:23:41 -0400
+Subject: [PATCH] stunnel: fix compile error when openssl disable des support
+
Upstream-Status: Pending
When openssl disable des support with configure option 'no-des', it doesn't
@@ -7,11 +12,15 @@ 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 f7d38b0..bf485af 100644
+index 2b4869f..180d31a 100644
--- a/src/common.h
+++ b/src/common.h
-@@ -471,7 +471,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) */
@@ -22,29 +31,29 @@ index f7d38b0..bf485af 100644
#include <openssl/dh.h>
#if OPENSSL_VERSION_NUMBER<0x10100000L
diff --git a/src/protocol.c b/src/protocol.c
-index 587df09..8198eb6 100644
+index cfe6d3b..3936aea 100644
--- a/src/protocol.c
+++ b/src/protocol.c
-@@ -66,7 +66,7 @@ NOEXPORT char *imap_server(CLI *, SERVICE_OPTIONS *, const PHASE);
- NOEXPORT char *nntp_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 char *ntlm1();
+ NOEXPORT void ntlm(CLI *);
+ NOEXPORT char *ntlm1(void);
NOEXPORT char *ntlm3(char *, char *, char *, char *);
-@@ -1175,7 +1175,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");
-@@ -1216,7 +1216,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
@@ -52,3 +61,6 @@ index 587df09..8198eb6 100644
/*
* NTLM code is based on the following documentation:
+--
+2.34.1
+
diff --git a/meta-networking/recipes-support/stunnel/stunnel_5.49.bb b/meta-networking/recipes-support/stunnel/stunnel_5.72.bb
index eca77cf849..6d21027a16 100644
--- a/meta-networking/recipes-support/stunnel/stunnel_5.49.bb
+++ b/meta-networking/recipes-support/stunnel/stunnel_5.72.bb
@@ -2,22 +2,18 @@ SUMMARY = "Program for providing universal TLS/SSL tunneling service"
DESCRIPTION = "SSL encryption wrapper between remote client and local (inetd-startable) or remote server."
HOMEPAGE = "https://www.stunnel.org/"
SECTION = "net"
-# Note: Linking stunnel statically or dynamically with other modules is making
-# a combined work based on stunnel. Thus, the terms and conditions of the GNU
-# General Public License cover the whole combination.
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f6b7fe7379c9c2d7db6c80f7bd41e06d"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING.md;md5=906ac034adaee9d093318e51b53453ca"
DEPENDS = "autoconf-archive libnsl2 openssl"
-SRC_URI = "ftp://ftp.stunnel.org/stunnel/archive/5.x/${BP}.tar.gz \
+SRC_URI = "https://stunnel.org/archive/5.x/${BP}.tar.gz \
file://fix-openssl-no-des.patch \
"
-SRC_URI[md5sum] = "0b41240e5585ec7d55ca343feed5530f"
-SRC_URI[sha256sum] = "3d6641213a82175c19f23fde1c3d1c841738385289eb7ca1554f4a58b96d955e"
+SRC_URI[sha256sum] = "3d532941281ae353319735144e4adb9ae489a10b7e309c58a48157f08f42e949"
-inherit autotools
+inherit autotools bash-completion pkgconfig
PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 systemd', d)} libwrap"
@@ -33,5 +29,5 @@ EXTRA_OEMAKE += "DEFAULT_GROUP='nogroup'"
# stunnel3 is a Perl wrapper to allow use of the legacy stunnel 3.x commandline
# syntax with stunnel >= 4.05
PACKAGES =+ "stunnel3"
-FILES_stunnel3 = "${bindir}/stunnel3"
-RDEPENDS_stunnel3 += "${PN} perl"
+FILES:stunnel3 = "${bindir}/stunnel3"
+RDEPENDS:stunnel3 += "${PN} perl"
diff --git a/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch b/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch
index b71435a043..c46de4b963 100644
--- a/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch
+++ b/meta-networking/recipes-support/tcpdump/tcpdump/add-ptest.patch
@@ -1,21 +1,28 @@
-From 8ee1ab1ac89557d48ac1ab7ddcc3c51be9b734ad Mon Sep 17 00:00:00 2001
-From: "Hongjun.Yang" <hongjun.yang@windriver.com>
-Date: Wed, 22 Oct 2014 10:02:48 +0800
+From 5f0f70192b0e20336e642b02ca9662ba2fef66cf Mon Sep 17 00:00:00 2001
+From: Yi Fan Yu <yifan.yu@windriver.com>
+Date: Fri, 19 Feb 2021 15:21:18 -0500
Subject: [PATCH] Add ptest for tcpdump
Upstream-Status: Pending
Signed-off-by: Hongjun.Yang <hongjun.yang@windriver.com>
+Signed-off-by: Peiran Hong <peiran.hong@windriver.com>
+remove perl script not required by ptest causing QA problems
+
+reference upstream issue/commit:
+https://github.com/the-tcpdump-group/tcpdump/issues/26
+
+Signed-off-by: Yi Fan Yu <yifan.yu@windriver.com>
---
- Makefile.in | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
+ Makefile.in | 11 ++++++++++-
+ 1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
-index 0941f0e..3ce40c6 100644
+index ea1ef1d0..e7987bd8 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -437,9 +437,17 @@ distclean:
+@@ -445,9 +445,18 @@ distclean:
tests/failure-outputs.txt
rm -rf autom4te.cache tests/DIFF tests/NEW
@@ -23,14 +30,18 @@ index 0941f0e..3ce40c6 100644
+buildtest-TESTS: tcpdump
+
+runtest-PTEST:
- (cd tests && ./TESTrun.sh)
+ $(srcdir)/tests/TESTrun
+install-ptest:
+ cp -r tests $(DESTDIR)
++ rm $(DESTDIR)/tests/setkey2esp-secrets.pl
+ cp -r config.h $(DESTDIR)
+ install -m 0755 Makefile $(DESTDIR)
-+ ln -sf /usr/sbin/tcpdump $(DESTDIR)/tcpdump
++ ln -s /usr/bin/tcpdump $(DESTDIR)/tcpdump
+
extags: $(TAGFILES)
ctags $(TAGFILES)
+--
+2.29.2
+
diff --git a/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest b/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest
index c03a8b8ef3..2bfb2267da 100755
--- a/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest
+++ b/meta-networking/recipes-support/tcpdump/tcpdump/run-ptest
@@ -1,5 +1,5 @@
#!/bin/sh
make -k runtest-PTEST | sed -e '/: passed/ s/^/PASS: /g' \
- -e '/: failed/ s/^/FAIL: /g' \
+ -e '/: TEST FAILED.*/ s/^/FAIL: /g' \
-e 's/: passed//g' \
- -e 's/: failed//g'
+ -e 's/: TEST FAILED.*//g'
diff --git a/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch b/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch
deleted file mode 100644
index 8cefadf284..0000000000
--- a/meta-networking/recipes-support/tcpdump/tcpdump/unnecessary-to-check-libpcap.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 741d77e42fc4af49804f7ee43b7237e01633cbcd Mon Sep 17 00:00:00 2001
-From: Roy Li <rongqing.li@windriver.com>
-Date: Tue, 8 Jul 2014 13:20:47 +0800
-Subject: [PATCH] unnecessary to check libpcap
-
-Upstream-Status: Pending
-
-since the check of libpcap did not consider the cross-compile, lead to the
-below error:
- This autoconf log indicates errors, it looked at host include and/or
- library paths while determining system capabilities.
-
-In fact, the libpcap has been added into the tcpdump's DEPENDS, not need to
-check if libpcap existed.
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-
----
- configure.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.in b/configure.in
-index b2305a5..b3b5dbf 100644
---- a/configure.in
-+++ b/configure.in
-@@ -418,7 +418,7 @@ dnl Some platforms may need -lnsl for getrpcbynumber.
- AC_SEARCH_LIBS(getrpcbynumber, nsl,
- AC_DEFINE(HAVE_GETRPCBYNUMBER, 1, [define if you have getrpcbynumber()]))
-
--AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS)
-+#AC_LBL_LIBPCAP(V_PCAPDEP, V_INCLS)
-
- #
- # Check for these after AC_LBL_LIBPCAP, so we link with the appropriate
diff --git a/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb b/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb
deleted file mode 100644
index d38540e34d..0000000000
--- a/meta-networking/recipes-support/tcpdump/tcpdump_4.9.2.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-SUMMARY = "A sophisticated network protocol analyzer"
-HOMEPAGE = "http://www.tcpdump.org/"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867"
-SECTION = "net"
-DEPENDS = "libpcap"
-
-SRC_URI = " \
- http://www.tcpdump.org/release/${BP}.tar.gz \
- file://unnecessary-to-check-libpcap.patch \
- file://add-ptest.patch \
- file://run-ptest \
-"
-
-SRC_URI[md5sum] = "9bbc1ee33dab61302411b02dd0515576"
-SRC_URI[sha256sum] = "798b3536a29832ce0cbb07fafb1ce5097c95e308a6f592d14052e1ef1505fe79"
-
-export LIBS=" -lpcap"
-
-inherit autotools-brokensep ptest
-CACHED_CONFIGUREVARS = "ac_cv_linux_vers=${ac_cv_linux_vers=2}"
-
-PACKAGECONFIG ??= "openssl"
-PACKAGECONFIG[openssl] = "--with-crypto=yes, --without-openssl --without-crypto, openssl"
-PACKAGECONFIG[smi] = "--with-smi, --without-smi,libsmi"
-PACKAGECONFIG[libcap-ng] = "--with-cap-ng=yes,--with-cap-ng=no,libcap-ng"
-
-EXTRA_AUTORECONF += " -I m4"
-
-do_configure_prepend() {
- mkdir -p ${S}/m4
- if [ -f aclocal.m4 ]; then
- mv aclocal.m4 ${S}/m4
- fi
- # AC_CHECK_LIB(dlpi.. was looking to host /lib
- sed -i 's:-L/lib::g' ./configure.in
-}
-do_configure_append() {
- sed -i 's:-L/usr/lib::' ./Makefile
- sed -i 's:-Wl,-rpath,${STAGING_LIBDIR}::' ./Makefile
- sed -i 's:-I/usr/include::' ./Makefile
-}
-
-do_install_append() {
- # tcpdump 4.0.0 installs a copy to /usr/sbin/tcpdump.4.0.0
- rm -f ${D}${sbindir}/tcpdump.${PV}
-}
-
-do_compile_ptest() {
- oe_runmake buildtest-TESTS
-}
diff --git a/meta-networking/recipes-support/tcpdump/tcpdump_4.99.4.bb b/meta-networking/recipes-support/tcpdump/tcpdump_4.99.4.bb
new file mode 100644
index 0000000000..803a9bb5f5
--- /dev/null
+++ b/meta-networking/recipes-support/tcpdump/tcpdump_4.99.4.bb
@@ -0,0 +1,52 @@
+SUMMARY = "A sophisticated network protocol analyzer"
+HOMEPAGE = "http://www.tcpdump.org/"
+SECTION = "net"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5eb289217c160e2920d2e35bddc36453"
+
+DEPENDS = "libpcap"
+
+RDEPENDS:${PN}-ptest += " make perl \
+ perl-module-file-basename \
+ perl-module-file-spec \
+ perl-module-file-spec-unix \
+ perl-module-file-path \
+ perl-module-file-glob \
+ perl-module-data-dumper \
+ perl-module-bytes \
+ perl-module-posix \
+ perl-module-carp \
+ perl-module-cwd \
+ perl-module-constant \
+"
+
+SRC_URI = " \
+ http://www.tcpdump.org/release/${BP}.tar.gz \
+ file://add-ptest.patch \
+ file://run-ptest \
+"
+
+SRC_URI[sha256sum] = "0232231bb2f29d6bf2426e70a08a7e0c63a0d59a9b44863b7f5e2357a6e49fea"
+
+UPSTREAM_CHECK_REGEX = "tcpdump-(?P<pver>\d+(\.\d+)+)\.tar"
+
+inherit autotools-brokensep pkgconfig ptest
+
+PACKAGECONFIG ?= "openssl"
+
+PACKAGECONFIG[libcap-ng] = "--with-cap-ng,--without-cap-ng,libcap-ng"
+PACKAGECONFIG[openssl] = "--with-crypto,--without-crypto,openssl"
+PACKAGECONFIG[smi] = "--with-smi,--without-smi,libsmi"
+# Note: CVE-2018-10103 (SMB - partially fixed, but SMB printing disabled)
+PACKAGECONFIG[smb] = "--enable-smb,--disable-smb"
+
+EXTRA_AUTORECONF += "--exclude=aclocal"
+
+do_install:append() {
+ # make install installs an unneeded extra copy of the tcpdump binary
+ rm ${D}${bindir}/tcpdump.${PV}
+}
+
+do_compile_ptest() {
+ oe_runmake buildtest-TESTS
+}
diff --git a/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-1.2a3-time.patch b/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-1.2a3-time.patch
deleted file mode 100644
index 386b7f83ac..0000000000
--- a/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-1.2a3-time.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-Upstream-Status: Pending [from tcpdump-4.1.1-1.fc14.src.rpm]
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-
---- tcpslice-1.2a3.orig/search.c 2000-09-10 10:52:40.000000000 +0200
-+++ tcpslice-1.2a3/search.c 2006-07-28 14:56:55.000000000 +0200
-@@ -53,7 +53,7 @@
- /* Size of a packet header in bytes; easier than typing the sizeof() all
- * the time ...
- */
--#define PACKET_HDR_LEN (sizeof( struct pcap_pkthdr ))
-+#define PACKET_HDR_LEN (sizeof( struct pcap_sf_pkthdr ))
-
- extern int snaplen;
-
-@@ -111,16 +111,24 @@
- static void
- extract_header( pcap_t *p, u_char *buf, struct pcap_pkthdr *hdr )
- {
-- memcpy((char *) hdr, (char *) buf, sizeof(struct pcap_pkthdr));
-+ struct pcap_sf_pkthdr hdri;
-+
-+ memcpy((char *) &hdri, (char *) buf, sizeof(struct pcap_sf_pkthdr));
-
- if ( pcap_is_swapped( p ) )
- {
-- hdr->ts.tv_sec = SWAPLONG(hdr->ts.tv_sec);
-- hdr->ts.tv_usec = SWAPLONG(hdr->ts.tv_usec);
-- hdr->len = SWAPLONG(hdr->len);
-- hdr->caplen = SWAPLONG(hdr->caplen);
-+ hdr->ts.tv_sec = SWAPLONG(hdri.ts.tv_sec);
-+ hdr->ts.tv_usec = SWAPLONG(hdri.ts.tv_usec);
-+ hdr->len = SWAPLONG(hdri.len);
-+ hdr->caplen = SWAPLONG(hdri.caplen);
-+ }
-+ else
-+ {
-+ hdr->ts.tv_sec = hdri.ts.tv_sec;
-+ hdr->ts.tv_usec = hdri.ts.tv_usec;
-+ hdr->len = hdri.len;
-+ hdr->caplen = hdri.caplen;
- }
--
- /*
- * From bpf/libpcap/savefile.c:
- *
---- tcpslice-1.2a3.orig/tcpslice.h 1995-11-02 00:40:53.000000000 +0100
-+++ tcpslice-1.2a3/tcpslice.h 2006-07-28 14:56:55.000000000 +0200
-@@ -20,6 +20,26 @@
- */
-
-
-+#include <time.h>
-+/* #include <net/bpf.h> */
-+
-+/*
-+ * This is a timeval as stored in disk in a dumpfile.
-+ * It has to use the same types everywhere, independent of the actual
-+ * `struct timeval'
-+ */
-+
-+struct pcap_timeval {
-+ bpf_int32 tv_sec; /* seconds */
-+ bpf_int32 tv_usec; /* microseconds */
-+};
-+
-+struct pcap_sf_pkthdr {
-+ struct pcap_timeval ts; /* time stamp */
-+ bpf_u_int32 caplen; /* length of portion present */
-+ bpf_u_int32 len; /* length this packet (off wire) */
-+};
-+
- time_t gwtm2secs( struct tm *tm );
-
- int sf_find_end( struct pcap *p, struct timeval *first_timestamp,
diff --git a/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-CVS.20010207-bpf.patch b/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-CVS.20010207-bpf.patch
deleted file mode 100644
index 0a7359311d..0000000000
--- a/meta-networking/recipes-support/tcpdump/tcpslice/tcpslice-CVS.20010207-bpf.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Pending [from tcpdump-4.1.1-1.fc14.src.rpm]
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
-diff -ur tcpdump-3.8.1/tcpslice/tcpslice.c tcpdump-3.8.1.new/tcpslice/tcpslice.c
---- tcpslice/tcpslice.c 2004-01-15 17:35:53.000000000 +0100
-+++ tcpslice/tcpslice.c 2004-01-15 16:12:57.000000000 +0100
-@@ -35,7 +35,7 @@
- #include <sys/file.h>
- #include <sys/stat.h>
-
--#include <net/bpf.h>
-+/* #include <net/bpf.h> */
-
- #include <ctype.h>
- #ifdef HAVE_FCNTL_H
diff --git a/meta-networking/recipes-support/tcpdump/tcpslice_1.2a3.bb b/meta-networking/recipes-support/tcpdump/tcpslice_1.2a3.bb
deleted file mode 100644
index e65739a5c7..0000000000
--- a/meta-networking/recipes-support/tcpdump/tcpslice_1.2a3.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-SUMMARY = "tcpslice"
-DESCRIPTION = "A tool for extracting parts of a tcpdump packet trace."
-HOMEPAGE = "http://www.tcpdump.org/related.html"
-SECTION = "net"
-
-LICENSE = "BSD-4-Clause"
-LIC_FILES_CHKSUM = "file://tcpslice.c;endline=20;md5=99519e2e5234d1662a4ce16baa62c64e"
-
-SRC_URI = "ftp://ftp.ee.lbl.gov/${BP}.tar.gz \
- file://tcpslice-1.2a3-time.patch \
- file://tcpslice-CVS.20010207-bpf.patch \
- "
-SRC_URI[md5sum] = "e329cbeb7e589f132d92c3447c477190"
-SRC_URI[sha256sum] = "4096e8debc898cfaa16b5306f1c42f8d18b19e30e60da8d4deb781c8f684c840"
-
-inherit autotools-brokensep
-
-DEPENDS += "libpcap"
-
-# We do not want to autoreconf. We must specify srcdir as ".".
-# We have to set the ac_cv_* cache variables as well as pass the normal
-# cross-compilation options to configure!
-#
-do_configure () {
- oe_runconf \
- --srcdir="." \
- ac_cv_build=${BUILD_SYS} \
- ac_cv_host=${HOST_SYS} \
- ac_cv_target=${HOST_SYS}
-}
-
-do_install () {
- mkdir -p ${D}/usr/sbin
- install -c -m 555 tcpslice ${D}/usr/sbin
-}
-
diff --git a/meta-networking/recipes-support/tcpdump/tcpslice_1.7.bb b/meta-networking/recipes-support/tcpdump/tcpslice_1.7.bb
new file mode 100644
index 0000000000..93197dc3bc
--- /dev/null
+++ b/meta-networking/recipes-support/tcpdump/tcpslice_1.7.bb
@@ -0,0 +1,24 @@
+SUMMARY = "tcpslice"
+DESCRIPTION = "A tool for extracting parts of a tcpdump packet trace."
+HOMEPAGE = "http://www.tcpdump.org/related.html"
+SECTION = "net"
+
+LICENSE = "BSD-4-Clause"
+LIC_FILES_CHKSUM = "file://tcpslice.c;endline=20;md5=99519e2e5234d1662a4ce16baa62c64e"
+
+SRC_URI = "http://www.tcpdump.org/release/${BP}.tar.gz \
+ "
+SRC_URI[sha256sum] = "e513f0710c4ab45ec627e5df6f7b80d12e488146e1bd500c92247e20ca608903"
+
+UPSTREAM_CHECK_REGEX = "tcpslice-(?P<pver>\d+(\.\d+)+)\.tar"
+
+inherit autotools-brokensep pkgconfig
+
+DEPENDS = "libpcap"
+
+EXTRA_AUTORECONF += "--exclude=aclocal"
+
+do_install () {
+ install -d ${D}${sbindir}
+ install -m 0755 tcpslice ${D}${sbindir}
+}
diff --git a/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch b/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-do-not-run-conftest-in-case-of-cross-co.patch
new file mode 100644
index 0000000000..08cb3b88fa
--- /dev/null
+++ b/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-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-unify-search-dirs-for-pcap-and-add-lib3.patch b/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-unify-search-dirs-for-pcap-and-add-lib3.patch
new file mode 100644
index 0000000000..709d2cccbc
--- /dev/null
+++ b/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-configure.ac-unify-search-dirs-for-pcap-and-add-lib3.patch
@@ -0,0 +1,82 @@
+From 5f8c78362b3b1e06f5adff2d4b140509c4799894 Mon Sep 17 00:00:00 2001
+From: Martin Jansa <Martin.Jansa@gmail.com>
+Date: Sun, 3 Sep 2023 12:31:59 +0200
+Subject: [PATCH] configure.ac: unify search dirs for pcap and add lib32
+
+* add lib32 because when building lib32-tcpreplay it's
+ impossible to set --with-libpcap so that it would find
+ both include files as well as the library in lib32 directory
+
+* maybe it would be beneficial to split --with-libpcap
+ into --with-libpcap-includedir --with-libpcap-libdir as this
+ already searches in the --with-libpcap value with and
+ without any "lib" prefix, but include files always expect
+ "include" dir there
+
+* most of this code was added in:
+ https://github.com/appneta/tcpreplay/commit/202b8e82f9fd3c84ce5804577caeb36a33baabe7#diff-49473dca262eeab3b4a43002adb08b4db31020d190caaad1594b47f1d5daa810R570
+
+* then search for
+ ${host_cpu} lib/${host_cpu} (without -${host_os} suffix)
+ and ${build_arch}-${host_os} lib/${build_arch}-${host_os}
+ was added, but only for search of dynamic library in:
+ https://github.com/appneta/tcpreplay/commit/c3d5236563985a99f8bb02c3f1bd6950e3929047
+
+* ${build_arch}-${host_os} lib/${build_arch}-${host_os}
+ was later replaced with:
+ lib/${MULTIARCH} ${MULTIARCH}
+ and it was added to static library search as well
+
+ but for dynamic library it was searching in reversed order:
+ ${MULTIARCH} lib/${MULTIARCH}
+ https://github.com/appneta/tcpreplay/commit/ed9e3a818bde04813144014561e62f018c9eb85f
+
+ I don't think this reversed order was intentional, just unify all 4 cases
+ to use the same directories in the same order
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+Upstream-Status: Submitted [https://github.com/appneta/tcpreplay/pull/819]
+---
+ configure.ac | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 387219de..26ba31a5 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -671,7 +671,7 @@ AC_ARG_WITH(libpcap,
+ LPCAPINCDIR=${testdir}
+ if test $dynamic_link = yes; then
+ for ext in .dylib .so .tbd ; do
+- for dir in . lib lib64 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
++ for dir in . lib lib64 lib32 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
+ sharefile=$(ls ${testdir}/$dir/libpcap${ext}* 2> /dev/null | sort | head -n1)
+ if test -n "${sharefile}"; then
+ LPCAP_LD_LIBRARY_PATH="$(dirname ${sharefile})"
+@@ -690,7 +690,7 @@ AC_ARG_WITH(libpcap,
+ dnl If dynamic library not found, try static
+ dnl
+ for ext in ${libext} .a .A.tbd ; do
+- for dir in . lib lib64 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
++ for dir in . lib lib64 lib32 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
+ staticfile=$(ls ${testdir}/$dir/libpcap${ext} 2> /dev/null | sort | head -n1)
+ if test -n "${staticfile}"; then
+ LPCAPLIB="${staticfile}"
+@@ -771,7 +771,7 @@ AC_ARG_WITH(libpcap,
+ LPCAPINCDIR="${testdir}/include"
+ if test $dynamic_link = yes; then
+ for ext in .dylib .so .tbd; do
+- for dir in . lib lib64 ${host_cpu} lib/${host_cpu} ${host_cpu}-${host_os} lib/${host_cpu}-${host_os} ${MULTIARCH} lib/${MULTIARCH}; do
++ for dir in . lib lib64 lib32 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
+ sharefile=$(ls "${testdir}/$dir/libpcap${ext}" 2> /dev/null | sort | head -n1)
+ if test -n "${sharefile}"; then
+ LPCAPLIB="-L$(dirname ${sharefile}) -lpcap"
+@@ -790,7 +790,7 @@ AC_ARG_WITH(libpcap,
+ dnl If dynamic library not found, try static
+ dnl
+ for ext in ${libext} .a .A.tbd ; do
+- for dir in . lib lib64 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
++ for dir in . lib lib64 lib32 lib/${host_cpu}-${host_os} ${host_cpu}-${host_os} lib/${MULTIARCH} ${MULTIARCH}; do
+ staticfile=$(ls "${testdir}/$dir/libpcap${ext}" 2> /dev/null | sort | head -n1)
+ if test -n "${staticfile}"; then
+ LPCAPLIB="${staticfile}"
diff --git a/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-libopts.m4-set-POSIX_SHELL-to-bin-sh.patch b/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-libopts.m4-set-POSIX_SHELL-to-bin-sh.patch
new file mode 100644
index 0000000000..448455fffb
--- /dev/null
+++ b/meta-networking/recipes-support/tcpreplay/tcpreplay/0001-libopts.m4-set-POSIX_SHELL-to-bin-sh.patch
@@ -0,0 +1,45 @@
+From 769e96b60f631e8c208fd7f72900d0bb17760f88 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Tue, 30 Aug 2022 09:54:11 +0800
+Subject: [PATCH] libopts.m4: set POSIX_SHELL to /bin/sh
+
+POSIX_SHELL is specified a host tool path as it searches path on build
+host using `which` when configure. Set it to a fixed path '/bin/sh'.
+
+Upstream-Status: Inappropriate [embedded specific]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ m4/libopts.m4 | 16 +---------------
+ 1 file changed, 1 insertion(+), 15 deletions(-)
+
+diff --git a/m4/libopts.m4 b/m4/libopts.m4
+index cfbd477..c8047eb 100644
+--- a/m4/libopts.m4
++++ b/m4/libopts.m4
+@@ -111,21 +111,7 @@ AC_DEFUN([INVOKE_LIBOPTS_MACROS_FIRST],[
+ AC_CHECK_FUNCS([mmap canonicalize_file_name snprintf strdup strchr \
+ strrchr strsignal fchmod fstat chmod])
+ AC_PROG_SED
+- [while :
+- do
+- POSIX_SHELL=`which bash`
+- test -x "$POSIX_SHELL" && break
+- POSIX_SHELL=`which dash`
+- test -x "$POSIX_SHELL" && break
+- POSIX_SHELL=/usr/xpg4/bin/sh
+- test -x "$POSIX_SHELL" && break
+- POSIX_SHELL=`/bin/sh -c '
+- exec 2>/dev/null
+- if ! true ; then exit 1 ; fi
+- echo /bin/sh'`
+- test -x "$POSIX_SHELL" && break
+- ]AC_MSG_ERROR([cannot locate a working POSIX shell])[
+- done]
++ POSIX_SHELL='/bin/sh'
+ AC_DEFINE_UNQUOTED([POSIX_SHELL], ["${POSIX_SHELL}"],
+ [define to a working POSIX compliant shell])
+ AC_SUBST([POSIX_SHELL])
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb b/meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb
deleted file mode 100644
index 681ef02bb4..0000000000
--- a/meta-networking/recipes-support/tcpreplay/tcpreplay_4.2.6.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Use previously captured traffic to test network devices"
-
-HOMEPAGE = "http://tcpreplay.synfin.net/"
-SECTION = "net"
-
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://docs/LICENSE;md5=890b830b22fd632e9ffd996df20338f8"
-
-SRC_URI = "https://github.com/appneta/tcpreplay/releases/download/v${PV}/tcpreplay-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "3e65d5b872e441c6a0038191a3dc7ce9"
-SRC_URI[sha256sum] = "043756c532dab93e2be33a517ef46b1341f7239278a1045ae670041dd8a4531d"
-
-DEPENDS = "libpcap"
-
-EXTRA_OECONF += "--with-libpcap=${STAGING_DIR_HOST}/usr"
-
-inherit siteinfo autotools-brokensep
-
diff --git a/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb b/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb
new file mode 100644
index 0000000000..26de40a65a
--- /dev/null
+++ b/meta-networking/recipes-support/tcpreplay/tcpreplay_4.4.4.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Use previously captured traffic to test network devices"
+
+HOMEPAGE = "https://tcpreplay.appneta.com/"
+
+SECTION = "net"
+
+LICENSE = "GPL-3.0-only"
+LIC_FILES_CHKSUM = "file://docs/LICENSE;md5=10f0474a2f0e5dccfca20f69d6598ad8"
+
+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"
+
+UPSTREAM_CHECK_URI = "https://github.com/appneta/tcpreplay/releases"
+
+DEPENDS = "libpcap"
+
+EXTRA_OECONF += "--with-libpcap=${STAGING_DIR_HOST}${prefix}"
+
+inherit siteinfo autotools-brokensep
+
+do_install:append() {
+ sed -i -e 's:${RECIPE_SYSROOT}::g' ${S}/src/defines.h
+}
diff --git a/meta-networking/recipes-support/tinyproxy/tinyproxy/CVE-2022-40468.patch b/meta-networking/recipes-support/tinyproxy/tinyproxy/CVE-2022-40468.patch
new file mode 100644
index 0000000000..4e2157ca75
--- /dev/null
+++ b/meta-networking/recipes-support/tinyproxy/tinyproxy/CVE-2022-40468.patch
@@ -0,0 +1,33 @@
+From 3764b8551463b900b5b4e3ec0cd9bb9182191cb7 Mon Sep 17 00:00:00 2001
+From: rofl0r <rofl0r@users.noreply.github.com>
+Date: Thu, 8 Sep 2022 15:18:04 +0000
+Subject: [PATCH] prevent junk from showing up in error page in invalid
+ requests
+
+fixes #457
+
+https://github.com/tinyproxy/tinyproxy/commit/3764b8551463b900b5b4e3ec0cd9bb9182191cb7
+Upstream-Status: Backport
+CVE: CVE-2022-40468
+Signed-off-by: Chee Yang Lee <chee.yang.lee@intel.com>
+---
+ src/reqs.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/reqs.c b/src/reqs.c
+index bce69819..45db118d 100644
+--- a/src/reqs.c
++++ b/src/reqs.c
+@@ -343,8 +343,12 @@ static struct request_s *process_request (struct conn_s *connptr,
+ goto fail;
+ }
+
++ /* zero-terminate the strings so they don't contain junk in error page */
++ request->method[0] = url[0] = request->protocol[0] = 0;
++
+ ret = sscanf (connptr->request_line, "%[^ ] %[^ ] %[^ ]",
+ request->method, url, request->protocol);
++
+ if (ret == 2 && !strcasecmp (request->method, "GET")) {
+ request->protocol[0] = 0;
+
diff --git a/meta-networking/recipes-support/tinyproxy/tinyproxy/disable-documentation.patch b/meta-networking/recipes-support/tinyproxy/tinyproxy/disable-documentation.patch
index 91508d721f..faefd1d4ea 100644
--- a/meta-networking/recipes-support/tinyproxy/tinyproxy/disable-documentation.patch
+++ b/meta-networking/recipes-support/tinyproxy/tinyproxy/disable-documentation.patch
@@ -1,14 +1,16 @@
-From b71eb384522b5ce4629dee6e8be257fb4880fef3 Mon Sep 17 00:00:00 2001
-From: Benjamin Gaignard <benjamin.gaignard@linaro.org>
+From b71eb384522b5ce4629dee6e8be257fb4880fef3 Mon Sep 17 00:00:00 2001
+From: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Date: Thu, 20 Apr 2017 14:25:18 +0200
---
- Makefile.am | 1 -
- configure.ac | 9 ---------
- 2 files changed, 10 deletions(-)
+Upstream-Status: Pending
+
+ Makefile.am | 1 -
+ configure.ac | 17 -----------------
+ 2 files changed, 18 deletions(-)
diff --git a/Makefile.am b/Makefile.am
-index e9113c2..2fe3d54 100644
+index 4a3ead6..a12cb98 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,7 +2,6 @@ SUBDIRS = \
@@ -17,24 +19,32 @@ index e9113c2..2fe3d54 100644
etc \
- docs \
m4macros \
- tests
-
+ tests \
+ scripts
diff --git a/configure.ac b/configure.ac
-index 48ee0b2..a1a5fa1 100644
+index 3849383..9f3a633 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -194,10 +194,6 @@ AC_SUBST(ADDITIONAL_OBJECTS)
- AC_PATH_PROG(XSLTPROC, xsltproc, no)
- AM_CONDITIONAL(HAVE_XSLTPROC, test "x$XSLTPROC" != "xno")
+@@ -179,18 +179,6 @@ AC_SUBST(CPPFLAGS)
+ AC_SUBST(LIBS)
+ AC_SUBST(ADDITIONAL_OBJECTS)
--# Check for asciidoc
--AC_PATH_PROG(A2X, a2x, no)
--AM_CONDITIONAL(HAVE_A2X, test "x$A2X" != "xno")
+-if test x"$manpage_support_enabled" = x"yes"; then
+-AC_PATH_PROG(POD2MAN, pod2man, no)
+-
+-if test "x$POD2MAN" = "xno" && \
+- ! test -e docs/man5/tinyproxy.conf.5 -a -e docs/man8/tinyproxy.8 ; then
+-AC_MSG_ERROR([
+- manpage generation requested, but neither pod2man
+- nor pre-generated manpages found.
+- Use --disable-manpage-support if you want to compile anyway.])
+-fi
+-fi #manpage_support_enabled
-
- # checking xmllint
- AC_PATH_PROG(XMLLINT, xmllint, no)
- if test "x$XMLLINT" != "xno"; then
-@@ -219,11 +215,6 @@ src/Makefile
+ AM_CONDITIONAL(HAVE_POD2MAN, test "x$POD2MAN" != "x" -a "x$POD2MAN" != "xno")
+
+ AC_PATH_PROG(GPERF, gperf, no)
+@@ -216,11 +204,6 @@ src/Makefile
data/Makefile
data/templates/Makefile
etc/Makefile
@@ -46,3 +56,6 @@ index 48ee0b2..a1a5fa1 100644
m4macros/Makefile
tests/Makefile
tests/scripts/Makefile
+--
+2.25.1
+
diff --git a/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf b/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf
new file mode 100644
index 0000000000..4ca18efa56
--- /dev/null
+++ b/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.conf
@@ -0,0 +1,330 @@
+##
+## tinyproxy.conf -- tinyproxy daemon configuration file
+##
+## This example tinyproxy.conf file contains example settings
+## with explanations in comments. For decriptions of all
+## parameters, see the tinproxy.conf(5) manual page.
+##
+
+#
+# User/Group: This allows you to set the user and group that will be
+# used for tinyproxy after the initial binding to the port has been done
+# as the root user. Either the user or group name or the UID or GID
+# number may be used.
+#
+User tinyproxy
+Group nogroup
+
+#
+# Port: Specify the port which tinyproxy will listen on. Please note
+# that should you choose to run on a port lower than 1024 you will need
+# to start tinyproxy using root.
+#
+Port 8888
+
+#
+# Listen: If you have multiple interfaces this allows you to bind to
+# only one. If this is commented out, tinyproxy will bind to all
+# interfaces present.
+#
+#Listen 192.168.0.1
+
+#
+# Bind: This allows you to specify which interface will be used for
+# outgoing connections. This is useful for multi-home'd machines where
+# you want all traffic to appear outgoing from one particular interface.
+#
+#Bind 192.168.0.1
+
+#
+# BindSame: If enabled, tinyproxy will bind the outgoing connection to the
+# ip address of the incoming connection.
+#
+#BindSame yes
+
+#
+# Timeout: The maximum number of seconds of inactivity a connection is
+# allowed to have before it is closed by tinyproxy.
+#
+Timeout 600
+
+#
+# ErrorFile: Defines the HTML file to send when a given HTTP error
+# occurs. You will probably need to customize the location to your
+# particular install. The usual locations to check are:
+# /usr/local/share/tinyproxy
+# /usr/share/tinyproxy
+# /etc/tinyproxy
+#
+#ErrorFile 404 "/usr/share/tinyproxy/404.html"
+#ErrorFile 400 "/usr/share/tinyproxy/400.html"
+#ErrorFile 503 "/usr/share/tinyproxy/503.html"
+#ErrorFile 403 "/usr/share/tinyproxy/403.html"
+#ErrorFile 408 "/usr/share/tinyproxy/408.html"
+
+#
+# DefaultErrorFile: The HTML file that gets sent if there is no
+# HTML file defined with an ErrorFile keyword for the HTTP error
+# that has occured.
+#
+DefaultErrorFile "/usr/share/tinyproxy/default.html"
+
+#
+# StatHost: This configures the host name or IP address that is treated
+# as the stat host: Whenever a request for this host is received,
+# Tinyproxy will return an internal statistics page instead of
+# forwarding the request to that host. The default value of StatHost is
+# tinyproxy.stats.
+#
+#StatHost "tinyproxy.stats"
+#
+
+#
+# StatFile: The HTML file that gets sent when a request is made
+# for the stathost. If this file doesn't exist a basic page is
+# hardcoded in tinyproxy.
+#
+StatFile "/usr/share/tinyproxy/stats.html"
+
+#
+# LogFile: Allows you to specify the location where information should
+# be logged to. If you would prefer to log to syslog, then disable this
+# and enable the Syslog directive. These directives are mutually
+# exclusive.
+#
+#LogFile "/var/log/tinyproxy/tinyproxy.log"
+
+#
+# Syslog: Tell tinyproxy to use syslog instead of a logfile. This
+# option must not be enabled if the Logfile directive is being used.
+# These two directives are mutually exclusive.
+#
+#Syslog On
+
+#
+# LogLevel:
+#
+# Set the logging level. Allowed settings are:
+# Critical (least verbose)
+# Error
+# Warning
+# Notice
+# Connect (to log connections without Info's noise)
+# Info (most verbose)
+#
+# The LogLevel logs from the set level and above. For example, if the
+# LogLevel was set to Warning, then all log messages from Warning to
+# Critical would be output, but Notice and below would be suppressed.
+#
+LogLevel Info
+
+#
+# PidFile: Write the PID of the main tinyproxy thread to this file so it
+# can be used for signalling purposes.
+#
+PidFile "/var/run/tinyproxy/tinyproxy.pid"
+
+#
+# XTinyproxy: Tell Tinyproxy to include the X-Tinyproxy header, which
+# contains the client's IP address.
+#
+#XTinyproxy Yes
+
+#
+# Upstream:
+#
+# Turns on upstream proxy support.
+#
+# The upstream rules allow you to selectively route upstream connections
+# based on the host/domain of the site being accessed.
+#
+# For example:
+# # connection to test domain goes through testproxy
+# upstream testproxy:8008 ".test.domain.invalid"
+# upstream testproxy:8008 ".our_testbed.example.com"
+# upstream testproxy:8008 "192.168.128.0/255.255.254.0"
+#
+# # no upstream proxy for internal websites and unqualified hosts
+# no upstream ".internal.example.com"
+# no upstream "www.example.com"
+# no upstream "10.0.0.0/8"
+# no upstream "192.168.0.0/255.255.254.0"
+# no upstream "."
+#
+# # connection to these boxes go through their DMZ firewalls
+# upstream cust1_firewall:8008 "testbed_for_cust1"
+# upstream cust2_firewall:8008 "testbed_for_cust2"
+#
+# # default upstream is internet firewall
+# upstream firewall.internal.example.com:80
+#
+# The LAST matching rule wins the route decision. As you can see, you
+# can use a host, or a domain:
+# name matches host exactly
+# .name matches any host in domain "name"
+# . matches any host with no domain (in 'empty' domain)
+# IP/bits matches network/mask
+# IP/mask matches network/mask
+#
+#Upstream some.remote.proxy:port
+
+#
+# MaxClients: This is the absolute highest number of threads which will
+# be created. In other words, only MaxClients number of clients can be
+# connected at the same time.
+#
+MaxClients 100
+
+#
+# MinSpareServers/MaxSpareServers: These settings set the upper and
+# lower limit for the number of spare servers which should be available.
+#
+# If the number of spare servers falls below MinSpareServers then new
+# server processes will be spawned. If the number of servers exceeds
+# MaxSpareServers then the extras will be killed off.
+#
+MinSpareServers 5
+MaxSpareServers 20
+
+#
+# StartServers: The number of servers to start initially.
+#
+StartServers 10
+
+#
+# MaxRequestsPerChild: The number of connections a thread will handle
+# before it is killed. In practise this should be set to 0, which
+# disables thread reaping. If you do notice problems with memory
+# leakage, then set this to something like 10000.
+#
+MaxRequestsPerChild 0
+
+#
+# Allow: Customization of authorization controls. If there are any
+# access control keywords then the default action is to DENY. Otherwise,
+# the default action is ALLOW.
+#
+# The order of the controls are important. All incoming connections are
+# tested against the controls based on order.
+#
+Allow 127.0.0.1
+
+#
+# AddHeader: Adds the specified headers to outgoing HTTP requests that
+# Tinyproxy makes. Note that this option will not work for HTTPS
+# traffic, as Tinyproxy has no control over what headers are exchanged.
+#
+#AddHeader "X-My-Header" "Powered by Tinyproxy"
+
+#
+# ViaProxyName: The "Via" header is required by the HTTP RFC, but using
+# the real host name is a security concern. If the following directive
+# is enabled, the string supplied will be used as the host name in the
+# Via header; otherwise, the server's host name will be used.
+#
+ViaProxyName "tinyproxy"
+
+#
+# DisableViaHeader: When this is set to yes, Tinyproxy does NOT add
+# the Via header to the requests. This virtually puts Tinyproxy into
+# stealth mode. Note that RFC 2616 requires proxies to set the Via
+# header, so by enabling this option, you break compliance.
+# Don't disable the Via header unless you know what you are doing...
+#
+#DisableViaHeader Yes
+
+#
+# Filter: This allows you to specify the location of the filter file.
+#
+#Filter "/etc/filter"
+
+#
+# FilterURLs: Filter based on URLs rather than domains.
+#
+#FilterURLs On
+
+#
+# FilterExtended: Use POSIX Extended regular expressions rather than
+# basic.
+#
+#FilterExtended On
+
+#
+# FilterCaseSensitive: Use case sensitive regular expressions.
+#
+#FilterCaseSensitive On
+
+#
+# FilterDefaultDeny: Change the default policy of the filtering system.
+# If this directive is commented out, or is set to "No" then the default
+# policy is to allow everything which is not specifically denied by the
+# filter file.
+#
+# However, by setting this directive to "Yes" the default policy becomes
+# to deny everything which is _not_ specifically allowed by the filter
+# file.
+#
+#FilterDefaultDeny Yes
+
+#
+# Anonymous: If an Anonymous keyword is present, then anonymous proxying
+# is enabled. The headers listed are allowed through, while all others
+# are denied. If no Anonymous keyword is present, then all headers are
+# allowed through. You must include quotes around the headers.
+#
+# Most sites require cookies to be enabled for them to work correctly, so
+# you will need to allow Cookies through if you access those sites.
+#
+#Anonymous "Host"
+#Anonymous "Authorization"
+#Anonymous "Cookie"
+
+#
+# ConnectPort: This is a list of ports allowed by tinyproxy when the
+# CONNECT method is used. To disable the CONNECT method altogether, set
+# the value to 0. If no ConnectPort line is found, all ports are
+# allowed (which is not very secure.)
+#
+# The following two ports are used by SSL.
+#
+ConnectPort 443
+ConnectPort 563
+
+#
+# Configure one or more ReversePath directives to enable reverse proxy
+# support. With reverse proxying it's possible to make a number of
+# sites appear as if they were part of a single site.
+#
+# If you uncomment the following two directives and run tinyproxy
+# on your own computer at port 8888, you can access Google using
+# http://localhost:8888/google/ and Wired News using
+# http://localhost:8888/wired/news/. Neither will actually work
+# until you uncomment ReverseMagic as they use absolute linking.
+#
+#ReversePath "/google/" "http://www.google.com/"
+#ReversePath "/wired/" "http://www.wired.com/"
+
+#
+# When using tinyproxy as a reverse proxy, it is STRONGLY recommended
+# that the normal proxy is turned off by uncommenting the next directive.
+#
+#ReverseOnly Yes
+
+#
+# Use a cookie to track reverse proxy mappings. If you need to reverse
+# proxy sites which have absolute links you must uncomment this.
+#
+#ReverseMagic Yes
+
+#
+# The URL that's used to access this reverse proxy. The URL is used to
+# rewrite HTTP redirects so that they won't escape the proxy. If you
+# have a chain of reverse proxies, you'll need to put the outermost
+# URL here (the address which the end user types into his/her browser).
+#
+# If not set then no rewriting occurs.
+#
+#ReverseBaseURL "http://localhost:8888/"
+
+
+
diff --git a/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service b/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service
index df42745731..78df437f68 100644
--- a/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service
+++ b/meta-networking/recipes-support/tinyproxy/tinyproxy/tinyproxy.service
@@ -3,12 +3,12 @@ Description=Tinyproxy, Lightweight http(s) proxy daemon
RequiresMountsFor=/var
[Service]
-Group=tinyproxy
ExecStartPre=/bin/mkdir -p /var/log/tinyproxy
-ExecStartPre=/bin/chown -R nobody.tinyproxy /var/log/tinyproxy
+ExecStartPre=/bin/chown -R tinyproxy.nogroup /var/log/tinyproxy
ExecStartPre=/bin/mkdir -p /var/run/tinyproxy
-ExecStartPre=/bin/chown -R nobody.tinyproxy /var/run/tinyproxy
+ExecStartPre=/bin/chown -R tinyproxy.nogroup /var/run/tinyproxy
ExecStart=/usr/bin/tinyproxy -d
+PIDFile=/var/run/tinyproxy/tinyproxy.pid
[Install]
WantedBy=multi-user.target
diff --git a/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb b/meta-networking/recipes-support/tinyproxy/tinyproxy_1.11.1.bb
index 144dcf33ac..999deff4de 100644
--- a/meta-networking/recipes-support/tinyproxy/tinyproxy_1.10.0.bb
+++ b/meta-networking/recipes-support/tinyproxy/tinyproxy_1.11.1.bb
@@ -1,14 +1,18 @@
SUMMARY = "Lightweight http(s) proxy daemon"
HOMEPAGE = "https://tinyproxy.github.io/"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.gz \
- file://disable-documentation.patch \
- file://tinyproxy.service"
+ file://disable-documentation.patch \
+ file://tinyproxy.service \
+ file://tinyproxy.conf \
+ file://CVE-2022-40468.patch \
+ "
-SRC_URI[md5sum] = "423047c8dc53a15e19f78e238198549c"
-SRC_URI[sha256sum] = "6020955e6a0ef0ef898ad5bb17a448c47f9e4c003c464b4ae7c4dba063272055"
+SRC_URI[sha256sum] = "1574acf7ba83c703a89e98bb2758a4ed9fda456f092624b33cfcf0ce2d3b2047"
+
+UPSTREAM_CHECK_URI = "https://github.com/tinyproxy/tinyproxy/releases"
EXTRA_OECONF += " \
--enable-filter \
@@ -22,16 +26,17 @@ inherit autotools systemd useradd
#User specific
USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --home /dev/null \
- --no-user-group --gid nogroup tinypoxy"
+USERADD_PARAM:${PN} = "--system --home /dev/null \
+ --no-user-group --gid nogroup tinyproxy"
SYSTEMD_PACKAGES += "${BPN}"
-SYSTEMD_SERVICE_${PN} = "tinyproxy.service"
-SYSTEMD_AUTO_ENABLE_${PN} = "enable"
+SYSTEMD_SERVICE:${PN} = "tinyproxy.service"
+SYSTEMD_AUTO_ENABLE:${PN} = "enable"
-do_install_append() {
+do_install:append() {
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/tinyproxy.service ${D}${systemd_system_unitdir}
fi
+ install -m 0644 ${WORKDIR}/tinyproxy.conf ${D}${sysconfdir}/tinyproxy.conf
}
diff --git a/meta-networking/recipes-support/tnftp/tnftp/0001-libedit-Include-missing-header-stdc-predef.h.patch b/meta-networking/recipes-support/tnftp/tnftp/0001-libedit-Include-missing-header-stdc-predef.h.patch
new file mode 100644
index 0000000000..07a3c739b8
--- /dev/null
+++ b/meta-networking/recipes-support/tnftp/tnftp/0001-libedit-Include-missing-header-stdc-predef.h.patch
@@ -0,0 +1,31 @@
+From 9f2797d1ab8557b44a1f8d6d4d0b6de368d55e80 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 14 Jan 2022 09:22:59 -0800
+Subject: [PATCH] libedit: Include missing header stdc-predef.h
+
+__STDC_ISO_10646__ is defined in stdc-predef.h instead of expecting
+every other file including this header, add it here
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libedit/chartype.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/libedit/chartype.h b/libedit/chartype.h
+index 319be30..2d3e20c 100644
+--- a/libedit/chartype.h
++++ b/libedit/chartype.h
+@@ -30,6 +30,9 @@
+ #ifndef _h_chartype_f
+ #define _h_chartype_f
+
++/* for __STDC_ISO_10646__ */
++#include <stdc-predef.h>
++
+ /* Ideally we should also test the value of the define to see if it
+ * supports non-BMP code points without requiring UTF-16, but nothing
+ * seems to actually advertise this properly, despite Unicode 3.1 having
+--
+2.34.1
+
diff --git a/meta-networking/recipes-support/tnftp/tnftp/tnftp-autotools.patch b/meta-networking/recipes-support/tnftp/tnftp/tnftp-autotools.patch
deleted file mode 100644
index 1bda576bc2..0000000000
--- a/meta-networking/recipes-support/tnftp/tnftp/tnftp-autotools.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-[PATCH] Update configure.ac and Makefile.am to resolve warnings/errors
-
-Upstream-Status: Pending
-
-Signed-off-by: Roy Li <rongqing.li@windriver.com>
----
- configure.ac | 2 ++
- libnetbsd/Makefile.am | 2 +-
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index a96d2ab..b3b3069 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -71,9 +71,11 @@ AH_TEMPLATE([WITH_SSL],
- #
- # Checks for programs.
- #
-+AM_PROG_AR()
- AC_PROG_CC()
- AC_PROG_AWK()
- AC_PROG_LIBTOOL()
-+AM_PROG_CC_C_O()
-
- #
- # Checks for tool features.
-diff --git a/libnetbsd/Makefile.am b/libnetbsd/Makefile.am
-index 3e5c3ce..39bb12d 100644
---- a/libnetbsd/Makefile.am
-+++ b/libnetbsd/Makefile.am
-@@ -5,7 +5,7 @@ noinst_LTLIBRARIES = libnetbsd.la
- libnetbsd_la_SOURCES =
-
-
--CPPFLAGS = \
-+AM_CPPFLAGS = \
- -I$(srcdir) \
- -I$(top_srcdir) \
- -I$(top_builddir)
---
-1.7.10.4
-
diff --git a/meta-networking/recipes-support/tnftp/tnftp_20151004.bb b/meta-networking/recipes-support/tnftp/tnftp_20230507.bb
index 83ad11b0e9..bdd9759f26 100644
--- a/meta-networking/recipes-support/tnftp/tnftp_20151004.bb
+++ b/meta-networking/recipes-support/tnftp/tnftp_20230507.bb
@@ -10,27 +10,26 @@ SOCKS support, TIS FWTK gate-ftp server support, and transfer rate \
throttling."
SECTION = "net"
-LICENSE = "BSD-4-Clause"
+LICENSE = "BSD-2-Clause"
DEPENDS = "ncurses"
-SRC_URI = "ftp://ftp.netbsd.org/pub/NetBSD/misc/tnftp/${BPN}-${PV}.tar.gz \
- file://tnftp-autotools.patch \
+SRC_URI = "https://ftp.netbsd.org/pub/NetBSD/misc/tnftp/${BPN}-${PV}.tar.gz \
+ file://0001-libedit-Include-missing-header-stdc-predef.h.patch \
"
inherit autotools update-alternatives pkgconfig
ALTERNATIVE_PRIORITY = "100"
-ALTERNATIVE_${PN} = "ftp"
-ALTERNATIVE_LINK_NAME_${PN} = "${bindir}/ftp"
-ALTERNATIVE_TARGET_${PN} = "${bindir}/tnftp"
+ALTERNATIVE:${PN} = "ftp"
+ALTERNATIVE_LINK_NAME[ftp] = "${bindir}/ftp"
+ALTERNATIVE_TARGET[ftp] = "${bindir}/tnftp"
-FILES_${PN} = "${bindir}/tnftp"
+FILES:${PN} = "${bindir}/tnftp"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6d6796cb166a9bb050958241dad9479e"
-SRC_URI[md5sum] = "a49fbe752318d5a7893f900046ea00d5"
-SRC_URI[sha256sum] = "c94a8a49d3f4aec1965feea831d4d5bf6f90c65fd8381ee0863d11a5029a43a0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fbbb944979c7466ed5509b4bbc6c328b"
+SRC_URI[sha256sum] = "be0134394bd7d418a3b34892b0709eeb848557e86474e1786f0d1a887d3a6580"
PACKAGECONFIG ?= "openssl \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
diff --git a/meta-networking/recipes-support/traceroute/traceroute/filter-out-the-patches-from-subdirs.patch b/meta-networking/recipes-support/traceroute/traceroute/filter-out-the-patches-from-subdirs.patch
deleted file mode 100644
index 2c030b55dd..0000000000
--- a/meta-networking/recipes-support/traceroute/traceroute/filter-out-the-patches-from-subdirs.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From e273e0ebc753645555909bcc4874c72458b17891 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Fri, 17 Jan 2014 03:17:44 -0500
-Subject: [PATCH] Make.rules: filter-out the patches from subdirs
-
-The $(subdirs) contains all the dirs under the ${B}, and this one:
-
-do_unpack[cleandirs] = "${S}/patches"
-
-will create a "patches" dir, then there will be compile errors, filter
-out the patches will fix the problem.
-
-Note: poky doesn't have this problem since it separates the ${S} and
-${B}
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
----
- Make.rules | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Make.rules b/Make.rules
-index b077cd5..0bfce2d 100644
---- a/Make.rules
-+++ b/Make.rules
-@@ -97,7 +97,7 @@ endif
- subdirs := $(filter-out $(SKIPDIRS), $(subdirs))
- endif
-
--install install-%: subdirs := $(filter-out $(SKIPINSTALL), $(subdirs))
-+install install-%: subdirs := $(filter-out $(SKIPINSTALL) patches, $(subdirs))
-
-
- override MAKE += srcdir=$(srcdir) subdirs="$(subdirs)" shared=$(shared)
-@@ -106,7 +106,7 @@ override MAKE += srcdir=$(srcdir) subdirs="$(subdirs)" shared=$(shared)
- INCLUDEDIRS := $(filter $(INCLUDEDIRS), $(subdirs))
- LIBDIRS := $(filter $(LIBDIRS), $(subdirs))
- MODDIRS := $(filter $(MODDIRS), $(subdirs))
--EXEDIRS := $(filter-out $(INCLUDEDIRS) $(LIBDIRS) $(MODDIRS), $(subdirs))
-+EXEDIRS := $(filter-out $(INCLUDEDIRS) $(LIBDIRS) $(MODDIRS) patches, $(subdirs))
- MODUSERS := $(filter $(MODUSERS), $(subdirs))
- SBINUSERS := $(filter $(SBINUSERS), $(subdirs))
-
---
-1.7.10.4
-
diff --git a/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb b/meta-networking/recipes-support/traceroute/traceroute_2.1.5.bb
index 8f17d3fdbe..862cba91e9 100644
--- a/meta-networking/recipes-support/traceroute/traceroute_2.1.0.bb
+++ b/meta-networking/recipes-support/traceroute/traceroute_2.1.5.bb
@@ -7,23 +7,22 @@ tool. If you're having network connectivity problems, traceroute will \
show you where the trouble is coming from along the route."
SECTION = "net"
HOMEPAGE = "http://traceroute.sourceforge.net/"
-LICENSE = "GPL-2.0+ & LGPL-2.1+"
+LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
inherit update-alternatives
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/traceroute/files/traceroute/"
+
SRC_URI = "${SOURCEFORGE_MIRROR}/traceroute/traceroute/${BP}/${BP}.tar.gz \
- file://filter-out-the-patches-from-subdirs.patch \
"
-
-SRC_URI[md5sum] = "84d329d67abc3fb83fc8cb12aeaddaba"
-SRC_URI[sha256sum] = "3669d22a34d3f38ed50caba18cd525ba55c5c00d5465f2d20d7472e5d81603b6"
+SRC_URI[sha256sum] = "9c6c260d96eaab51e3ce461b0a84fe87123ebc6dd6c9a59fab803f95b35a859e"
EXTRA_OEMAKE = "VPATH=${STAGING_LIBDIR}"
+LTOEXTRA += "-flto-partition=none"
do_compile() {
- export LDFLAGS="${TARGET_LDFLAGS} -L${S}/libsupp"
oe_runmake "env=yes"
}
@@ -40,6 +39,6 @@ do_install() {
}
-ALTERNATIVE_PRIORITY = "60"
-ALTERNATIVE_${PN} = "traceroute"
+ALTERNATIVE_PRIORITY = "100"
+ALTERNATIVE:${PN} = "traceroute"
ALTERNATIVE_LINK_NAME[traceroute] = "${bindir}/traceroute"
diff --git a/meta-networking/recipes-support/tunctl/tunctl.inc b/meta-networking/recipes-support/tunctl/tunctl.inc
index 1c11823dd5..07e6dc217d 100644
--- a/meta-networking/recipes-support/tunctl/tunctl.inc
+++ b/meta-networking/recipes-support/tunctl/tunctl.inc
@@ -1,6 +1,6 @@
SUMMARY = "Tool for controlling the Linux TUN/TAP driver"
SECTION = "net"
-LICENSE = "GPLv2"
+LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://tunctl.c;beginline=1;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999"
SRC_URI = "${SOURCEFORGE_MIRROR}/tunctl/tunctl-${PV}.tar.gz \
diff --git a/meta-networking/recipes-support/uftp/uftp_4.9.8.bb b/meta-networking/recipes-support/uftp/uftp_5.0.3.bb
index 0bbdd6b1d1..6f0858cc95 100644
--- a/meta-networking/recipes-support/uftp/uftp_4.9.8.bb
+++ b/meta-networking/recipes-support/uftp/uftp_5.0.3.bb
@@ -1,13 +1,13 @@
DESCRIPTION = "Encrypted UDP based FTP with multicast"
HOMEPAGE = "https://sourceforge.net/projects/uftp-multicast"
SECTION = "libs/network"
-
-LICENSE = "GPLv3"
+LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d32239bcb673463ab874e80d47fae504"
+UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/uftp-multicast/files/source-tar/"
+
SRC_URI = "${SOURCEFORGE_MIRROR}/uftp-multicast/source-tar/uftp-${PV}.tar.gz"
-SRC_URI[md5sum] = "f7a5affd3000b5aafbb13df49719b6c0"
-SRC_URI[sha256sum] = "e98c6318e497124d777ca71eae752d213207c35de9f782c8bcaaf82ece20e599"
+SRC_URI[sha256sum] = "cb8668c19b1f10bc63a16ffa893e205dc3ec86361037d477d8003260ebc40080"
DEPENDS = "openssl"
diff --git a/meta-networking/recipes-support/unbound/unbound_1.20.0.bb b/meta-networking/recipes-support/unbound/unbound_1.20.0.bb
new file mode 100644
index 0000000000..fe0111f595
--- /dev/null
+++ b/meta-networking/recipes-support/unbound/unbound_1.20.0.bb
@@ -0,0 +1,46 @@
+SUMMARY = "Unbound is a validating, recursive, and caching DNS resolver"
+DESCRIPTION = "Unbound's design is a set of modular components which incorporate \
+ features including enhanced security (DNSSEC) validation, Internet Protocol \
+ Version 6 (IPv6), and a client resolver library API as an integral part of the \
+ architecture"
+
+HOMEPAGE = "https://www.unbound.net/"
+SECTION = "net"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=5308494bc0590c0cb036afd781d78f06"
+
+SRC_URI = "git://github.com/NLnetLabs/unbound.git;protocol=https;branch=branch-1.20.0"
+SRCREV = "b9525c5fd47ba481a29b90109017d2253beb105d"
+
+inherit autotools pkgconfig systemd update-rc.d
+
+DEPENDS = "openssl libtool-native bison-native expat"
+RDEPENDS:${PN} = "bash openssl-bin daemonize"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OECONF = "--with-libexpat=${STAGING_EXECPREFIXDIR} \
+ --with-ssl=${STAGING_EXECPREFIXDIR} \
+ --enable-largefile"
+
+PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+PACKAGECONFIG[dnscrypt] = "--enable-dnscrypt, --disable-dnscrypt, libsodium"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
+PACKAGECONFIG[libevent] = "--with-libevent=${STAGING_EXECPREFIXDIR},,libevent"
+
+do_configure:append() {
+ sed -i -e 's#${RECIPE_SYSROOT}##g' ${B}/config.h
+}
+
+do_install:append() {
+ install -d ${D}${systemd_unitdir}/system
+ install -m 0644 ${B}/contrib/unbound.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${S}/contrib/unbound.init_yocto ${D}${sysconfdir}/init.d/unbound
+}
+
+SYSTEMD_SERVICE:${PN} = "${BPN}.service"
+
+INITSCRIPT_NAME = "unbound"
+INITSCRIPT_PARAMS = "defaults"
diff --git a/meta-networking/recipes-support/vnstat/vnstat_2.6.bb b/meta-networking/recipes-support/vnstat/vnstat_2.6.bb
new file mode 100644
index 0000000000..cf3f41c5a1
--- /dev/null
+++ b/meta-networking/recipes-support/vnstat/vnstat_2.6.bb
@@ -0,0 +1,22 @@
+DESCRIPTION = "vnStat is a console-based network traffic monitor for Linux and BSD that keeps a log of network traffic for the selected interface(s)."
+HOMEPAGE = "https://humdi.net/vnstat/"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+SECTION = "net"
+DEPENDS = "gd sqlite3"
+
+SRC_URI = "https://github.com/vergoh/vnstat/releases/download/v${PV}/${BPN}-${PV}.tar.gz"
+SRC_URI[md5sum] = "fe2928a81243cc8a532a357f97221736"
+SRC_URI[sha256sum] = "89276e0a7281943edb554b874078278ad947dc312938a2451e03eb80679f7ff7"
+
+inherit autotools pkgconfig systemd
+
+EXTRA_OECONF = "--disable-extra-paths"
+
+do_install:append() {
+ install -Dm644 ${S}/examples/systemd/vnstat.service "${D}${systemd_system_unitdir}/vnstat.service"
+}
+
+PARALLEL_MAKEINST = ""
+
+SYSTEMD_SERVICE:${PN} = "vnstat.service"
diff --git a/meta-networking/recipes-support/wavemon/wavemon_0.9.5.bb b/meta-networking/recipes-support/wavemon/wavemon_0.9.5.bb
new file mode 100644
index 0000000000..9da43cf9f4
--- /dev/null
+++ b/meta-networking/recipes-support/wavemon/wavemon_0.9.5.bb
@@ -0,0 +1,28 @@
+SUMMARY = "wavemon is a wireless device monitoring application"
+HOMEPAGE = "https://github.com/uoaerg/wavemon"
+DESCRIPTION = "wavemon is a wireless device monitoring application that \
+ allows you to watch signal and noise levels, packet \
+ statistics, device configuration and network parameters of \
+ your wireless network hardware."
+
+LICENSE = "GPL-3.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1ebbd3e34237af26da5dc08a4e440464"
+
+PACKAGECONFIG ??= "cap"
+PACKAGECONFIG[cap] = "--with-libcap,--without-libcap,libcap"
+
+DEPENDS = "libnl ncurses"
+
+SRC_URI = "git://github.com/uoaerg/wavemon;branch=master;protocol=https"
+SRCREV = "a7c2f190e010db508ead31fa952478e2a1c13d64"
+
+# Needs some help to find libnl3 headers.
+# Reorder -pthread flag on the command line.
+EXTRA_OEMAKE = "\
+ CC='${CC}' CFLAGS='${CFLAGS} -pthread -I${STAGING_INCDIR}/libnl3' \
+"
+
+S = "${WORKDIR}/git"
+
+# wavemon does not support using out-of-tree builds
+inherit autotools-brokensep pkgconfig
diff --git a/meta-networking/recipes-support/wireshark/README b/meta-networking/recipes-support/wireshark/README
index 63b5b72631..f5e4d04777 100644
--- a/meta-networking/recipes-support/wireshark/README
+++ b/meta-networking/recipes-support/wireshark/README
@@ -14,12 +14,12 @@ Adding the wireshark to your build
========================================
via local.conf
-IMAGE_INSTALL_append = " wireshark"
+IMAGE_INSTALL:append = " wireshark"
Adding the wireshark to your graphical build
========================================
via local.conf
-IMAGE_INSTALL_append = " wireshark"
+IMAGE_INSTALL:append = " wireshark"
and one of:
diff --git a/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch b/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch
new file mode 100644
index 0000000000..1903f38f5d
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch
@@ -0,0 +1,32 @@
+From 802d3cafa888b36aa72007d48232a010dbb0231d Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Wed, 27 Dec 2023 16:57:28 +0100
+Subject: [PATCH] UseLemon.cmake: do not use lemon data from the host
+
+We use native lemon, and not the host one, so
+the data should be taken from the source tree as well.
+
+Upstream-Status: Inappropriate [cross-specific]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ cmake/modules/UseLemon.cmake | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/cmake/modules/UseLemon.cmake b/cmake/modules/UseLemon.cmake
+index fa4034e..83a7ca3 100644
+--- a/cmake/modules/UseLemon.cmake
++++ b/cmake/modules/UseLemon.cmake
+@@ -13,11 +13,12 @@ if(LEMON_EXECUTABLE)
+ ${_out}.out
+ COMMAND ${LEMON_EXECUTABLE}
+ -l
+- -T/usr/share/lemon/lempar.c
++ -T${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ -d.
+ ${_in}
+ DEPENDS
+ ${_in}
++ ${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ )
+ endmacro()
+ add_custom_target(lemon)
diff --git a/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch b/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch
new file mode 100644
index 0000000000..202de62606
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0001-wireshark-src-improve-reproducibility.patch
@@ -0,0 +1,28 @@
+From d9c4cdad0c48becab491ea4e80e5cd81f7d1dc97 Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Thu, 26 Nov 2020 05:38:31 -0800
+Subject: [PATCH] wireshark-src: improve reproducibility
+
+Cut absolute path for filename in generated code
+comments.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ tools/ncp2222.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/ncp2222.py b/tools/ncp2222.py
+index f14d0c5..05073b9 100755
+--- a/tools/ncp2222.py
++++ b/tools/ncp2222.py
+@@ -5891,7 +5891,7 @@ def produce_code():
+
+ print("/*")
+ print(" * Do not modify this file. Changes will be overwritten.")
+- print(" * Generated automatically from %s" % (sys.argv[0]))
++ print(" * Generated automatically from %s" % (os.path.basename(sys.argv[0])))
+ print(" */\n")
+
+ print("""
diff --git a/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch b/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch
new file mode 100644
index 0000000000..0e6249c939
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0002-flex-Remove-line-directives.patch
@@ -0,0 +1,44 @@
+From e4e88c2f55286cf24af230b265d0e059363baa6c Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Thu, 26 Nov 2020 12:00:43 -0800
+Subject: [PATCH] flex: Remove #line directives
+
+Append --noline option to flex to not
+generate #line directives with absolute file patch.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ cmake/modules/FindLEX.cmake | 18 +++++++++++++-----
+ 1 file changed, 13 insertions(+), 5 deletions(-)
+
+diff --git a/cmake/modules/FindLEX.cmake b/cmake/modules/FindLEX.cmake
+index 20caa09..174f452 100644
+--- a/cmake/modules/FindLEX.cmake
++++ b/cmake/modules/FindLEX.cmake
+@@ -32,11 +32,19 @@ MACRO(ADD_LEX_FILES _source _generated)
+ SET(_outc ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.c)
+ SET(_outh ${CMAKE_CURRENT_BINARY_DIR}/${_basename}_lex.h)
+
+- ADD_CUSTOM_COMMAND(
+- OUTPUT ${_outc} ${_outh}
+- COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> -o${_outc} --header-file=${_outh} ${_in}
+- DEPENDS ${_in}
+- )
++ IF (DEFINED ENV{SOURCE_DATE_EPOCH})
++ ADD_CUSTOM_COMMAND(
++ OUTPUT ${_outc} ${_outh}
++ COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> --noline -o${_outc} --header-file=${_outh} ${_in}
++ DEPENDS ${_in}
++ )
++ ELSE ()
++ ADD_CUSTOM_COMMAND(
++ OUTPUT ${_outc} ${_outh}
++ COMMAND ${LEX_EXECUTABLE} $<$<OR:$<CONFIG:Debug>,$<CONFIG:RelWithDebInfo>>:--debug> -o${_outc} --header-file=${_outh} ${_in}
++ DEPENDS ${_in}
++ )
++ ENDIF ()
+ LIST(APPEND ${_source} ${_in})
+ LIST(APPEND ${_generated} ${_outc})
+ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
diff --git a/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch b/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch
new file mode 100644
index 0000000000..1a6fe8d39e
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/files/0004-lemon-Remove-line-directives.patch
@@ -0,0 +1,35 @@
+From 94b951c0cccf67b66749cc87c473e63fa5207e83 Mon Sep 17 00:00:00 2001
+From: Oleksiy Obitotskyy <oobitots@cisco.com>
+Date: Wed, 27 Jan 2021 06:47:13 -0800
+Subject: [PATCH] lemon: Remove #line directives
+
+In case of reproducible build remove #line
+directives with extra option '-l'.
+
+Upstream-Status: Pending
+Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
+
+---
+ cmake/modules/UseLemon.cmake | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/cmake/modules/UseLemon.cmake b/cmake/modules/UseLemon.cmake
+index e419de1..fa4034e 100644
+--- a/cmake/modules/UseLemon.cmake
++++ b/cmake/modules/UseLemon.cmake
+@@ -12,6 +12,7 @@ if(LEMON_EXECUTABLE)
+ ${_out}.h
+ ${_out}.out
+ COMMAND ${LEMON_EXECUTABLE}
++ -l
+ -T/usr/share/lemon/lempar.c
+ -d.
+ ${_in}
+@@ -30,6 +31,7 @@ else()
+ ${_out}.h
+ ${_out}.out
+ COMMAND $<TARGET_FILE:lemon>
++ -l
+ -T${CMAKE_SOURCE_DIR}/tools/lemon/lempar.c
+ -d.
+ ${_in}
diff --git a/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch b/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch
deleted file mode 100644
index e65ef9b10c..0000000000
--- a/meta-networking/recipes-support/wireshark/wireshark/0001-Add-libm-to-link-for-fmod-API.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1a6a5d2bcb1adec9ba138c2ebee7bbc994620aff Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 12 Jun 2018 23:23:44 -0700
-Subject: [PATCH] Add libm to link for fmod() API
-
-fixes
-ld: CMakeFiles/tshark.dir/ui/cli/tap-comparestat.c.o: undefined reference to symbol 'fmod@@GLIBC_2.2.5'
-| /mnt/a/oe/build/tmp/work/core2-64-bec-linux/wireshark/1_2.6.1-r0/recipe-sysroot/lib/libm.so.6: error adding symbols: DSO missing from command line
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- CMakeLists.txt | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7950e85..acee140 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -2494,6 +2494,7 @@ if(BUILD_tshark)
- ${LIBEPAN_LIBS}
- ${APPLE_CORE_FOUNDATION_LIBRARY}
- ${APPLE_SYSTEM_CONFIGURATION_LIBRARY}
-+ m
- )
- set(tshark_FILES
- capture_opts.c
---
-2.17.1
-
diff --git a/meta-networking/recipes-support/wireshark/wireshark_2.6.5.bb b/meta-networking/recipes-support/wireshark/wireshark_2.6.5.bb
deleted file mode 100644
index b3e0dd4d08..0000000000
--- a/meta-networking/recipes-support/wireshark/wireshark_2.6.5.bb
+++ /dev/null
@@ -1,94 +0,0 @@
-DESCRIPTION = "wireshark - a popular network protocol analyzer"
-HOMEPAGE = "http://www.wireshark.org"
-SECTION = "net"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6e271234ba1a13c6e512e76b94ac2f77"
-
-DEPENDS = "pcre expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native"
-
-DEPENDS_append_class-target = " wireshark-native chrpath-replacement-native "
-
-SRC_URI = "https://1.as.dl.wireshark.org/src/all-versions/${BP}.tar.xz \
- file://0001-Add-libm-to-link-for-fmod-API.patch \
- "
-
-UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
-
-SRC_URI[md5sum] = "e25257d5969705f2a18cae627ed42d80"
-SRC_URI[sha256sum] = "93155b798544b2f07693920f4ac1b531c952965ee4eb1d98419961240177438a"
-
-PE = "1"
-
-inherit cmake pkgconfig pythonnative perlnative upstream-version-is-even
-
-ARM_INSTRUCTION_SET = "arm"
-
-# Options: gtk+, gtk+3 and qt5
-GTK = "gtk+3"
-
-PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
-PACKAGECONFIG_append_class-target = " ${@bb.utils.contains("DISTRO_FEATURES", "x11", " ${GTK}", "", d)}"
-
-PACKAGECONFIG_class-native = "libpcap gnutls ssl libssh"
-
-PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
-PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
-PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi"
-PACKAGECONFIG[libnl] = ",,libnl"
-PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19"
-PACKAGECONFIG[gtk+] = "-DENABLE_GTK=ON -DBUILD_wireshark_gtk=ON, -DENABLE_GTK=OFF, gtk+"
-PACKAGECONFIG[gtk+3] = "-DENABLE_GTK3=ON -DBUILD_wireshark_gtk=ON, -DENABLE_GTK3=OFF, gtk+3"
-PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls"
-PACKAGECONFIG[ssl] = ",,openssl"
-PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5"
-PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua"
-PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
-PACKAGECONFIG[geoip] = ",, geoip"
-PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
-PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
-PACKAGECONFIG[libssh] = ",,libssh2"
-PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
-
-# these next two options require addional layers
-PACKAGECONFIG[c-ares] = "-DENABLE_CARES=ON,-DENABLE_CARES=OFF, c-ares"
-PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qtbase"
-
-EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
- -DBUILD_mmdbresolve=OFF \
- -DBUILD_randpktdump=OFF \
- -DBUILD_androiddump=OFF \
- -DBUILD_dcerpcidl2wrs=OFF \
- -DM_INCLUDE_DIR=${includedir} \
- -DM_LIBRARY=${libdir} \
- "
-CFLAGS_append = " -lm"
-
-do_install_append_class-native() {
- install -d ${D}${bindir}
- for f in lemon
- do
- install -m 0755 ${B}/run/$f ${D}${bindir}
- done
-}
-
-do_install_append_class-target() {
- for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
- do
- chrpath --delete $f
- done
-}
-
-PACKAGE_BEFORE_PN += "tshark"
-PACKAGE_BEFORE_PN += "${PN}-gtk"
-
-FILES_tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
-FILES_${PN}-gtk = "${bindir}/wireshark-gtk ${datadir}/icons ${datadir}/appdata \
- ${datadir}/applications ${datadir}/wireshark ${datadir}/mime \
- ${mandir}/man1/wireshark.* "
-
-FILES_${PN} += "${datadir}*"
-
-RDEPENDS_tshark = "wireshark"
-RDEPENDS_${PN}-gtk = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "${GTK}", "", d)} wireshark"
-
-BBCLASSEXTEND = "native"
diff --git a/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb b/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
new file mode 100644
index 0000000000..95db2efc4c
--- /dev/null
+++ b/meta-networking/recipes-support/wireshark/wireshark_4.2.4.bb
@@ -0,0 +1,99 @@
+DESCRIPTION = "wireshark - a popular network protocol analyzer"
+HOMEPAGE = "http://www.wireshark.org"
+SECTION = "net"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+DEPENDS = "pcre2 expat glib-2.0 glib-2.0-native libgcrypt libgpg-error libxml2 bison-native c-ares speexdsp"
+
+DEPENDS:append:class-target = " wireshark-native chrpath-replacement-native "
+
+SRC_URI = "https://1.eu.dl.wireshark.org/src/wireshark-${PV}.tar.xz \
+ file://0001-wireshark-src-improve-reproducibility.patch \
+ file://0002-flex-Remove-line-directives.patch \
+ file://0004-lemon-Remove-line-directives.patch \
+ file://0001-UseLemon.cmake-do-not-use-lemon-data-from-the-host.patch \
+ "
+
+UPSTREAM_CHECK_URI = "https://1.as.dl.wireshark.org/src"
+
+SRC_URI[sha256sum] = "46bd0f4474337144b30816fb2d8f14e72a26d0391f24fe0b7b619acdcdad8c0c"
+
+PE = "1"
+
+inherit cmake pkgconfig python3native python3targetconfig perlnative upstream-version-is-even mime mime-xdg
+
+PACKAGECONFIG ?= "libpcap gnutls libnl libcap sbc"
+
+PACKAGECONFIG:class-native = "libpcap gnutls ssl libssh"
+
+PACKAGECONFIG[libcap] = "-DENABLE_CAP=ON,-DENABLE_CAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON, libcap"
+PACKAGECONFIG[libpcap] = "-DENABLE_PCAP=ON,-DENABLE_PCAP=OFF -DENABLE_PCAP_NG_DEFAULT=ON , libpcap"
+PACKAGECONFIG[libsmi] = "-DENABLE_SMI=ON,-DENABLE_SMI=OFF,libsmi"
+PACKAGECONFIG[libnl] = ",,libnl"
+PACKAGECONFIG[portaudio] = "-DENABLE_PORTAUDIO=ON,-DENABLE_PORTAUDIO=OFF, portaudio-v19"
+PACKAGECONFIG[gnutls] = "-DENABLE_GNUTLS=ON,-DENABLE_GNUTLS=OFF, gnutls"
+PACKAGECONFIG[ssl] = ",,openssl"
+PACKAGECONFIG[krb5] = "-DENABLE_KRB5=ON,-DENABLE_KRB5=OFF, krb5"
+PACKAGECONFIG[lua] = "-DENABLE_LUA=ON,-DENABLE_LUA=OFF, lua"
+PACKAGECONFIG[zlib] = "-DENABLE_ZLIB=ON,-DENABLE_ZLIB=OFF, zlib"
+PACKAGECONFIG[geoip] = ",, geoip"
+PACKAGECONFIG[plugins] = "-DENABLE_PLUGINS=ON,-DENABLE_PLUGINS=OFF"
+PACKAGECONFIG[sbc] = "-DENABLE_SBC=ON,-DENABLE_SBC=OFF, sbc"
+PACKAGECONFIG[libssh] = "-DENABLE_LIBSSH=ON,-DENABLE_LIBSSH=OFF, libssh2"
+PACKAGECONFIG[lz4] = "-DENABLE_LZ4=ON,-DENABLE_LZ4=OFF, lz4"
+PACKAGECONFIG[zstd] = "-DENABLE_STTD=ON,-DENABLE_ZSTD=OFF, zstd"
+PACKAGECONFIG[nghttp2] = "-DENABLE_NGHTTP2=ON,-DENABLE_NGHTTP2=OFF, nghttp2"
+
+# these next two options require addional layers
+PACKAGECONFIG[qt5] = "-DENABLE_QT5=ON -DBUILD_wireshark=ON, -DENABLE_QT5=OFF -DBUILD_wireshark=OFF, qttools-native qtmultimedia qtsvg"
+
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt5', 'cmake_qt5', '', d)}
+
+EXTRA_OECMAKE += "-DENABLE_NETLINK=ON \
+ -DBUILD_mmdbresolve=OFF \
+ -DBUILD_randpktdump=OFF \
+ -DBUILD_androiddump=OFF \
+ -DBUILD_dcerpcidl2wrs=OFF \
+ -DM_INCLUDE_DIR=${includedir} \
+ -DM_LIBRARY=${libdir} \
+ "
+CFLAGS:append = " -lm"
+
+do_compile:append:class-target() {
+ # Fix TMPDIR, these are in the comments section
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/ascend_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/candump_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/wiretap/busmaster_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/protobuf_lang_parser.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/dtd_grammar.c
+ sed -i -e "s:** source file.*::g" ${B}/epan/dfilter/grammar.c
+}
+
+do_install:append:class-native() {
+ install -d ${D}${bindir}
+ for f in lemon
+ do
+ install -m 0755 ${B}/run/$f ${D}${bindir}
+ done
+}
+
+do_install:append:class-target() {
+ for f in `find ${D}${libdir} ${D}${bindir} -type f -executable`
+ do
+ chrpath --delete $f
+ done
+
+ # We don't need the cmake files installed
+ rm -fr ${D}${usrlib}/${BPN}/cmake
+}
+
+PACKAGE_BEFORE_PN += "tshark"
+
+FILES:tshark = "${bindir}/tshark ${mandir}/man1/tshark.*"
+
+FILES:${PN} += "${datadir}*"
+
+RDEPENDS:tshark = "wireshark"
+
+BBCLASSEXTEND = "native"
diff --git a/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb b/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb
index b6d2f69235..6b83cbd522 100644
--- a/meta-networking/recipes-support/wpan-tools/wpan-tools_git.bb
+++ b/meta-networking/recipes-support/wpan-tools/wpan-tools_0.9.bb
@@ -8,10 +8,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4cfd939b1d7e6aba9fcefb7f6e2fd45d"
DEPENDS = "libnl"
-PV = "0.8+git${SRCPV}"
-SRC_URI = "git://github.com/linux-wpan/wpan-tools \
- "
-SRCREV = "3f473f5136f89773997cb4fff2d8ed647734e2f5"
+SRC_URI = "git://github.com/linux-wpan/wpan-tools;branch=master;protocol=https"
+SRCREV = "a316ca2caa746d60817400e5bf646c2820f09273"
S = "${WORKDIR}/git"