diff options
Diffstat (limited to 'meta/recipes-extended/iputils')
4 files changed, 59 insertions, 319 deletions
diff --git a/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch b/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch deleted file mode 100644 index 9f17cbdb87..0000000000 --- a/meta/recipes-extended/iputils/iputils/0001-meson-Make-tests-optional.patch +++ /dev/null @@ -1,220 +0,0 @@ -From d8048d60d30a2efe7883b36626123630ce69b9fc Mon Sep 17 00:00:00 2001 -From: Heiko Becker <heirecka@exherbo.org> -Date: Fri, 23 Jul 2021 16:32:46 +0200 -Subject: [PATCH] meson: Make tests optional - -Now can be disabled with -DSKIP_TESTS=true. - -It allows to avoid meson error during build when ip isn't installed. - -Closes: #359 - -Reviewed-by: Petr Vorel <petr.vorel@gmail.com> -Signed-off-by: Heiko Becker <heirecka@exherbo.org> -[ pvorel: Rename variable TEST => SKIP_TESTS, default false, adjust -the description ] -Signed-off-by: Petr Vorel <petr.vorel@gmail.com> - -Upstream-Status: Backport [3163c49f9f4ad473a00d8a345ee334a028376011] -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> ---- - meson_options.txt | 3 ++ - ping/meson.build | 84 ++----------------------------------------- - ping/test/meson.build | 81 +++++++++++++++++++++++++++++++++++++++++ - 3 files changed, 86 insertions(+), 82 deletions(-) - create mode 100644 ping/test/meson.build - -diff --git a/meson_options.txt b/meson_options.txt -index ac5f5d9..517667f 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -72,3 +72,6 @@ option('INSTALL_SYSTEMD_UNITS', type: 'boolean', value: false, - - option('USE_GETTEXT', type: 'boolean', value: true, - description: 'Enable I18N') -+ -+option('SKIP_TESTS', type: 'boolean', value: false, -+ description: 'Skip tests during build') -diff --git a/ping/meson.build b/ping/meson.build -index 1e678ec..83ea353 100644 ---- a/ping/meson.build -+++ b/ping/meson.build -@@ -27,86 +27,6 @@ if (setcap_ping) - ) - endif - --##### TESTS ##### -- --# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_" -- --# GitHub CI does not have working IPv6 --# https://github.com/actions/virtual-environments/issues/668 --ipv6_dst = [] --ipv6_switch = [] --r = run_command('ip', '-6', 'a') --if r.stdout().strip().contains('::1') -- message('IPv6 enabled') -- ipv6_dst = [ '::1' ] -- ipv6_switch = [ '-6' ] --else -- message('WARNING: IPv6 disabled') -+if not get_option('SKIP_TESTS') -+ subdir('test') - endif -- --run_as_root = false --r = run_command('id', '-u') --if r.stdout().strip().to_int() == 0 -- message('running as root') -- run_as_root = true --else -- message('running as normal user') --endif -- --foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst -- foreach switch : [ '', '-4' ] + ipv6_switch -- args = [ '-c1', dst ] -- should_fail = false -- -- if switch != '' -- args = [switch] + args -- if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1') -- should_fail = true -- endif -- endif -- -- name = 'ping ' + ' '.join(args) -- test(name, ping, args : args, should_fail : should_fail) -- endforeach --endforeach -- --ping_tests_opt = [ -- [ '-c1' ], -- [ '-c5', '-i0.1' ], -- [ '-c1', '-I', 'lo' ], -- [ '-c1', '-w1' ], -- [ '-c1', '-W1' ], -- [ '-c1', '-W1.1' ], --] --foreach dst : [ '127.0.0.1' ] + ipv6_dst -- foreach args : ping_tests_opt -- args += [ dst ] -- name = 'ping ' + ' '.join(args) -- test(name, ping, args : args) -- endforeach --endforeach -- --ping_tests_opt_fail = [ -- [ '-c1.1' ], -- [ '-I', 'nonexisting' ], -- [ '-w0.1' ], -- [ '-w0,1' ], --] --foreach dst : [ '127.0.0.1' ] + ipv6_dst -- foreach args : ping_tests_opt_fail -- args += [ dst ] -- name = 'ping ' + ' '.join(args) -- test(name, ping, args : args, should_fail : true) -- endforeach --endforeach -- --ping_tests_user_fail = [ -- [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root --] --foreach dst : [ '127.0.0.1' ] + ipv6_dst -- foreach args : ping_tests_user_fail -- args += [ dst ] -- name = 'ping ' + ' '.join(args) -- test(name, ping, args : args, should_fail : not run_as_root) -- endforeach --endforeach -diff --git a/ping/test/meson.build b/ping/test/meson.build -new file mode 100644 -index 0000000..43aed75 ---- /dev/null -+++ b/ping/test/meson.build -@@ -0,0 +1,81 @@ -+# TODO: ::1 generates DEPRECATION: ":" is not allowed in test name "ping -c1 ::1", it has been replaced with "_" -+ -+# GitHub CI does not have working IPv6 -+# https://github.com/actions/virtual-environments/issues/668 -+ipv6_dst = [] -+ipv6_switch = [] -+r = run_command('ip', '-6', 'a') -+if r.stdout().strip().contains('::1') -+ message('IPv6 enabled') -+ ipv6_dst = [ '::1' ] -+ ipv6_switch = [ '-6' ] -+else -+ message('WARNING: IPv6 disabled') -+endif -+ -+run_as_root = false -+r = run_command('id', '-u') -+if r.stdout().strip().to_int() == 0 -+ message('running as root') -+ run_as_root = true -+else -+ message('running as normal user') -+endif -+ -+foreach dst : [ 'localhost', '127.0.0.1' ] + ipv6_dst -+ foreach switch : [ '', '-4' ] + ipv6_switch -+ args = [ '-c1', dst ] -+ should_fail = false -+ -+ if switch != '' -+ args = [switch] + args -+ if (switch == '-4' and dst == '::1') or (switch == '-6' and dst == '127.0.0.1') -+ should_fail = true -+ endif -+ endif -+ -+ name = 'ping ' + ' '.join(args) -+ test(name, ping, args : args, should_fail : should_fail) -+ endforeach -+endforeach -+ -+ping_tests_opt = [ -+ [ '-c1' ], -+ [ '-c5', '-i0.1' ], -+ [ '-c1', '-I', 'lo' ], -+ [ '-c1', '-w1' ], -+ [ '-c1', '-W1' ], -+ [ '-c1', '-W1.1' ], -+] -+foreach dst : [ '127.0.0.1' ] + ipv6_dst -+ foreach args : ping_tests_opt -+ args += [ dst ] -+ name = 'ping ' + ' '.join(args) -+ test(name, ping, args : args) -+ endforeach -+endforeach -+ -+ping_tests_opt_fail = [ -+ [ '-c1.1' ], -+ [ '-I', 'nonexisting' ], -+ [ '-w0.1' ], -+ [ '-w0,1' ], -+] -+foreach dst : [ '127.0.0.1' ] + ipv6_dst -+ foreach args : ping_tests_opt_fail -+ args += [ dst ] -+ name = 'ping ' + ' '.join(args) -+ test(name, ping, args : args, should_fail : true) -+ endforeach -+endforeach -+ -+ping_tests_user_fail = [ -+ [ '-c1', '-i0.001' ], # -c1 required to quit ping when running as root -+] -+foreach dst : [ '127.0.0.1' ] + ipv6_dst -+ foreach args : ping_tests_user_fail -+ args += [ dst ] -+ name = 'ping ' + ' '.join(args) -+ test(name, ping, args : args, should_fail : not run_as_root) -+ endforeach -+endforeach --- -2.30.2 - diff --git a/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch b/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch deleted file mode 100644 index c61e39dc80..0000000000 --- a/meta/recipes-extended/iputils/iputils/0001-rarpd-rdisc-Drop-PrivateUsers.patch +++ /dev/null @@ -1,27 +0,0 @@ -From dfeeb3f1328d09f516edeb6349bd63e3c87f9397 Mon Sep 17 00:00:00 2001 -From: Alex Kiernan <alex.kiernan@gmail.com> -Date: Thu, 13 Feb 2020 06:08:45 +0000 -Subject: [PATCH] rarpd:Drop PrivateUsers - -rarpd cannot gain the necessary capabilities with -PrivateUsers enabled. - -Upstream-Status: Pending -Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com> - ---- - systemd/rarpd.service.in | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/systemd/rarpd.service.in b/systemd/rarpd.service.in -index e600c10..f5d7621 100644 ---- a/systemd/rarpd.service.in -+++ b/systemd/rarpd.service.in -@@ -12,7 +12,6 @@ AmbientCapabilities=CAP_NET_RAW - DynamicUser=yes - PrivateTmp=yes - PrivateDevices=yes --PrivateUsers=yes - ProtectSystem=strict - ProtectHome=yes - ProtectControlGroups=yes diff --git a/meta/recipes-extended/iputils/iputils_20210722.bb b/meta/recipes-extended/iputils/iputils_20210722.bb deleted file mode 100644 index e1940b77b5..0000000000 --- a/meta/recipes-extended/iputils/iputils_20210722.bb +++ /dev/null @@ -1,72 +0,0 @@ -SUMMARY = "Network monitoring tools" -DESCRIPTION = "Utilities for the IP protocol, including traceroute6, \ -tracepath, tracepath6, ping, ping6 and arping." -HOMEPAGE = "https://github.com/iputils/iputils" -SECTION = "console/network" - -LICENSE = "BSD-3-Clause & GPLv2+" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=55aa8c9fcad0691cef0ecd420361e390" - -DEPENDS = "gnutls" - -SRC_URI = "git://github.com/iputils/iputils \ - file://0001-rarpd-rdisc-Drop-PrivateUsers.patch \ - file://0001-meson-Make-tests-optional.patch \ - " -SRCREV = "71bb2a6c72e9f658e90ac618c73d873a76bbaa81" - -S = "${WORKDIR}/git" - -UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>20\d+)" - -# Fixed in 2000-10-10, but the versioning of iputils -# breaks the version order. -CVE_CHECK_WHITELIST += "CVE-2000-1213 CVE-2000-1214" - -PACKAGECONFIG ??= "libcap rarpd \ - ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ninfod traceroute6', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" -PACKAGECONFIG[libcap] = "-DUSE_CAP=true, -DUSE_CAP=false -DNO_SETCAP_OR_SUID=true, libcap libcap-native" -PACKAGECONFIG[libidn] = "-DUSE_IDN=true, -DUSE_IDN=false, libidn2" -PACKAGECONFIG[gettext] = "-DUSE_GETTEXT=true, -DUSE_GETTEXT=false, gettext" -PACKAGECONFIG[ninfod] = "-DBUILD_NINFOD=true,-DBUILD_NINFOD=false," -PACKAGECONFIG[rarpd] = "-DBUILD_RARPD=true,-DBUILD_RARPD=false," -PACKAGECONFIG[systemd] = "-Dsystemdunitdir=${systemd_system_unitdir},,systemd" -PACKAGECONFIG[tftpd] = "-DBUILD_TFTPD=true, -DBUILD_TFTPD=false," -PACKAGECONFIG[traceroute6] = "-DBUILD_TRACEROUTE6=true,-DBUILD_TRACEROUTE6=false," -PACKAGECONFIG[docs] = "-DBUILD_HTML_MANS=true -DBUILD_MANS=true,-DBUILD_HTML_MANS=false -DBUILD_MANS=false, libxslt" - -inherit meson systemd update-alternatives pkgconfig - -EXTRA_OEMESON += "--prefix=${root_prefix}/ -DSKIP_TESTS=true" - -ALTERNATIVE_PRIORITY = "100" - -ALTERNATIVE:${PN}-ping = "ping" -ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" - -SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff ${PN}-rdisc \ - ${@bb.utils.contains('PACKAGECONFIG', 'rarpd', '${PN}-rarpd', '', d)} \ - ${@bb.utils.contains('PACKAGECONFIG', 'tftpd', '${PN}-tftpd', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-traceroute6 ${PN}-ninfod', '', d)}" -PACKAGES += "${SPLITPKGS}" - -ALLOW_EMPTY:${PN} = "1" -RDEPENDS:${PN} += "${SPLITPKGS}" - -FILES:${PN} = "" -FILES:${PN}-ping = "${base_bindir}/ping.${BPN}" -FILES:${PN}-arping = "${base_bindir}/arping" -FILES:${PN}-tracepath = "${base_bindir}/tracepath" -FILES:${PN}-traceroute6 = "${base_bindir}/traceroute6" -FILES:${PN}-clockdiff = "${base_bindir}/clockdiff" -FILES:${PN}-tftpd = "${base_bindir}/tftpd ${sysconfdir}/xinetd.d/tftp" -FILES:${PN}-rarpd = "${base_sbindir}/rarpd ${systemd_system_unitdir}/rarpd@.service" -FILES:${PN}-rdisc = "${base_sbindir}/rdisc" -FILES:${PN}-ninfod = "${base_sbindir}/ninfod ${sysconfdir}/init.d/ninfod.sh" - -SYSTEMD_PACKAGES = "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ninfod', '', d)} \ - ${PN}-rdisc" -SYSTEMD_SERVICE:${PN}-ninfod = "ninfod.service" -SYSTEMD_SERVICE:${PN}-rdisc = "rdisc.service" diff --git a/meta/recipes-extended/iputils/iputils_20240117.bb b/meta/recipes-extended/iputils/iputils_20240117.bb new file mode 100644 index 0000000000..3880689742 --- /dev/null +++ b/meta/recipes-extended/iputils/iputils_20240117.bb @@ -0,0 +1,59 @@ +SUMMARY = "Network monitoring tools" +DESCRIPTION = "Utilities for the IP protocol, including \ +tracepath, tracepath6, ping, ping6 and arping." +HOMEPAGE = "https://github.com/iputils/iputils" +SECTION = "console/network" + +LICENSE = "BSD-3-Clause & GPL-2.0-or-later" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=627cc07ec86a45951d43e30658bbd819" + +DEPENDS = "gnutls" + +SRC_URI = "git://github.com/iputils/iputils;branch=master;protocol=https" +SRCREV = "8372f355bdf7a9b0c79338dd8ef8464c00a5c4e2" + +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>20\d+)" + +CVE_STATUS[CVE-2000-1213] = "fixed-version: Fixed in 2000-10-10, but the versioning of iputils breaks the version order." +CVE_STATUS[CVE-2000-1214] = "fixed-version: Fixed in 2000-10-10, but the versioning of iputils breaks the version order." + +PACKAGECONFIG ??= "libcap" +PACKAGECONFIG[libcap] = "-DUSE_CAP=true, -DUSE_CAP=false -DNO_SETCAP_OR_SUID=true, libcap libcap-native" +PACKAGECONFIG[libidn] = "-DUSE_IDN=true, -DUSE_IDN=false, libidn2" +PACKAGECONFIG[gettext] = "-DUSE_GETTEXT=true, -DUSE_GETTEXT=false, gettext" +PACKAGECONFIG[docs] = "-DBUILD_HTML_MANS=true -DBUILD_MANS=true,-DBUILD_HTML_MANS=false -DBUILD_MANS=false, libxslt" + +inherit meson update-alternatives pkgconfig + +EXTRA_OEMESON += "--prefix=${root_prefix}/ -DSKIP_TESTS=true" + +ALTERNATIVE_PRIORITY = "100" + +ALTERNATIVE:${PN}-ping = "ping" +ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" + +ALTERNATIVE:${PN}-ping6 = "ping6" +ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6" + +SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff \ + ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ping6', '', d)}" +PACKAGES += "${SPLITPKGS}" + +ALLOW_EMPTY:${PN} = "1" +RDEPENDS:${PN} += "${SPLITPKGS}" + +FILES:${PN} = "" +FILES:${PN}-ping = "${base_bindir}/ping.${BPN}" +FILES:${PN}-ping6 = "${base_bindir}/ping6.${BPN}" +FILES:${PN}-arping = "${base_bindir}/arping" +FILES:${PN}-tracepath = "${base_bindir}/tracepath" +FILES:${PN}-clockdiff = "${base_bindir}/clockdiff" + +do_install:append() { + if ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'true', 'false', d)}; then + ln -sf ping ${D}/${base_bindir}/ping6 + fi +} |