diff options
Diffstat (limited to 'sys-apps/iproute2/files')
16 files changed, 626 insertions, 592 deletions
diff --git a/sys-apps/iproute2/files/iproute2-4.11.0-no-ipv6.patch b/sys-apps/iproute2/files/iproute2-4.11.0-no-ipv6.patch deleted file mode 100644 index fc855dcf2209..000000000000 --- a/sys-apps/iproute2/files/iproute2-4.11.0-no-ipv6.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- iproute2-4.11.0/ip/ipmonitor.c -+++ iproute2-4.11.0/ip/ipmonitor.c -@@ -114,7 +114,6 @@ - } - if (n->nlmsg_type == RTM_NEWPREFIX) { - print_headers(fp, "[PREFIX]", ctrl); -- print_prefix(who, n, arg); - return 0; - } - if (n->nlmsg_type == RTM_NEWRULE || n->nlmsg_type == RTM_DELRULE) { ---- iproute2-4.11.0/ip/iptunnel.c -+++ iproute2-4.11.0/ip/iptunnel.c -@@ -589,13 +589,6 @@ - break; - case AF_INET: - break; -- /* -- * This is silly enough but we have no easy way to make it -- * protocol-independent because of unarranged structure between -- * IPv4 and IPv6. -- */ -- case AF_INET6: -- return do_ip6tunnel(argc, argv); - default: - fprintf(stderr, "Unsupported protocol family: %d\n", preferred_family); - exit(-1); ---- iproute2-4.11.0/ip/Makefile -+++ iproute2-4.11.0/ip/Makefile -@@ -1,6 +1,6 @@ - IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \ -- rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -- ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o iptuntap.o iptoken.o \ -+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o iptoken.o \ - ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o iplink_dummy.o \ - iplink_ifb.o iplink_nlmon.o iplink_team.o iplink_vcan.o \ - iplink_vlan.o link_veth.o link_gre.o iplink_can.o iplink_xdp.o \ diff --git a/sys-apps/iproute2/files/iproute2-4.14.1-fix-tc-actions.patch b/sys-apps/iproute2/files/iproute2-4.14.1-fix-tc-actions.patch deleted file mode 100644 index a8b7aaa9efe0..000000000000 --- a/sys-apps/iproute2/files/iproute2-4.14.1-fix-tc-actions.patch +++ /dev/null @@ -1,222 +0,0 @@ -From 3572e01a090a298e2f4c4f796bad6639b652e031 Mon Sep 17 00:00:00 2001 -From: Michal Privoznik <mprivozn@redhat.com> -Date: Fri, 8 Dec 2017 11:18:07 +0100 -Subject: tc: util: Don't call NEXT_ARG_FWD() in __parse_action_control() - -Not all callers want parse_action_control*() to advance the -arguments. For instance act_parse_police() does the argument -advancing itself. - -Fixes: e67aba559581 ("tc: actions: add helpers to parse and print control actions") -Signed-off-by: Michal Privoznik <mprivozn@redhat.com> ---- - tc/m_bpf.c | 1 + - tc/m_connmark.c | 1 + - tc/m_csum.c | 1 + - tc/m_gact.c | 10 +++++----- - tc/m_ife.c | 1 + - tc/m_mirred.c | 4 +++- - tc/m_nat.c | 1 + - tc/m_pedit.c | 1 + - tc/m_sample.c | 1 + - tc/m_skbedit.c | 1 + - tc/m_skbmod.c | 1 + - tc/m_tunnel_key.c | 1 + - tc/m_vlan.c | 1 + - tc/tc_util.c | 1 - - 14 files changed, 19 insertions(+), 7 deletions(-) - -diff --git a/tc/m_bpf.c b/tc/m_bpf.c -index 1c1f71c..576f69c 100644 ---- a/tc/m_bpf.c -+++ b/tc/m_bpf.c -@@ -129,6 +129,7 @@ opt_bpf: - - parse_action_control_dflt(&argc, &argv, &parm.action, - false, TC_ACT_PIPE); -+ NEXT_ARG_FWD(); - - if (argc) { - if (matches(*argv, "index") == 0) { -diff --git a/tc/m_connmark.c b/tc/m_connmark.c -index 37d7185..47c7a8c 100644 ---- a/tc/m_connmark.c -+++ b/tc/m_connmark.c -@@ -82,6 +82,7 @@ parse_connmark(struct action_util *a, int *argc_p, char ***argv_p, int tca_id, - } - - parse_action_control_dflt(&argc, &argv, &sel.action, false, TC_ACT_PIPE); -+ NEXT_ARG_FWD(); - - if (argc) { - if (matches(*argv, "index") == 0) { -diff --git a/tc/m_csum.c b/tc/m_csum.c -index 7b15673..e1352c0 100644 ---- a/tc/m_csum.c -+++ b/tc/m_csum.c -@@ -124,6 +124,7 @@ parse_csum(struct action_util *a, int *argc_p, - } - - parse_action_control_dflt(&argc, &argv, &sel.action, false, TC_ACT_OK); -+ NEXT_ARG_FWD(); - - if (argc) { - if (matches(*argv, "index") == 0) { -diff --git a/tc/m_gact.c b/tc/m_gact.c -index e7d91da..b30b042 100644 ---- a/tc/m_gact.c -+++ b/tc/m_gact.c -@@ -87,14 +87,13 @@ parse_gact(struct action_util *a, int *argc_p, char ***argv_p, - if (argc < 0) - return -1; - -- -- if (matches(*argv, "gact") == 0) { -- argc--; -- argv++; -- } else if (parse_action_control(&argc, &argv, &p.action, false) == -1) { -+ if (matches(*argv, "gact") != 0 && -+ parse_action_control(&argc, &argv, &p.action, false) == -1) { - usage(); /* does not return */ - } - -+ NEXT_ARG_FWD(); -+ - #ifdef CONFIG_GACT_PROB - if (argc > 0) { - if (matches(*argv, "random") == 0) { -@@ -114,6 +113,7 @@ parse_gact(struct action_util *a, int *argc_p, char ***argv_p, - if (parse_action_control(&argc, &argv, - &pp.paction, false) == -1) - usage(); -+ NEXT_ARG_FWD(); - if (get_u16(&pp.pval, *argv, 10)) { - fprintf(stderr, - "Illegal probability val 0x%x\n", -diff --git a/tc/m_ife.c b/tc/m_ife.c -index 205efc9..4647f6a 100644 ---- a/tc/m_ife.c -+++ b/tc/m_ife.c -@@ -159,6 +159,7 @@ static int parse_ife(struct action_util *a, int *argc_p, char ***argv_p, - - parse_action_control_dflt(&argc, &argv, &p.action, false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_mirred.c b/tc/m_mirred.c -index 3870d3a..aa7ce6d 100644 ---- a/tc/m_mirred.c -+++ b/tc/m_mirred.c -@@ -202,8 +202,10 @@ parse_direction(struct action_util *a, int *argc_p, char ***argv_p, - } - - -- if (p.eaction == TCA_EGRESS_MIRROR || p.eaction == TCA_INGRESS_MIRROR) -+ if (p.eaction == TCA_EGRESS_MIRROR || p.eaction == TCA_INGRESS_MIRROR) { - parse_action_control(&argc, &argv, &p.action, false); -+ NEXT_ARG_FWD(); -+ } - - if (argc) { - if (iok && matches(*argv, "index") == 0) { -diff --git a/tc/m_nat.c b/tc/m_nat.c -index 1e4ff51..f5de4d4 100644 ---- a/tc/m_nat.c -+++ b/tc/m_nat.c -@@ -116,6 +116,7 @@ parse_nat(struct action_util *a, int *argc_p, char ***argv_p, int tca_id, struct - - parse_action_control_dflt(&argc, &argv, &sel.action, false, TC_ACT_OK); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_pedit.c b/tc/m_pedit.c -index 26549ee..dc57f14 100644 ---- a/tc/m_pedit.c -+++ b/tc/m_pedit.c -@@ -672,6 +672,7 @@ int parse_pedit(struct action_util *a, int *argc_p, char ***argv_p, int tca_id, - - parse_action_control_dflt(&argc, &argv, &sel.sel.action, false, TC_ACT_OK); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_sample.c b/tc/m_sample.c -index ff5ee6b..31774c0 100644 ---- a/tc/m_sample.c -+++ b/tc/m_sample.c -@@ -100,6 +100,7 @@ static int parse_sample(struct action_util *a, int *argc_p, char ***argv_p, - - parse_action_control_dflt(&argc, &argv, &p.action, false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_skbedit.c b/tc/m_skbedit.c -index aa374fc..c41a7bb 100644 ---- a/tc/m_skbedit.c -+++ b/tc/m_skbedit.c -@@ -123,6 +123,7 @@ parse_skbedit(struct action_util *a, int *argc_p, char ***argv_p, int tca_id, - parse_action_control_dflt(&argc, &argv, &sel.action, - false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_skbmod.c b/tc/m_skbmod.c -index 561b73f..bc268df 100644 ---- a/tc/m_skbmod.c -+++ b/tc/m_skbmod.c -@@ -124,6 +124,7 @@ static int parse_skbmod(struct action_util *a, int *argc_p, char ***argv_p, - - parse_action_control_dflt(&argc, &argv, &p.action, false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_tunnel_key.c b/tc/m_tunnel_key.c -index 1cdd035..2dc9187 100644 ---- a/tc/m_tunnel_key.c -+++ b/tc/m_tunnel_key.c -@@ -175,6 +175,7 @@ static int parse_tunnel_key(struct action_util *a, int *argc_p, char ***argv_p, - parse_action_control_dflt(&argc, &argv, &parm.action, - false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/m_vlan.c b/tc/m_vlan.c -index 161759f..edae0d1 100644 ---- a/tc/m_vlan.c -+++ b/tc/m_vlan.c -@@ -131,6 +131,7 @@ static int parse_vlan(struct action_util *a, int *argc_p, char ***argv_p, - parse_action_control_dflt(&argc, &argv, &parm.action, - false, TC_ACT_PIPE); - -+ NEXT_ARG_FWD(); - if (argc) { - if (matches(*argv, "index") == 0) { - NEXT_ARG(); -diff --git a/tc/tc_util.c b/tc/tc_util.c -index 1887905..ee9a70a 100644 ---- a/tc/tc_util.c -+++ b/tc/tc_util.c -@@ -586,7 +586,6 @@ static int __parse_action_control(int *argc_p, char ***argv_p, int *result_p, - } - result |= jump_cnt; - } -- NEXT_ARG_FWD(); - *argc_p = argc; - *argv_p = argv; - *result_p = result; --- -cgit v1.1 - diff --git a/sys-apps/iproute2/files/iproute2-4.17.0-configure-nomagic.patch b/sys-apps/iproute2/files/iproute2-4.17.0-configure-nomagic.patch deleted file mode 100644 index 30b5db3bc3c1..000000000000 --- a/sys-apps/iproute2/files/iproute2-4.17.0-configure-nomagic.patch +++ /dev/null @@ -1,207 +0,0 @@ -The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets -a variable as well as modifying CFLAGS & LDLIBS. - -If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks -are still in place. - -Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they -are only passed when correctly needed. - -Prior Gentoo testcase for reproduction: -USE=minimal ebuild ... compile. -- Linking with libelf, libmnl & libcap based only on presence. -- Links based on libselinux based only on presence. - -Closes: https://bugs.gentoo.org/643722 -Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> - -Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org> -Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org> - ---- iproute2-4.17.0/bridge/Makefile -+++ iproute2-4.17.0/bridge/Makefile -@@ -2,6 +2,7 @@ - BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o - - include ../config.mk -+include ../config.include - - all: bridge - ---- iproute2-4.17.0/config.include -+++ iproute2-4.17.0/config.include -@@ -0,0 +1,26 @@ -+# We can only modify CFLAGS/LDLIBS after all the config options are known. -+ifeq ($(IP_CONFIG_SETNS),y) -+ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS) -+endif -+ifeq ($(HAVE_ELF),y) -+ CFLAGS += $(HAVE_ELF_CFLAGS) -+ LDLIBS += $(HAVE_ELF_LDLIBS) -+endif -+ifeq ($(HAVE_SELINUX),y) -+ CFLAGS += $(HAVE_SELINUX_CFLAGS) -+ LDLIBS += $(HAVE_SELINUX_LDLIBS) -+endif -+ifeq ($(HAVE_MNL),y) -+ CFLAGS += $(HAVE_MNL_CFLAGS) -+ LDLIBS += $(HAVE_MNL_LDLIBS) -+endif -+ifeq ($(HAVE_CAP),y) -+ CFLAGS += $(HAVE_CAP_CFLAGS) -+ LDLIBS += $(HAVE_CAP_LDLIBS) -+endif -+ -+# Rules can only be declared after all variables in them are known. -+%.o: %.c -+ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $< -+ -+# vim: ft=make: ---- iproute2-4.17.0/configure -+++ iproute2-4.17.0/configure -@@ -212,7 +212,7 @@ - then - echo "IP_CONFIG_SETNS:=y" >>$CONFIG - echo "yes" -- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG -+ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG - else - echo "no" - fi -@@ -257,8 +257,8 @@ - echo "HAVE_ELF:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG -- echo 'LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG -+ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' `${PKG_CONFIG} libelf --cflags` >> $CONFIG -+ echo 'HAVE_ELF_LDLIBS += ' `${PKG_CONFIG} libelf --libs` >>$CONFIG - else - echo "no" - fi -@@ -272,8 +272,8 @@ - echo "HAVE_SELINUX:=y" >>$CONFIG - echo "yes" - -- echo 'LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG -- echo 'CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG -+ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' `${PKG_CONFIG} --cflags libselinux` >>$CONFIG -+ echo 'HAVE_SELINUX_LDLIBS +=' `${PKG_CONFIG} --libs libselinux` >>$CONFIG - else - echo "no" - fi -@@ -286,8 +286,8 @@ - echo "HAVE_MNL:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG -+ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' `${PKG_CONFIG} libmnl --cflags` >>$CONFIG -+ echo 'HAVE_MNL_LDLIBS +=' `${PKG_CONFIG} libmnl --libs` >> $CONFIG - else - echo "no" - fi -@@ -343,8 +343,8 @@ - echo "HAVE_CAP:=y" >>$CONFIG - echo "yes" - -- echo 'CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG -- echo 'LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG -+ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' `${PKG_CONFIG} libcap --cflags` >>$CONFIG -+ echo 'HAVE_CAP_LDLIBS +=' `${PKG_CONFIG} libcap --libs` >> $CONFIG - else - echo "no" - fi -@@ -426,7 +426,3 @@ - - echo -n "libcap support: " - check_cap -- --echo >> $CONFIG --echo "%.o: %.c" >> $CONFIG --echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<' >> $CONFIG ---- iproute2-4.17.0/devlink/Makefile -+++ iproute2-4.17.0/devlink/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - TARGETS := - ---- iproute2-4.17.0/genl/Makefile -+++ iproute2-4.17.0/genl/Makefile -@@ -2,6 +2,7 @@ - GENLOBJ=genl.o - - include ../config.mk -+include ../config.include - SHARED_LIBS ?= y - - CFLAGS += -fno-strict-aliasing ---- iproute2-4.17.0/ip/Makefile -+++ iproute2-4.17.0/ip/Makefile -@@ -15,6 +15,7 @@ - RTMONOBJ=rtmon.o - - include ../config.mk -+include ../config.include - - ALLOBJ=$(IPOBJ) $(RTMONOBJ) - SCRIPTS=ifcfg rtpr routel routef ---- iproute2-4.17.0/lib/Makefile -+++ iproute2-4.17.0/lib/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - CFLAGS += -fPIC - ---- iproute2-4.17.0/misc/Makefile -+++ iproute2-4.17.0/misc/Makefile -@@ -5,6 +5,7 @@ - TARGETS=ss nstat ifstat rtacct lnstat - - include ../config.mk -+include ../config.include - - ifeq ($(HAVE_BERKELEY_DB),y) - TARGETS += arpd ---- iproute2-4.17.0/netem/Makefile -+++ iproute2-4.17.0/netem/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - DISTGEN = maketable normal pareto paretonormal - DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist ---- iproute2-4.17.0/rdma/Makefile -+++ iproute2-4.17.0/rdma/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - TARGETS := - ---- iproute2-4.17.0/tc/Makefile -+++ iproute2-4.17.0/tc/Makefile -@@ -4,6 +4,7 @@ - emp_ematch.yacc.o emp_ematch.lex.o - - include ../config.mk -+include ../config.include - - SHARED_LIBS ?= y - ---- iproute2-4.17.0/tipc/Makefile -+++ iproute2-4.17.0/tipc/Makefile -@@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 - include ../config.mk -+include ../config.include - - TARGETS := - diff --git a/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch b/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch deleted file mode 100644 index 31733e99f72c..000000000000 --- a/sys-apps/iproute2/files/iproute2-4.20.0-no-ipv6.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- iproute2-4.20.0/ip/ipmonitor.c -+++ iproute2-4.20.0/ip/ipmonitor.c -@@ -118,7 +118,6 @@ - - case RTM_NEWPREFIX: - print_headers(fp, "[PREFIX]", ctrl); -- print_prefix(n, arg); - return 0; - - case RTM_NEWRULE: ---- iproute2-4.20.0/ip/iptunnel.c -+++ iproute2-4.20.0/ip/iptunnel.c -@@ -549,13 +549,6 @@ - break; - case AF_INET: - break; -- /* -- * This is silly enough but we have no easy way to make it -- * protocol-independent because of unarranged structure between -- * IPv4 and IPv6. -- */ -- case AF_INET6: -- return do_ip6tunnel(argc, argv); - default: - fprintf(stderr, "Unsupported protocol family: %d\n", preferred_family); - exit(-1); ---- iproute2-4.20.0/ip/Makefile -+++ iproute2-4.20.0/ip/Makefile -@@ -1,7 +1,7 @@ - # SPDX-License-Identifier: GPL-2.0 - IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \ -- rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -- ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o iptuntap.o iptoken.o \ -+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \ -+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o iptoken.o \ - ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o iplink_dummy.o \ - iplink_ifb.o iplink_nlmon.o iplink_team.o iplink_vcan.o iplink_vxcan.o \ - iplink_vlan.o link_veth.o link_gre.o iplink_can.o iplink_xdp.o \ diff --git a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch b/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch deleted file mode 100644 index e704f65c113f..000000000000 --- a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 202d79fcf4e184818bd074f8c06e94e700670898 Mon Sep 17 00:00:00 2001 -From: Jory Pratt <anarchy@gentoo.org> -Date: Tue, 11 Jun 2019 01:48:01 -0500 -Subject: [PATCH] including sysinfo.h from kernel.h makes no sense whatsoever, - but removing it breaks glibc's userspace header, which includes kernel.h - instead of sysinfo.h from their sys/sysinfo.h. this seems to be a historical - mistake. on musl, including any header that uses kernel.h directly or - indirectly plus sys/sysinfo.h will produce a compile error due to - redefinition of struct sysinfo. so for now, only include it on glibc in order - not to break their headers. - -Signed-off-by: Jory Pratt <anarchy@gentoo.org> ---- - include/uapi/linux/kernel.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h -index d99ffa1..f917115 100644 ---- a/include/uapi/linux/kernel.h -+++ b/include/uapi/linux/kernel.h -@@ -2,7 +2,9 @@ - #ifndef _LINUX_KERNEL_H - #define _LINUX_KERNEL_H - -+#ifdef __GLIBC__ - #include <linux/sysinfo.h> -+#endif - - /* - * 'kernel.h' contains some often-used function prototypes etc --- -2.22.0 diff --git a/sys-apps/iproute2/files/iproute2-5.7.0-mix-signal.h-include.patch b/sys-apps/iproute2/files/iproute2-5.7.0-mix-signal.h-include.patch new file mode 100644 index 000000000000..be606c107fc2 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-5.7.0-mix-signal.h-include.patch @@ -0,0 +1,10 @@ +--- a/devlink/devlink.c ++++ b/devlink/devlink.c +@@ -15,6 +15,7 @@ + #include <string.h> + #include <stdbool.h> + #include <unistd.h> ++#include <signal.h> + #include <getopt.h> + #include <limits.h> + #include <errno.h> diff --git a/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch b/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch new file mode 100644 index 000000000000..888091387fe9 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.4.0-disable-libbsd-fallback.patch @@ -0,0 +1,25 @@ + +Disable the optional libbsd fallback in favor of iproute2's own +strlcat/strlcpy routines. This prevents automagic linking and +all sorts of other related problems. + +Bug: https://bugs.gentoo.org/911727 +Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com> + +--- a/configure 2023-09-05 16:20:48.000000000 +0200 ++++ b/configure 2023-09-05 16:29:15.850347415 +0200 +@@ -454,14 +454,8 @@ EOF + if $CC -I$INCLUDE -o $TMPDIR/strtest $TMPDIR/strtest.c >/dev/null 2>&1; then + echo "no" + else +- if ${PKG_CONFIG} libbsd --exists; then +- echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG +- echo 'HAVE_LIBBSD_LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG +- echo "no" +- else + echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG + echo "yes" +- fi + fi + rm -f $TMPDIR/strtest.c $TMPDIR/strtest + } diff --git a/sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch b/sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch index 94df85017dfe..4618fb9c94ef 100644 --- a/sys-apps/iproute2/files/iproute2-4.20.0-configure-nomagic.patch +++ b/sys-apps/iproute2/files/iproute2-6.5.0-configure-nomagic-nolibbsd.patch @@ -9,7 +9,7 @@ are only passed when correctly needed. Prior Gentoo testcase for reproduction: USE=minimal ebuild ... compile. -- Linking with libelf, libmnl & libcap based only on presence. +- Linking with libbsd, libelf, libmnl & libcap based only on presence. - Links based on libselinux based only on presence. Closes: https://bugs.gentoo.org/643722 @@ -18,19 +18,14 @@ Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org> Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org> Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> +Forward-ported from v4.20.0 to v5.11.0 by Lars Wendler <polynomial-c@gentoo.org> +Forward-ported from v5.11.0 to v5.12.0 by Lars Wendler <polynomial-c@gentoo.org> ---- iproute2-4.20.0/bridge/Makefile -+++ iproute2-4.20.0/bridge/Makefile -@@ -2,6 +2,7 @@ - BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o - - include ../config.mk -+include ../config.include - - all: bridge - ---- iproute2-4.20.0/config.include -+++ iproute2-4.20.0/config.include +Update 2023-09-05: Removed libbsd enforcement from config.include for bug #911727 +by Holger Hoffstätte <holger@applied-asynchrony.com> + +--- a/config.include ++++ b/config.include @@ -0,0 +1,26 @@ +# We can only modify CFLAGS/LDLIBS after all the config options are known. +ifeq ($(IP_CONFIG_SETNS),y) @@ -58,9 +53,20 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> + $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $< + +# vim: ft=make: ---- iproute2-4.20.0/configure -+++ iproute2-4.20.0/configure -@@ -188,7 +188,7 @@ + +--- a/bridge/Makefile ++++ b/bridge/Makefile +@@ -2,6 +2,7 @@ + BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o vni.o + + include ../config.mk ++include ../config.include + + all: bridge + +--- a/configure ++++ b/configure +@@ -202,7 +202,7 @@ EOF if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then echo "IP_CONFIG_SETNS:=y" >>$CONFIG echo "yes" @@ -69,7 +75,7 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> else echo "no" fi -@@ -231,8 +231,8 @@ +@@ -269,8 +269,8 @@ check_elf() echo "HAVE_ELF:=y" >>$CONFIG echo "yes" @@ -80,7 +86,7 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> else echo "no" fi -@@ -245,8 +245,8 @@ +@@ -388,8 +388,8 @@ check_selinux() echo "HAVE_SELINUX:=y" >>$CONFIG echo "yes" @@ -91,7 +97,7 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> else echo "no" fi -@@ -258,8 +258,8 @@ +@@ -414,8 +414,8 @@ check_mnl() echo "HAVE_MNL:=y" >>$CONFIG echo "yes" @@ -102,7 +108,18 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> else echo "no" fi -@@ -316,8 +316,8 @@ +@@ -455,8 +455,8 @@ EOF + echo "no" + else + if ${PKG_CONFIG} libbsd --exists; then +- echo 'CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG +- echo 'LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG ++ echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' `${PKG_CONFIG} libbsd --cflags` >>$CONFIG ++ echo 'HAVE_LIBBSD_LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG + echo "no" + else + echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG +@@ -472,8 +472,8 @@ check_cap() echo "HAVE_CAP:=y" >>$CONFIG echo "yes" @@ -113,7 +130,7 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> else echo "no" fi -@@ -397,7 +397,3 @@ +@@ -633,7 +633,3 @@ check_strlcpy echo -n "libcap support: " check_cap @@ -121,17 +138,26 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> -echo >> $CONFIG -echo "%.o: %.c" >> $CONFIG -echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG ---- iproute2-4.20.0/devlink/Makefile -+++ iproute2-4.20.0/devlink/Makefile +--- a/dcb/Makefile ++++ b/dcb/Makefile @@ -1,5 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 include ../config.mk +include ../config.include - TARGETS := + DCBOBJ = dcb.o \ + dcb_app.o \ +--- a/devlink/Makefile ++++ b/devlink/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include ---- iproute2-4.20.0/genl/Makefile -+++ iproute2-4.20.0/genl/Makefile + DEVLINKOBJ = devlink.o mnlg.o + TARGETS += devlink +--- a/genl/Makefile ++++ b/genl/Makefile @@ -2,6 +2,7 @@ GENLOBJ=genl.o @@ -140,18 +166,18 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> SHARED_LIBS ?= y CFLAGS += -fno-strict-aliasing ---- iproute2-4.20.0/ip/Makefile -+++ iproute2-4.20.0/ip/Makefile -@@ -15,6 +15,7 @@ +--- a/ip/Makefile ++++ b/ip/Makefile +@@ -18,6 +18,7 @@ IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \ RTMONOBJ=rtmon.o include ../config.mk +include ../config.include ALLOBJ=$(IPOBJ) $(RTMONOBJ) - SCRIPTS=ifcfg rtpr routel routef ---- iproute2-4.20.0/lib/Makefile -+++ iproute2-4.20.0/lib/Makefile + SCRIPTS=routel +--- a/lib/Makefile ++++ b/lib/Makefile @@ -1,5 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 include ../config.mk @@ -159,9 +185,9 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> CFLAGS += -fPIC ---- iproute2-4.20.0/misc/Makefile -+++ iproute2-4.20.0/misc/Makefile -@@ -5,6 +5,7 @@ +--- a/misc/Makefile ++++ b/misc/Makefile +@@ -5,6 +5,7 @@ LNSTATOBJ=lnstat.o lnstat_util.o TARGETS=ss nstat ifstat rtacct lnstat include ../config.mk @@ -169,8 +195,8 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> ifeq ($(HAVE_BERKELEY_DB),y) TARGETS += arpd ---- iproute2-4.20.0/netem/Makefile -+++ iproute2-4.20.0/netem/Makefile +--- a/netem/Makefile ++++ b/netem/Makefile @@ -1,5 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 include ../config.mk @@ -178,31 +204,43 @@ Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> DISTGEN = maketable normal pareto paretonormal DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist ---- iproute2-4.20.0/rdma/Makefile -+++ iproute2-4.20.0/rdma/Makefile +--- a/rdma/Makefile ++++ b/rdma/Makefile @@ -1,5 +1,6 @@ - # SPDX-License-Identifier: GPL-2.0 + # SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB include ../config.mk +include ../config.include - TARGETS := + CFLAGS += -I./include/uapi/ ---- iproute2-4.20.0/tc/Makefile -+++ iproute2-4.20.0/tc/Makefile -@@ -4,6 +4,7 @@ - emp_ematch.yacc.o emp_ematch.lex.o +--- a/tc/Makefile ++++ b/tc/Makefile +@@ -4,6 +4,7 @@ TCOBJ= tc.o tc_qdisc.o tc_class.o tc_filter.o tc_util.o tc_monitor.o \ + emp_ematch.tab.o emp_ematch.lex.o include ../config.mk +include ../config.include SHARED_LIBS ?= y ---- iproute2-4.20.0/tipc/Makefile -+++ iproute2-4.20.0/tipc/Makefile +--- a/tipc/Makefile ++++ b/tipc/Makefile @@ -1,5 +1,6 @@ # SPDX-License-Identifier: GPL-2.0 include ../config.mk +include ../config.include - TARGETS := + TIPCOBJ=bearer.o \ + cmdl.o link.o \ +--- a/vdpa/Makefile ++++ b/vdpa/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + CFLAGS += -I./include/uapi/ + VDPAOBJ = vdpa.o +-- +2.42.0 + diff --git a/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch b/sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch index fa12dad2d79e..f2895021eb1b 100644 --- a/sys-apps/iproute2/files/iproute2-3.1.0-mtu.patch +++ b/sys-apps/iproute2/files/iproute2-6.5.0-mtu.patch @@ -17,10 +17,9 @@ to 2048 (disregarding weirdness of setting mtu to such values). Unless I missed something, this is harmless and feels cleaner, but if it's not allowed, documentation will have to be changed back to 2047 + extra explanation as well. - ---- iproute2/tc/tc_core.c -+++ iproute2/tc/tc_core.c -@@ -155,12 +155,12 @@ +--- a/tc/tc_core.c ++++ b/tc/tc_core.c +@@ -197,12 +197,12 @@ int tc_calc_size_table(struct tc_sizespec *s, __u16 **stab) } if (s->mtu == 0) @@ -35,14 +34,17 @@ explanation as well. s->cell_log++; *stab = malloc(s->tsize * sizeof(__u16)); ---- iproute2/tc/tc_stab.c -+++ iproute2/tc/tc_stab.c -@@ -32,7 +32,7 @@ +--- a/tc/tc_stab.c ++++ b/tc/tc_stab.c +@@ -27,7 +27,7 @@ static void stab_help(void) fprintf(stderr, - "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ] \n" + "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ]\n" " [ overhead BYTES ] [ linklayer TYPE ] ...\n" - " mtu : max packet size we create rate map for {2047}\n" + " mtu : max packet size we create size table for {2048}\n" " tsize : how many slots should size table have {512}\n" " mpu : minimum packet size used in rate computations\n" " overhead : per-packet size overhead used in rate computations\n" +-- +2.42.0 + diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch b/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch new file mode 100644 index 000000000000..0969ff0a7ab9 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.6.0-configure-Add-_GNU_SOURCE-to-strlcpy-configure-test.patch @@ -0,0 +1,25 @@ +https://lore.kernel.org/netdev/20231202024705.1375296-1-sam@gentoo.org/T/#u + +From 3dc0bf34c1571429c08a8d0c08a69502e3e4575c Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Sat, 2 Dec 2023 02:46:05 +0000 +Subject: [PATCH] configure: Add _GNU_SOURCE to strlcpy configure test + +>=glibc-2.38 adds strlcpy but it's guarded under a feature-test macro. Just +add _GNU_SOURCE to the configure test because we already pass _GNU_SOURCE unconditionally +in the Makefiles when building iproute2. + +Signed-off-by: Sam James <sam@gentoo.org> +--- a/configure ++++ b/configure +@@ -445,6 +445,7 @@ EOF + check_strlcpy() + { + cat >$TMPDIR/strtest.c <<EOF ++#define _GNU_SOURCE + #include <string.h> + int main(int argc, char **argv) { + char dst[10]; +-- +2.43.0 + diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch b/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch new file mode 100644 index 000000000000..03c125accc8c --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.6.0-makefile-use-usr-share-config.patch @@ -0,0 +1,57 @@ +https://bugs.gentoo.org/920054 +https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/patch/?id=962692356a1cc41932e43575f3c50927e455ab53 + +From 962692356a1cc41932e43575f3c50927e455ab53 Mon Sep 17 00:00:00 2001 +From: Andrea Claudi <aclaudi@redhat.com> +Date: Wed, 15 Nov 2023 18:25:35 +0100 +Subject: Makefile: use /usr/share/iproute2 for config files + +According to FHS: + +"/usr/lib includes object files and libraries. On some systems, it may +also include internal binaries that are not intended to be executed +directly by users or shell scripts." + +A better directory to store config files is /usr/share: + +"The /usr/share hierarchy is for all read-only architecture independent +data files. + +This hierarchy is intended to be shareable among all architecture +platforms of a given OS; thus, for example, a site with i386, Alpha, and +PPC platforms might maintain a single /usr/share directory that is +centrally-mounted." + +Accordingly, move configuration files to $(DATADIR)/iproute2. + +Fixes: 946753a4459b ("Makefile: ensure CONF_USR_DIR honours the libdir config") +Reported-by: Luca Boccassi <luca.boccassi@gmail.com> +Signed-off-by: Andrea Claudi <aclaudi@redhat.com> +Acked-by: Luca Boccassi <bluca@debian.org> +Reviewed-by: Simon Horman <horms@kernel.org> +Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index a24844cf0..8024d45ec 100644 +--- a/Makefile ++++ b/Makefile +@@ -16,12 +16,12 @@ endif + + PREFIX?=/usr + SBINDIR?=/sbin +-CONF_ETC_DIR?=/etc/iproute2 +-CONF_USR_DIR?=$(PREFIX)/lib/iproute2 + NETNS_RUN_DIR?=/var/run/netns + NETNS_ETC_DIR?=/etc/netns + DATADIR?=$(PREFIX)/share + HDRDIR?=$(PREFIX)/include/iproute2 ++CONF_ETC_DIR?=/etc/iproute2 ++CONF_USR_DIR?=$(DATADIR)/iproute2 + DOCDIR?=$(DATADIR)/doc/iproute2 + MANDIR?=$(DATADIR)/man + ARPDDIR?=/var/lib/arpd +-- +cgit 1.2.3-korg diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-musl-c99.patch b/sys-apps/iproute2/files/iproute2-6.6.0-musl-c99.patch new file mode 100644 index 000000000000..c277bd6d1128 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.6.0-musl-c99.patch @@ -0,0 +1,75 @@ +From 12416003e4c691afc732d26f0a07c3890c24b396 Mon Sep 17 00:00:00 2001 +From: Gabi Falk <gabifalk@gmx.com> +Date: Fri, 10 May 2024 14:36:12 +0000 +Subject: [PATCH] bridge/vlan.c: bridge/vlan.c: fix build with gcc 14 on musl + systems + +On glibc based systems the definition of 'struct timeval' is pulled in +with inclusion of <stdlib.h> header, but on musl based systems it +doesn't work this way. Missing definition triggers an +incompatible-pointer-types error with gcc 14 (warning on previous +versions of gcc): + +../include/json_print.h:80:30: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration + 80 | _PRINT_FUNC(tv, const struct timeval *) + | ^~~~~~~ +../include/json_print.h:50:37: note: in definition of macro '_PRINT_FUNC' + 50 | type value); \ + | ^~~~ +../include/json_print.h:80:30: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration + 80 | _PRINT_FUNC(tv, const struct timeval *) + | ^~~~~~~ +../include/json_print.h:55:45: note: in definition of macro '_PRINT_FUNC' + 55 | type value) \ + | ^~~~ +../include/json_print.h: In function 'print_tv': +../include/json_print.h:58:48: error: passing argument 5 of 'print_color_tv' from incompatible pointer type [-Wincompatible-pointer-types] + 58 | value); \ + | ^~~~~ + | | + | const struct timeval * + +Link: https://lore.kernel.org/netdev/20240510143613.1531283-1-gabifalk@gmx.com/T/#u +Signed-off-by: Gabi Falk <gabifalk@gmx.com> +--- + bridge/vlan.c | 1 + + bridge/vni.c | 1 + + vdpa/vdpa.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/bridge/vlan.c b/bridge/vlan.c +index 5352eb24..0a7e6c45 100644 +--- a/bridge/vlan.c ++++ b/bridge/vlan.c +@@ -4,6 +4,7 @@ + #include <unistd.h> + #include <fcntl.h> + #include <sys/socket.h> ++#include <sys/time.h> + #include <net/if.h> + #include <netinet/in.h> + #include <linux/if_bridge.h> +diff --git a/bridge/vni.c b/bridge/vni.c +index a7abe6de..e1f981fc 100644 +--- a/bridge/vni.c ++++ b/bridge/vni.c +@@ -10,6 +10,7 @@ + #include <string.h> + #include <fcntl.h> + #include <sys/socket.h> ++#include <sys/time.h> + #include <net/if.h> + #include <netinet/in.h> + #include <linux/if_link.h> +diff --git a/vdpa/vdpa.c b/vdpa/vdpa.c +index 6e4a9c11..43f87824 100644 +--- a/vdpa/vdpa.c ++++ b/vdpa/vdpa.c +@@ -3,6 +3,7 @@ + #include <stdio.h> + #include <getopt.h> + #include <errno.h> ++#include <sys/time.h> + #include <linux/genetlink.h> + #include <linux/if_ether.h> + #include <linux/vdpa.h> diff --git a/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch b/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch new file mode 100644 index 000000000000..79be096af231 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.6.0-revert-CONF_USR_DIR.patch @@ -0,0 +1,38 @@ +https://bugs.gentoo.org/920054 +https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/patch/?id=deb66acabe44d103c8368b62a76ef37aa074748d + +From deb66acabe44d103c8368b62a76ef37aa074748d Mon Sep 17 00:00:00 2001 +From: Luca Boccassi <bluca@debian.org> +Date: Mon, 6 Nov 2023 00:14:10 +0000 +Subject: Revert "Makefile: ensure CONF_USR_DIR honours the libdir config" + +LIBDIR in Debian and derivatives is not /usr/lib/, it's +/usr/lib/<architecture triplet>/, which is different, and it's the +wrong location where to install architecture-independent default +configuration files, which should always go to /usr/lib/ instead. +Installing these files to the per-architecture directory is not +the right thing, hence revert the change. + +This reverts commit 946753a4459bd035132a27bb2eb87529c1979b90. + +Signed-off-by: Luca Boccassi <bluca@debian.org> +Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 5c559c8dc..a24844cf0 100644 +--- a/Makefile ++++ b/Makefile +@@ -17,7 +17,7 @@ endif + PREFIX?=/usr + SBINDIR?=/sbin + CONF_ETC_DIR?=/etc/iproute2 +-CONF_USR_DIR?=$(LIBDIR)/iproute2 ++CONF_USR_DIR?=$(PREFIX)/lib/iproute2 + NETNS_RUN_DIR?=/var/run/netns + NETNS_ETC_DIR?=/etc/netns + DATADIR?=$(PREFIX)/share +-- +cgit 1.2.3-korg diff --git a/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch b/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch new file mode 100644 index 000000000000..04ef44ad826e --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.8.0-configure-nomagic-nolibbsd.patch @@ -0,0 +1,243 @@ +The hand-rolled configure script, for multiple options (selinux,mnl,elf), sets +a variable as well as modifying CFLAGS & LDLIBS. + +If config.mk is later amended to disable a feature, the CFLAGS/LDLIBS tweaks +are still in place. + +Push the CFLAGS/LDLIBS changes into new conditional Makefile code, so that they +are only passed when correctly needed. + +Prior Gentoo testcase for reproduction: +USE=minimal ebuild ... compile. +- Linking with libbsd, libelf, libmnl & libcap based only on presence. +- Links based on libselinux based only on presence. + +Closes: https://bugs.gentoo.org/643722 +Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> + +Forward-ported from v4.14.1 to v4.16.0 by Lars Wendler <polynomial-c@gentoo.org> +Added libcap to v4.17.0 by Lars Wendler <polynomial-c@gentoo.org> +Forward-ported from v4.17.0 to v4.20.0 by Lars Wendler <polynomial-c@gentoo.org> +Forward-ported from v4.20.0 to v5.11.0 by Lars Wendler <polynomial-c@gentoo.org> +Forward-ported from v5.11.0 to v5.12.0 by Lars Wendler <polynomial-c@gentoo.org> + +Update 2023-09-05: Removed libbsd enforcement from config.include for bug #911727 +by Holger Hoffstätte <holger@applied-asynchrony.com> + +--- a/config.include ++++ b/config.include +@@ -0,0 +1,26 @@ ++# We can only modify CFLAGS/LDLIBS after all the config options are known. ++ifeq ($(IP_CONFIG_SETNS),y) ++ CFLAGS += $(IP_CONFIG_SETNS_CFLAGS) ++endif ++ifeq ($(HAVE_ELF),y) ++ CFLAGS += $(HAVE_ELF_CFLAGS) ++ LDLIBS += $(HAVE_ELF_LDLIBS) ++endif ++ifeq ($(HAVE_SELINUX),y) ++ CFLAGS += $(HAVE_SELINUX_CFLAGS) ++ LDLIBS += $(HAVE_SELINUX_LDLIBS) ++endif ++ifeq ($(HAVE_MNL),y) ++ CFLAGS += $(HAVE_MNL_CFLAGS) ++ LDLIBS += $(HAVE_MNL_LDLIBS) ++endif ++ifeq ($(HAVE_CAP),y) ++ CFLAGS += $(HAVE_CAP_CFLAGS) ++ LDLIBS += $(HAVE_CAP_LDLIBS) ++endif ++ ++# Rules can only be declared after all variables in them are known. ++%.o: %.c ++ $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $< ++ ++# vim: ft=make: + +--- a/bridge/Makefile ++++ b/bridge/Makefile +@@ -2,6 +2,7 @@ + BROBJ = bridge.o fdb.o monitor.o link.o mdb.o vlan.o vni.o + + include ../config.mk ++include ../config.include + + all: bridge + +--- a/configure ++++ b/configure +@@ -154,7 +154,7 @@ EOF + if $CC -I$INCLUDE -o $TMPDIR/setnstest $TMPDIR/setnstest.c >/dev/null 2>&1; then + echo "IP_CONFIG_SETNS:=y" >>$CONFIG + echo "yes" +- echo "CFLAGS += -DHAVE_SETNS" >>$CONFIG ++ echo "IP_CONFIG_SETNS_CFLAGS += -DHAVE_SETNS" >>$CONFIG + else + echo "no" + fi +@@ -221,8 +221,8 @@ check_elf() + echo "HAVE_ELF:=y" >>$CONFIG + echo "yes" + +- echo 'CFLAGS += -DHAVE_ELF' "$(${PKG_CONFIG} libelf --cflags)" >> $CONFIG +- echo 'LDLIBS += ' "$(${PKG_CONFIG} libelf --libs)" >>$CONFIG ++ echo 'HAVE_ELF_CFLAGS += -DHAVE_ELF' "$(${PKG_CONFIG} libelf --cflags)" >> $CONFIG ++ echo 'HAVE_ELF_LDLIBS += ' "$(${PKG_CONFIG} libelf --libs)" >>$CONFIG + else + echo "no" + fi +@@ -340,8 +340,8 @@ check_selinux() + echo "HAVE_SELINUX:=y" >>$CONFIG + echo "yes" + +- echo 'LDLIBS +=' "$(${PKG_CONFIG} --libs libselinux)" >>$CONFIG +- echo 'CFLAGS += -DHAVE_SELINUX' "$(${PKG_CONFIG} --cflags libselinux)" >>$CONFIG ++ echo 'HAVE_SELINUX_LDLIBS +=' "$(${PKG_CONFIG} --libs libselinux)" >>$CONFIG ++ echo 'HAVE_SELINUX_CFLAGS += -DHAVE_SELINUX' "$(${PKG_CONFIG} --cflags libselinux)" >>$CONFIG + else + echo "no" + fi +@@ -366,8 +366,8 @@ check_mnl() + echo "HAVE_MNL:=y" >>$CONFIG + echo "yes" + +- echo 'CFLAGS += -DHAVE_LIBMNL' "$(${PKG_CONFIG} libmnl --cflags)" >>$CONFIG +- echo 'LDLIBS +=' "$(${PKG_CONFIG} libmnl --libs)" >> $CONFIG ++ echo 'HAVE_MNL_CFLAGS += -DHAVE_LIBMNL' "$(${PKG_CONFIG} libmnl --cflags)" >>$CONFIG ++ echo 'HAVE_MNL_LDLIBS +=' "$(${PKG_CONFIG} libmnl --libs)" >> $CONFIG + else + echo "no" + fi +@@ -408,8 +408,8 @@ EOF + echo "no" + else + if ${PKG_CONFIG} libbsd --exists; then +- echo 'CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG +- echo 'LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG ++ echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG ++ echo 'HAVE_LIBBSD_LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG + echo "no" + else + echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG +@@ -425,8 +425,8 @@ check_cap() + echo "HAVE_CAP:=y" >>$CONFIG + echo "yes" + +- echo 'CFLAGS += -DHAVE_LIBCAP' "$(${PKG_CONFIG} libcap --cflags)" >>$CONFIG +- echo 'LDLIBS +=' "$(${PKG_CONFIG} libcap --libs)" >> $CONFIG ++ echo 'HAVE_CAP_CFLAGS += -DHAVE_LIBCAP' "$(${PKG_CONFIG} libcap --cflags)" >>$CONFIG ++ echo 'HAVE_CAP_LDLIBS +=' "$(${PKG_CONFIG} libcap --libs)" >> $CONFIG + else + echo "no" + fi +@@ -614,7 +614,3 @@ check_cap + + echo -n "color output: " + check_color +- +-echo >> $CONFIG +-echo "%.o: %.c" >> $CONFIG +-echo ' $(QUIET_CC)$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c -o $@ $<' >> $CONFIG +--- a/dcb/Makefile ++++ b/dcb/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + DCBOBJ = dcb.o \ + dcb_app.o \ +--- a/devlink/Makefile ++++ b/devlink/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + DEVLINKOBJ = devlink.o mnlg.o + TARGETS += devlink +--- a/genl/Makefile ++++ b/genl/Makefile +@@ -2,6 +2,7 @@ + GENLOBJ=genl.o + + include ../config.mk ++include ../config.include + SHARED_LIBS ?= y + + CFLAGS += -fno-strict-aliasing +--- a/ip/Makefile ++++ b/ip/Makefile +@@ -18,6 +18,7 @@ IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \ + RTMONOBJ=rtmon.o + + include ../config.mk ++include ../config.include + + ALLOBJ=$(IPOBJ) $(RTMONOBJ) + SCRIPTS=routel +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + CFLAGS += -fPIC + +--- a/misc/Makefile ++++ b/misc/Makefile +@@ -5,6 +5,7 @@ LNSTATOBJ=lnstat.o lnstat_util.o + TARGETS=ss nstat ifstat rtacct lnstat + + include ../config.mk ++include ../config.include + + ifeq ($(HAVE_BERKELEY_DB),y) + TARGETS += arpd +--- a/netem/Makefile ++++ b/netem/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + DISTGEN = maketable normal pareto paretonormal + DISTDATA = normal.dist pareto.dist paretonormal.dist experimental.dist +--- a/rdma/Makefile ++++ b/rdma/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB + include ../config.mk ++include ../config.include + + CFLAGS += -I./include/uapi/ + +--- a/tc/Makefile ++++ b/tc/Makefile +@@ -4,6 +4,7 @@ TCOBJ= tc.o tc_qdisc.o tc_class.o tc_filter.o tc_util.o tc_monitor.o \ + emp_ematch.tab.o emp_ematch.lex.o + + include ../config.mk ++include ../config.include + + SHARED_LIBS ?= y + +--- a/tipc/Makefile ++++ b/tipc/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + TIPCOBJ=bearer.o \ + cmdl.o link.o \ +--- a/vdpa/Makefile ++++ b/vdpa/Makefile +@@ -1,5 +1,6 @@ + # SPDX-License-Identifier: GPL-2.0 + include ../config.mk ++include ../config.include + + CFLAGS += -I./include/uapi/ + VDPAOBJ = vdpa.o diff --git a/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch b/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch new file mode 100644 index 000000000000..0c1eef227499 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.8.0-disable-libbsd-fallback.patch @@ -0,0 +1,25 @@ + +Disable the optional libbsd fallback in favor of iproute2's own +strlcat/strlcpy routines. This prevents automagic linking and +all sorts of other related problems. + +Bug: https://bugs.gentoo.org/911727 +Signed-off-by: Holger Hoffstätte <holger@applied-asynchrony.com> + +--- a/configure ++++ b/configure +@@ -407,14 +407,8 @@ EOF + if $CC -I$INCLUDE -o $TMPDIR/strtest $TMPDIR/strtest.c >/dev/null 2>&1; then + echo "no" + else +- if ${PKG_CONFIG} libbsd --exists; then +- echo 'HAVE_LIBBSD_CFLAGS += -DHAVE_LIBBSD' "$(${PKG_CONFIG} libbsd --cflags)" >>$CONFIG +- echo 'HAVE_LIBBSD_LDLIBS +=' "$(${PKG_CONFIG} libbsd --libs)" >> $CONFIG +- echo "no" +- else + echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG + echo "yes" +- fi + fi + rm -f $TMPDIR/strtest.c $TMPDIR/strtest + } diff --git a/sys-apps/iproute2/files/iproute2-6.9.0-mtu.patch b/sys-apps/iproute2/files/iproute2-6.9.0-mtu.patch new file mode 100644 index 000000000000..0e80ea122e06 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-6.9.0-mtu.patch @@ -0,0 +1,32 @@ +diff --git a/tc/tc_core.c b/tc/tc_core.c +index 37547e9b..58234c9f 100644 +--- a/tc/tc_core.c ++++ b/tc/tc_core.c +@@ -188,12 +188,12 @@ int tc_calc_size_table(struct tc_sizespec *s, __u16 **stab) + } + + if (s->mtu == 0) +- s->mtu = 2047; ++ s->mtu = 2048; + if (s->tsize == 0) + s->tsize = 512; + + s->cell_log = 0; +- while ((s->mtu >> s->cell_log) > s->tsize - 1) ++ while (((s->mtu - 1) >> s->cell_log) > s->tsize - 1) + s->cell_log++; + + *stab = malloc(s->tsize * sizeof(__u16)); +diff --git a/tc/tc_stab.c b/tc/tc_stab.c +index a7733726..f4ffd618 100644 +--- a/tc/tc_stab.c ++++ b/tc/tc_stab.c +@@ -27,7 +27,7 @@ static void stab_help(void) + fprintf(stderr, + "Usage: ... stab [ mtu BYTES ] [ tsize SLOTS ] [ mpu BYTES ]\n" + " [ overhead BYTES ] [ linklayer TYPE ] ...\n" +- " mtu : max packet size we create rate map for {2047}\n" ++ " mtu : max packet size we create size table for {2048}\n" + " tsize : how many slots should size table have {512}\n" + " mpu : minimum packet size used in rate computations\n" + " overhead : per-packet size overhead used in rate computations\n" |