diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2006-12-14 18:41:29 +0300 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2006-12-14 18:41:29 +0300 |
commit | 728534b3cb24d568f6770d54390186c74f180206 (patch) | |
tree | a900f426d8b3163db47a2f2f59458b794f79563b /networking/libiproute | |
parent | 56b956952ec8bf6cd277a68107c1188e6b219b39 (diff) |
- table support for ip route
Diffstat (limited to 'networking/libiproute')
-rw-r--r-- | networking/libiproute/iproute.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/networking/libiproute/iproute.c b/networking/libiproute/iproute.c index 9c3b87040..30d455602 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 { |