summaryrefslogtreecommitdiff
path: root/networking
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer2006-12-14 15:41:29 +0000
committerBernhard Reutner-Fischer2006-12-14 15:41:29 +0000
commit728534b3cb24d568f6770d54390186c74f180206 (patch)
treea900f426d8b3163db47a2f2f59458b794f79563b /networking
parent56b956952ec8bf6cd277a68107c1188e6b219b39 (diff)
downloadbusybox-728534b3cb24d568f6770d54390186c74f180206.zip
busybox-728534b3cb24d568f6770d54390186c74f180206.tar.gz
- table support for ip route
Diffstat (limited to 'networking')
-rw-r--r--networking/libiproute/iproute.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/networking/libiproute/iproute.c b/networking/libiproute/iproute.c
index 9c3b870..30d4556 100644
--- a/networking/libiproute/iproute.c
+++ b/networking/libiproute/iproute.c
@@ -353,6 +353,14 @@ static int iproute_modify(int cmd, unsigned flags, int argc, char **argv)
invarg(*argv, "protocol");
req.r.rtm_protocol = prot;
proto_ok =1;
+#if ENABLE_FEATURE_IP_RULE
+ } else if (matches(*argv, "table") == 0) {
+ uint32_t tid;
+ NEXT_ARG();
+ if (rtnl_rttable_a2n(&tid, *argv))
+ invarg(*argv, "table");
+ req.r.rtm_table = tid;
+#endif
} else if (strcmp(*argv, "dev") == 0 ||
strcmp(*argv, "oif") == 0) {
NEXT_ARG();
@@ -540,9 +548,13 @@ static int iproute_list_or_flush(int argc, char **argv, int flush)
NEXT_ARG();
if (matches(*argv, "cache") == 0) {
filter.tb = -1;
+#if 0 && ENABLE_FEATURE_IP_RULE
+
+#else
} else if (matches(*argv, "main") != 0) {
invarg(*argv, "table");
}
+#endif
} else if (matches(*argv, "cache") == 0) {
filter.tb = -1;
} else {