mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-22 15:01:00 +02:00
sys-apps/iproute2: Sync with latest upstream
This commit is contained in:
parent
d5b45e9a24
commit
cfd3764619
@ -1 +1 @@
|
|||||||
DIST iproute2-3.19.0.tar.xz 455004 SHA256 e2f9f8c36e166f2ba6c0e1e7a9ad84cdf7c1615b93df49dac44563d7b57fd7b0 SHA512 fc533b6a526cfda234f043ac25302a3206a81ab2a740640b997b6bfb22e6f94ddc21b704191a358ea8721a327ba785e0224a4b4129111ef5008b4003379c3706 WHIRLPOOL 6a0aa1a948286d7dcb3663d787167c27760d756385295bf0ca631920aed50fbd984c19204247097116ef0d4e293c3c8dbe13b0b44c6ec83e7815a7461293c89f
|
DIST iproute2-4.12.0.tar.xz 662424 SHA256 2e0a4c4262d9f6c169885a6e16c4c5c5f1ef6fd57b6a0e7b41f42be5bb6ebd7d SHA512 275147f71e7c4698654f0d6d0981ab42f6f108066508c15cfcd5d9e0d3aaf8d33291968d9f06cb03f5494d801cfabf8d53308aaf56fc4fa92c52b137e970a3b0 WHIRLPOOL 590cc191e96ff0b777373603186e4416f064931d529878ec783759f31fd99e1119bb0604e8a89dc98d350f80eca2bfef05a13bca7ce24302408072002c0b17b2
|
||||||
|
@ -1,28 +0,0 @@
|
|||||||
--- tc/Makefile
|
|
||||||
+++ tc/Makefile
|
|
||||||
@@ -89,7 +89,7 @@
|
|
||||||
endif
|
|
||||||
|
|
||||||
TCOBJ += $(TCMODULES)
|
|
||||||
-LDLIBS += -L. -ltc -lm
|
|
||||||
+LDLIBS += -L. -lm
|
|
||||||
|
|
||||||
ifeq ($(SHARED_LIBS),y)
|
|
||||||
LDLIBS += -ldl
|
|
||||||
@@ -117,12 +117,13 @@
|
|
||||||
$(CC) $(CFLAGS) $(LDFLAGS) -shared -fpic $< -o $@
|
|
||||||
|
|
||||||
|
|
||||||
-all: libtc.a tc $(TCSO)
|
|
||||||
+all: tc $(TCSO)
|
|
||||||
|
|
||||||
-tc: $(TCOBJ) $(TCLIB)
|
|
||||||
+tc: $(TCOBJ) libtc.a
|
|
||||||
+ $(CC) $^ $(LDFLAGS) $(LDLIBS) -o $@
|
|
||||||
|
|
||||||
libtc.a: $(TCLIB)
|
|
||||||
- $(AR) rcs $@ $(TCLIB)
|
|
||||||
+ $(AR) rcs $@ $^
|
|
||||||
|
|
||||||
install: all
|
|
||||||
mkdir -p $(MODDESTDIR)
|
|
@ -1,10 +1,16 @@
|
|||||||
https://bugs.gentoo.org/326849
|
--- iproute2-4.11.0/ip/ipmonitor.c
|
||||||
|
+++ iproute2-4.11.0/ip/ipmonitor.c
|
||||||
allow ipv6 to be disabled
|
@@ -114,7 +114,6 @@
|
||||||
|
}
|
||||||
--- a/ip/iptunnel.c
|
if (n->nlmsg_type == RTM_NEWPREFIX) {
|
||||||
+++ b/ip/iptunnel.c
|
print_headers(fp, "[PREFIX]", ctrl);
|
||||||
@@ -629,13 +629,6 @@ int do_iptunnel(int argc, char **argv)
|
- 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;
|
break;
|
||||||
case AF_INET:
|
case AF_INET:
|
||||||
break;
|
break;
|
||||||
@ -18,24 +24,14 @@ allow ipv6 to be disabled
|
|||||||
default:
|
default:
|
||||||
fprintf(stderr, "Unsupported protocol family: %d\n", preferred_family);
|
fprintf(stderr, "Unsupported protocol family: %d\n", preferred_family);
|
||||||
exit(-1);
|
exit(-1);
|
||||||
--- a/ip/Makefile
|
--- iproute2-4.11.0/ip/Makefile
|
||||||
+++ b/ip/Makefile
|
+++ iproute2-4.11.0/ip/Makefile
|
||||||
@@ -1,6 +1,6 @@
|
@@ -1,6 +1,6 @@
|
||||||
IPOBJ=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o ipnetns.o \
|
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 \
|
- 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 \
|
- 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 \
|
+ rtm_map.o iptunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \
|
||||||
+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o iptoken.o \
|
+ ipmaddr.o ipmonitor.o ipmroute.o iptuntap.o iptoken.o \
|
||||||
ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o \
|
ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o iplink_dummy.o \
|
||||||
iplink_vlan.o link_veth.o link_gre.o iplink_can.o \
|
iplink_ifb.o iplink_nlmon.o iplink_team.o iplink_vcan.o \
|
||||||
iplink_macvlan.o iplink_macvtap.o ipl2tp.o link_vti.o \
|
iplink_vlan.o link_veth.o link_gre.o iplink_can.o iplink_xdp.o \
|
||||||
--- a/ip/ipmonitor.c
|
|
||||||
+++ b/ip/ipmonitor.c
|
|
||||||
@@ -96,7 +96,6 @@ static int accept_msg(const struct socka
|
|
||||||
if (n->nlmsg_type == RTM_NEWPREFIX) {
|
|
||||||
if (prefix_banner)
|
|
||||||
fprintf(fp, "[PREFIX]");
|
|
||||||
- print_prefix(who, n, arg);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if (n->nlmsg_type == RTM_NEWRULE || n->nlmsg_type == RTM_DELRULE) {
|
|
@ -0,0 +1,38 @@
|
|||||||
|
From 2ac2f416072d9968a9ea2dd9f48168223a1147b0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
Date: Tue, 18 Jul 2017 14:09:06 +0300
|
||||||
|
Subject: [PATCH] Fix build with uClibc-ng
|
||||||
|
|
||||||
|
Add a local definition for IPPROTO_MH to fix build with uClibc-ng. As of
|
||||||
|
version 1.0.25, the uClibc-ng netinet/in.h header does not provide this
|
||||||
|
definition. The kernel provided definition is masked by libc-compat.h. Add
|
||||||
|
this local fix until uClibc-ng syncs netinet/in.h with glibc.
|
||||||
|
|
||||||
|
This partially reverts upstream commit a9ae195a2169 (xfrm: get #define's from
|
||||||
|
linux includes)
|
||||||
|
|
||||||
|
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||||
|
---
|
||||||
|
Upstream status: non upstreamable; local uClibc-ng compatibility fix
|
||||||
|
---
|
||||||
|
ip/xfrm.h | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/ip/xfrm.h b/ip/xfrm.h
|
||||||
|
index 54d80ce5e949..50b85550fb45 100644
|
||||||
|
--- a/ip/xfrm.h
|
||||||
|
+++ b/ip/xfrm.h
|
||||||
|
@@ -30,6 +30,10 @@
|
||||||
|
#include <linux/xfrm.h>
|
||||||
|
#include <linux/ipsec.h>
|
||||||
|
|
||||||
|
+#ifndef IPPROTO_MH
|
||||||
|
+# define IPPROTO_MH 135
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
#define XFRMS_RTA(x) ((struct rtattr*)(((char*)(x)) + NLMSG_ALIGN(sizeof(struct xfrm_usersa_info))))
|
||||||
|
#define XFRMS_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct xfrm_usersa_info))
|
||||||
|
|
||||||
|
--
|
||||||
|
2.13.2
|
||||||
|
|
@ -1,8 +1,7 @@
|
|||||||
# Copyright 1999-2015 Gentoo Foundation
|
# Copyright 1999-2017 Gentoo Foundation
|
||||||
# Distributed under the terms of the GNU General Public License v2
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
# $Header: /var/cvsroot/gentoo-x86/sys-apps/iproute2/iproute2-3.19.0.ebuild,v 1.1 2015/02/15 02:54:06 radhermit Exp $
|
|
||||||
|
|
||||||
EAPI="5"
|
EAPI=5
|
||||||
|
|
||||||
inherit eutils toolchain-funcs flag-o-matic multilib
|
inherit eutils toolchain-funcs flag-o-matic multilib
|
||||||
|
|
||||||
@ -11,36 +10,59 @@ if [[ ${PV} == "9999" ]] ; then
|
|||||||
inherit git-2
|
inherit git-2
|
||||||
else
|
else
|
||||||
SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
SRC_URI="mirror://kernel/linux/utils/net/${PN}/${P}.tar.xz"
|
||||||
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
|
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DESCRIPTION="kernel routing and traffic control utilities"
|
DESCRIPTION="kernel routing and traffic control utilities"
|
||||||
HOMEPAGE="http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2"
|
HOMEPAGE="https://wiki.linuxfoundation.org/networking/iproute2"
|
||||||
|
|
||||||
LICENSE="GPL-2"
|
LICENSE="GPL-2"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
IUSE="atm berkdb +iptables ipv6 minimal selinux"
|
IUSE="atm berkdb +iptables ipv6 minimal selinux"
|
||||||
|
|
||||||
RDEPEND="!net-misc/arpd
|
# We could make libmnl optional, but it's tiny, so eh
|
||||||
|
RDEPEND="
|
||||||
|
!net-misc/arpd
|
||||||
|
!minimal? ( net-libs/libmnl )
|
||||||
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
iptables? ( >=net-firewall/iptables-1.4.20:= )
|
||||||
!minimal? ( berkdb? ( sys-libs/db ) )
|
berkdb? ( sys-libs/db:= )
|
||||||
atm? ( net-dialup/linux-atm )
|
atm? ( net-dialup/linux-atm )
|
||||||
selinux? ( sys-libs/libselinux )"
|
selinux? ( sys-libs/libselinux )
|
||||||
DEPEND="${RDEPEND}
|
"
|
||||||
|
# We require newer linux-headers for ipset support #549948 and some defines #553876
|
||||||
|
DEPEND="
|
||||||
|
${RDEPEND}
|
||||||
app-arch/xz-utils
|
app-arch/xz-utils
|
||||||
iptables? ( virtual/pkgconfig )
|
iptables? ( virtual/pkgconfig )
|
||||||
sys-devel/bison
|
sys-devel/bison
|
||||||
sys-devel/flex
|
sys-devel/flex
|
||||||
>=sys-kernel/linux-headers-2.6.27
|
>=sys-kernel/linux-headers-3.16
|
||||||
elibc_glibc? ( >=sys-libs/glibc-2.7 )"
|
elibc_glibc? ( >=sys-libs/glibc-2.7 )
|
||||||
|
"
|
||||||
|
|
||||||
|
PATCHES=(
|
||||||
|
"${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
||||||
|
)
|
||||||
|
|
||||||
src_prepare() {
|
src_prepare() {
|
||||||
epatch "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907
|
if ! use ipv6 ; then
|
||||||
use ipv6 || epatch "${FILESDIR}"/${PN}-3.10.0-no-ipv6.patch #326849
|
PATCHES+=(
|
||||||
epatch "${FILESDIR}"/${PN}-3.19.0-fix-build.patch
|
"${FILESDIR}"/${PN}-4.11.0-no-ipv6.patch #326849
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Local uclibc-ng compat fix until uclibc-ng upstream can sync
|
||||||
|
# netinet/in.h with glibc. Resolves #626546.
|
||||||
|
if use elibc_uclibc ; then
|
||||||
|
PATCHES+=(
|
||||||
|
"${FILESDIR}"/${PN}-4.12.0-uclibc-ng-add-ipproto_mh.patch
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
|
||||||
|
epatch "${PATCHES[@]}"
|
||||||
|
|
||||||
sed -i \
|
sed -i \
|
||||||
-e '/^CC =/d' \
|
-e '/^CC :=/d' \
|
||||||
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
-e "/^LIBDIR/s:=.*:=/$(get_libdir):" \
|
||||||
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
-e "s:-O2:${CFLAGS} ${CPPFLAGS}:" \
|
||||||
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
-e "/^HOSTCC/s:=.*:= $(tc-getBUILD_CC):" \
|
||||||
@ -51,17 +73,14 @@ src_prepare() {
|
|||||||
# Use /run instead of /var/run.
|
# Use /run instead of /var/run.
|
||||||
sed -i \
|
sed -i \
|
||||||
-e 's:/var/run:/run:g' \
|
-e 's:/var/run:/run:g' \
|
||||||
ip/ipnetns.c \
|
include/namespace.h \
|
||||||
man/man8/ip-netns.8 || die
|
man/man8/ip-netns.8 || die
|
||||||
|
|
||||||
# build against system headers
|
# build against system headers
|
||||||
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
rm -r include/netinet #include/linux include/ip{,6}tables{,_common}.h include/libiptc
|
||||||
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
sed -i 's:TCPI_OPT_ECN_SEEN:16:' misc/ss.c || die
|
||||||
|
|
||||||
# don't build arpd if USE=-berkdb #81660
|
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc ip:' Makefile
|
||||||
use berkdb || sed -i '/^TARGETS=/s: arpd : :' misc/Makefile
|
|
||||||
|
|
||||||
use minimal && sed -i -e '/^SUBDIRS=/s:=.*:=lib tc:' Makefile
|
|
||||||
}
|
}
|
||||||
|
|
||||||
src_configure() {
|
src_configure() {
|
||||||
@ -70,15 +89,20 @@ src_configure() {
|
|||||||
# This sure is ugly. Should probably move into toolchain-funcs at some point.
|
# This sure is ugly. Should probably move into toolchain-funcs at some point.
|
||||||
local setns
|
local setns
|
||||||
pushd "${T}" >/dev/null
|
pushd "${T}" >/dev/null
|
||||||
echo 'main(){return setns();};' > test.c
|
printf '#include <sched.h>\nint main(){return setns(0, 0);}\n' > test.c
|
||||||
${CC} ${CFLAGS} ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
|
${CC} ${CFLAGS} ${CPPFLAGS} -D_GNU_SOURCE ${LDFLAGS} test.c >&/dev/null && setns=y || setns=n
|
||||||
echo 'main(){};' > test.c
|
echo 'int main(){return 0;}' > test.c
|
||||||
${CC} ${CFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
|
${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} test.c -lresolv >&/dev/null || sed -i '/^LDLIBS/s:-lresolv::' "${S}"/Makefile
|
||||||
popd >/dev/null
|
popd >/dev/null
|
||||||
|
|
||||||
cat <<-EOF > Config
|
cat <<-EOF > Config
|
||||||
TC_CONFIG_ATM := $(usex atm y n)
|
TC_CONFIG_ATM := $(usex atm y n)
|
||||||
TC_CONFIG_XT := $(usex iptables y n)
|
TC_CONFIG_XT := $(usex iptables y n)
|
||||||
|
TC_CONFIG_NO_XT := $(usex iptables n y)
|
||||||
|
# We've locked in recent enough kernel headers #549948
|
||||||
|
TC_CONFIG_IPSET := y
|
||||||
|
HAVE_BERKELEY_DB := $(usex berkdb y n)
|
||||||
|
HAVE_MNL := $(usex minimal n y)
|
||||||
HAVE_SELINUX := $(usex selinux y n)
|
HAVE_SELINUX := $(usex selinux y n)
|
||||||
IP_CONFIG_SETNS := ${setns}
|
IP_CONFIG_SETNS := ${setns}
|
||||||
# Use correct iptables dir, #144265 #293709
|
# Use correct iptables dir, #144265 #293709
|
||||||
@ -90,6 +114,7 @@ src_install() {
|
|||||||
if use minimal ; then
|
if use minimal ; then
|
||||||
into /
|
into /
|
||||||
dosbin tc/tc
|
dosbin tc/tc
|
||||||
|
dobin ip/ip
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -97,7 +122,7 @@ src_install() {
|
|||||||
DESTDIR="${D}" \
|
DESTDIR="${D}" \
|
||||||
LIBDIR="${EPREFIX}"/$(get_libdir) \
|
LIBDIR="${EPREFIX}"/$(get_libdir) \
|
||||||
SBINDIR="${EPREFIX}"/sbin \
|
SBINDIR="${EPREFIX}"/sbin \
|
||||||
CONFDIR="${EPREFIX}"/usr/share/iproute2 \
|
CONFDIR="${EPREFIX}"/etc/iproute2 \
|
||||||
DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
|
DOCDIR="${EPREFIX}"/usr/share/doc/${PF} \
|
||||||
MANDIR="${EPREFIX}"/usr/share/man \
|
MANDIR="${EPREFIX}"/usr/share/man \
|
||||||
ARPDDIR="${EPREFIX}"/var/lib/arpd \
|
ARPDDIR="${EPREFIX}"/var/lib/arpd \
|
@ -1,10 +1,13 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||||
<pkgmetadata>
|
<pkgmetadata>
|
||||||
<herd>base-system</herd>
|
<maintainer type="project">
|
||||||
|
<email>base-system@gentoo.org</email>
|
||||||
|
<name>Gentoo Base System</name>
|
||||||
|
</maintainer>
|
||||||
<use>
|
<use>
|
||||||
<flag name='berkdb'>build programs that use berkdb (just arpd)</flag>
|
<flag name="berkdb">build programs that use berkdb (just arpd)</flag>
|
||||||
<flag name='iptables'>include support for iptables filtering</flag>
|
<flag name="iptables">include support for iptables filtering</flag>
|
||||||
<flag name='minimal'>only install ip and tc programs</flag>
|
<flag name="minimal">only install ip and tc programs</flag>
|
||||||
</use>
|
</use>
|
||||||
</pkgmetadata>
|
</pkgmetadata>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user