diff --git a/iproute2-libxtables6.diff b/iproute2-libxtables6.diff new file mode 100644 index 0000000..5e7646c --- /dev/null +++ b/iproute2-libxtables6.diff @@ -0,0 +1,31 @@ +From: Jan Engelhardt +Date: 2011-06-01 00:52:29+0200 + +--- + tc/m_xt.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +Index: iproute2-2.6.38/tc/m_xt.c +=================================================================== +--- iproute2-2.6.38.orig/tc/m_xt.c ++++ iproute2-2.6.38/tc/m_xt.c +@@ -162,7 +162,8 @@ static int parse_ipt(struct action_util + return -1; + } + tcipt_globals.opts = +- xtables_merge_options(tcipt_globals.opts, ++ xtables_merge_options(tcipt_globals.orig_opts, ++ tcipt_globals.opts, + m->extra_opts, + &m->option_offset); + } else { +@@ -307,7 +308,8 @@ print_ipt(struct action_util *au,FILE * + } + + tcipt_globals.opts = +- xtables_merge_options(tcipt_globals.opts, ++ xtables_merge_options(tcipt_globals.orig_opts, ++ tcipt_globals.opts, + m->extra_opts, + &m->option_offset); + } else { diff --git a/iproute2-xt.diff b/iproute2-xt.diff new file mode 100644 index 0000000..36b8200 --- /dev/null +++ b/iproute2-xt.diff @@ -0,0 +1,22 @@ +From: Jan Engelhardt +Date: 2011-06-01 00:52:07+0200 + +--- + tc/m_xt.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +Index: iproute2-2.6.37/tc/m_xt.c +=================================================================== +--- iproute2-2.6.37.orig/tc/m_xt.c ++++ iproute2-2.6.37/tc/m_xt.c +@@ -343,8 +343,8 @@ print_ipt(struct action_util *au,FILE * + return 0; + } + +-struct action_util ipt_action_util = { +- .id = "ipt", ++struct action_util xt_action_util = { ++ .id = "xt", + .parse_aopt = parse_ipt, + .print_aopt = print_ipt, + }; diff --git a/iproute2.changes b/iproute2.changes index fb6c7cc..776f246 100644 --- a/iproute2.changes +++ b/iproute2.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue May 31 21:35:16 UTC 2011 - jengelh@medozas.de + +- Correct installation path of tc modules +- Restore symbol lookup in m_xt.so (bnc#660554, bnc#679172) +- Add patches to make m_xt build with libxtables6 + ------------------------------------------------------------------- Mon May 30 11:50:56 UTC 2011 - jengelh@medozas.de diff --git a/iproute2.spec b/iproute2.spec index 3b7b26d..f9df068 100644 --- a/iproute2.spec +++ b/iproute2.spec @@ -32,10 +32,11 @@ Patch0: %name-libdir-1.diff Patch1: %name-HZ.diff Patch2: %name-pdfdoc.diff Patch3: %name-memleak.diff +Patch4: iproute2-xt.diff +Patch5: iproute2-libxtables6.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: bison db-devel flex ghostscript-fonts-std ghostscript-x11 libpng-devel libtiff-devel sgmltool texlive-latex xorg-x11-devel -# iproute2 not adapted for iptables 1.4.11 -%define with_xt 0 +%define with_xt 1 %if 0%{?with_xt} BuildRequires: iptables-devel %endif @@ -78,6 +79,7 @@ as well as examples and other outdated files. %patch1 %patch2 %patch3 +%patch -P 4 -P 5 -p1 find . -name *.orig -print0 | xargs -r0 rm -v %build @@ -91,8 +93,9 @@ make pdf install -d $RPM_BUILD_ROOT/{etc/,sbin/,usr/{sbin,share/man/man{3,8}}} install -d $RPM_BUILD_ROOT/{/usr/include,%_libdir,/usr/share} make install DESTDIR=$RPM_BUILD_ROOT LIBDIR=%_libdir \ - MODDESTDIR="$RPM_BUILD_ROOT/%_libdir" -rm -f "$RPM_BUILD_ROOT/%_libdir/m_ipt.so" + MODDESTDIR="$RPM_BUILD_ROOT/%_libdir/tc" +# We have m_xt +rm -f "$RPM_BUILD_ROOT/%_libdir/tc/m_ipt.so" install lib/libnetlink.a $RPM_BUILD_ROOT/%_libdir install include/libnetlink.h $RPM_BUILD_ROOT/usr/include mv $RPM_BUILD_ROOT/usr/sbin/ip $RPM_BUILD_ROOT/sbin @@ -117,9 +120,7 @@ rm -rf $RPM_BUILD_ROOT %config(noreplace) /etc/iproute2/rt_realms %config(noreplace) /etc/iproute2/rt_tables %config(noreplace) /etc/iproute2/ematch_map -%if 0%{?with_xt} -%_libdir/m_xt.so -%endif +%_libdir/tc %dir /usr/share/tc %attr(644,root,root)/usr/share/tc/*