diff --git a/.gitignore b/.gitignore index 4310480..c1467c4 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ iproute2-2.6.35.tar.bz2 /iproute2-3.15.0.tar.gz /iproute2-3.16.0.tar.gz /iproute2-3.19.0.tar.xz +/iproute2-4.0.0.tar.xz diff --git a/iproute.spec b/iproute.spec index 175f400..bb272c7 100644 --- a/iproute.spec +++ b/iproute.spec @@ -1,7 +1,7 @@ %global cbq_version v0.7.3 Summary: Advanced IP routing and network device configuration tools Name: iproute -Version: 3.19.0 +Version: 4.0.0 Release: 1%{?dist} Group: Applications/System URL: http://kernel.org/pub/linux/utils/net/%{name}2/ @@ -9,12 +9,6 @@ Source0: http://kernel.org/pub/linux/utils/net/%{name}2/%{name}2-%{ve Source1: cbq-0000.example Source2: avpkt -# Selective git diff between release and master. Updating this pachage -# using current may require updating one or more of the subsequent -# patches. -# -# git diff v3.19.0..master man -Patch0: iproute2-3.19.0-diff.patch # manpage/help improvements # # https://bugzilla.redhat.com/show_bug.cgi?id=1072441 @@ -23,42 +17,45 @@ Patch0: iproute2-3.19.0-diff.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1105438 # https://bugzilla.redhat.com/show_bug.cgi?id=1121261 # -# TODO submit upstream +# http://www.spinics.net/lists/netdev/msg325114.html Patch1: iproute2-3.19.0-docs.patch + # build system improvements # # (no bugzilla tickets) -# -# TODO submit upstream +# http://www.spinics.net/lists/netdev/msg325109.html Patch2: iproute2-3.19.0-build.patch + # ip-xfrm: support 'proto any' with 'sport' and 'dport' # # https://bugzilla.redhat.com/show_bug.cgi?id=497355 -# -# TODO: submit upstream +# http://www.spinics.net/lists/netdev/msg325111.html Patch3: iproute2-3.19.0-proto-any.patch + # cbq: fix find syntax in example # # https://bugzilla.redhat.com/show_bug.cgi?id=539232 -# -# TODO: submit upstream +# http://www.spinics.net/lists/netdev/msg325112.html Patch4: iproute2-3.19.0-cbq-example.patch + # ip-route: don't hide routes with RTM_F_CLONED by default # # (no bugzilla ticket) -# -# TODO: submit upstream +# http://www.spinics.net/lists/netdev/msg325115.html Patch5: iproute2-3.19.0-route-cloned.patch + # lnstat: dump to stdout, not stderr # -# TODO: submit upstream +# (no bugzilla ticket) +# http://www.spinics.net/lists/netdev/msg325113.html Patch6: iproute2-3.19.0-lnstat-stdout.patch + # lnstat: run indefinitely by default # # https://bugzilla.redhat.com/show_bug.cgi?id=977845 -# -# TODO: submit upstream +# http://www.spinics.net/lists/netdev/msg325110.html Patch7: iproute2-3.19.0-lnstat-interval.patch + # tc: add -OK option # # http://thread.gmane.org/gmane.linux.network/284101 @@ -66,7 +63,7 @@ Patch7: iproute2-3.19.0-lnstat-interval.patch # Rejected by upstream. # # TODO: Retry upstreaming and decide whether it's needed in Fedora. -Patch8: iproute2-3.11.0-tc-ok.patch +Patch8: iproute2-4.0.0-tc-ok.patch License: GPLv2+ and Public Domain BuildRequires: bison @@ -111,7 +108,6 @@ The libnetlink static library. %prep %setup -q -n %{name}2-%{version} -%patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 @@ -224,6 +220,9 @@ done %{_includedir}/libnetlink.h %changelog +* Tue Apr 14 2015 Pavel Šimerda - 4.0.0-1 +- new version 4.0.0 + * Fri Mar 13 2015 Pavel Šimerda - 3.19.0-1 - new version 3.19.0 diff --git a/iproute2-3.11.0-tc-ok.patch b/iproute2-3.11.0-tc-ok.patch deleted file mode 100644 index bc7ac13..0000000 --- a/iproute2-3.11.0-tc-ok.patch +++ /dev/null @@ -1,91 +0,0 @@ -From 3c4b5a852d5bb9070c7fb4428aa50f2e3e1f6e1b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= -Date: Thu, 19 Sep 2013 11:25:49 +0200 -Subject: [PATCH] Confirm success for each tc -batch command -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -If `tc -force -batch' is fed by a controlling program from a pipe, -it's not possible to recognize when a command has been processes -successfully. - -This patch adds an optional `-OK' option to the tc(8) tool, so `tc --force -OK -batch' will print "OK\n" to standard output on each -successfully completed tc command. - -Signed-off-by: Petr Písař ---- - man/man8/tc.8 | 8 +++++++- - tc/tc.c | 8 +++++++- - 2 files changed, 14 insertions(+), 2 deletions(-) - -diff --git a/man/man8/tc.8 b/man/man8/tc.8 -index e0acfeb..583eae2 100644 ---- a/man/man8/tc.8 -+++ b/man/man8/tc.8 -@@ -49,7 +49,7 @@ DEV - .P - .ti 8 - .IR OPTIONS " := {" --\fB[ -force ] -b\fR[\fIatch\fR] \fB[ filename ] \fR| -+\fB[ -force ] [ -OK ] -b\fR[\fIatch\fR] \fB[ filename ] \fR| - \fB[ \fB-n\fR[\fIetns\fR] name \fB] \fR} - - .ti 8 -@@ -440,6 +440,12 @@ First failure will cause termination of tc. - .RS 4 - Shows classes as ASCII graph with stats info under each class. - -+.TP -+.BR "\-OK" -+in batch mode, print -+.B OK -+and a new line on standard output after each successfully interpreted command. -+ - .SH HISTORY - .B tc - was written by Alexey N. Kuznetsov and added in Linux 2.2. -diff --git a/tc/tc.c b/tc/tc.c -index 9b50e74..b43bb47 100644 ---- a/tc/tc.c -+++ b/tc/tc.c -@@ -39,6 +39,7 @@ int batch_mode = 0; - int resolve_hosts = 0; - int use_iec = 0; - int force = 0; -+int ok = 0; - struct rtnl_handle rth; - - static void *BODY = NULL; /* cached handle dlopen(NULL) */ -@@ -183,7 +184,7 @@ noexist: - static void usage(void) - { - fprintf(stderr, "Usage: tc [ OPTIONS ] OBJECT { COMMAND | help }\n" -- " tc [-force] -batch filename\n" -+ " tc [-force] [-OK] -batch filename\n" - "where OBJECT := { qdisc | class | filter | action | monitor }\n" - " OPTIONS := { -s[tatistics] | -d[etails] | -r[aw] | -p[retty] | -b[atch] [filename] | " - "-n[etns] name }\n"); -@@ -251,6 +252,9 @@ static int batch(const char *name) - ret = 1; - if (!force) - break; -+ } else if (ok) { -+ printf("OK\n"); -+ fflush(stdout); - } - } - if (line) -@@ -288,6 +292,8 @@ int main(int argc, char **argv) - return 0; - } else if (matches(argv[1], "-force") == 0) { - ++force; -+ } else if (matches(argv[1], "-OK") == 0) { -+ ++ok; - } else if (matches(argv[1], "-batch") == 0) { - argc--; argv++; - if (argc <= 1) --- -1.8.3.1 - diff --git a/iproute2-4.0.0-tc-ok.patch b/iproute2-4.0.0-tc-ok.patch new file mode 100644 index 0000000..495a329 --- /dev/null +++ b/iproute2-4.0.0-tc-ok.patch @@ -0,0 +1,91 @@ +From 3c4b5a852d5bb9070c7fb4428aa50f2e3e1f6e1b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= +Date: Thu, 19 Sep 2013 11:25:49 +0200 +Subject: [PATCH] Confirm success for each tc -batch command +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +If `tc -force -batch' is fed by a controlling program from a pipe, +it's not possible to recognize when a command has been processes +successfully. + +This patch adds an optional `-OK' option to the tc(8) tool, so `tc +-force -OK -batch' will print "OK\n" to standard output on each +successfully completed tc command. + +Signed-off-by: Petr Písař +--- + man/man8/tc.8 | 8 +++++++- + tc/tc.c | 8 +++++++- + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/man/man8/tc.8 b/man/man8/tc.8 +index e0acfeb..583eae2 100644 +--- a/man/man8/tc.8 ++++ b/man/man8/tc.8 +@@ -49,7 +49,7 @@ DEV + .P + .ti 8 + .IR OPTIONS " := {" +-\fB[ -force ] -b\fR[\fIatch\fR] \fB[ filename ] \fR| ++\fB[ -force ] [ -OK ] -b\fR[\fIatch\fR] \fB[ filename ] \fR| + \fB[ \fB-n\fR[\fIetns\fR] name \fB] \fR| + \fB[ \fB-nm \fR| \fB-nam\fR[\fIes\fR] \fB] \fR| + \fB[ \fR{ \fB-cf \fR| \fB-c\fR[\fIonf\fR] \fR} \fB[ filename ] \fB] \fR} +@@ -440,6 +440,12 @@ First failure will cause termination of tc. + .RS 4 + Shows classes as ASCII graph with stats info under each class. + ++.TP ++.BR "\-OK" ++in batch mode, print ++.B OK ++and a new line on standard output after each successfully interpreted command. ++ + .SH HISTORY + .B tc + was written by Alexey N. Kuznetsov and added in Linux 2.2. +diff --git a/tc/tc.c b/tc/tc.c +index 9b50e74..b43bb47 100644 +--- a/tc/tc.c ++++ b/tc/tc.c +@@ -39,6 +39,7 @@ int batch_mode = 0; + int resolve_hosts = 0; + int use_iec = 0; + int force = 0; ++int ok = 0; + bool use_names = false; + + static char *conf_file; +@@ -183,7 +184,7 @@ noexist: + static void usage(void) + { + fprintf(stderr, "Usage: tc [ OPTIONS ] OBJECT { COMMAND | help }\n" +- " tc [-force] -batch filename\n" ++ " tc [-force] [-OK] -batch filename\n" + "where OBJECT := { qdisc | class | filter | action | monitor }\n" + " OPTIONS := { -s[tatistics] | -d[etails] | -r[aw] | -p[retty] | -b[atch] [filename] | " + "-n[etns] name |\n" +@@ -251,6 +252,9 @@ static int batch(const char *name) + ret = 1; + if (!force) + break; ++ } else if (ok) { ++ printf("OK\n"); ++ fflush(stdout); + } + } + if (line) +@@ -288,6 +292,8 @@ int main(int argc, char **argv) + return 0; + } else if (matches(argv[1], "-force") == 0) { + ++force; ++ } else if (matches(argv[1], "-OK") == 0) { ++ ++ok; + } else if (matches(argv[1], "-batch") == 0) { + argc--; argv++; + if (argc <= 1) +-- +1.8.3.1 + diff --git a/sources b/sources index 35ad4be..504dacc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -237083a1e3c388cde7a115a5724dc72a iproute2-3.19.0.tar.xz +3adc263ade4ee76c35032e8f50b54108 iproute2-4.0.0.tar.xz