On Tue, Oct 07, 2008 at 10:36:30AM +0200, Natanael Copa wrote:
>Hi,
>
>Attatched patch lets you use the "metric" keyword when adding routes.
>Useful for udhcp scripts:
>
>metric=0
>for gw in $router; do
>       ip route add default via $gw dev $interface metric $metric
>       metric=$(( $metric + 1 ))
>done

sounds good, please resend with updated usage.h, too.
TIA,
>
>-nc
>

>Index: networking/libiproute/iproute.c
>===================================================================
>--- networking/libiproute/iproute.c    (revision 23582)
>+++ networking/libiproute/iproute.c    (working copy)
>@@ -291,7 +291,7 @@
> {
>       static const char keywords[] ALIGN1 =
>               
> "src\0""via\0""mtu\0""lock\0""protocol\0"USE_FEATURE_IP_RULE("table\0")
>-              "dev\0""oif\0""to\0";
>+              "dev\0""oif\0""to\0""metric\0";
>       enum {
>               ARG_src,
>               ARG_via,
>@@ -300,7 +300,8 @@
> USE_FEATURE_IP_RULE(ARG_table,)
>               ARG_dev,
>               ARG_oif,
>-              ARG_to
>+              ARG_to,
>+              ARG_metric,
>       };
>       enum {
>               gw_ok = 1 << 0,
>@@ -387,6 +388,12 @@
>               } else if (arg == ARG_dev || arg == ARG_oif) {
>                       NEXT_ARG();
>                       d = *argv;
>+              } else if (arg == ARG_metric) {
>+                      uint32_t metric;
>+                      NEXT_ARG();
>+                      if (get_u32(&metric, *argv, 0))
>+                              invarg(*argv, "metric");
>+                      addattr32(&req.n, sizeof(req), RTA_PRIORITY, metric);
>               } else {
>                       int type;
>                       inet_prefix dst;

>_______________________________________________
>busybox mailing list
>[email protected]
>http://busybox.net/cgi-bin/mailman/listinfo/busybox
_______________________________________________
busybox mailing list
[email protected]
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to