diff options
Diffstat (limited to 'core/busybox/busybox-1.12.1-iproute-metric.patch')
-rw-r--r-- | core/busybox/busybox-1.12.1-iproute-metric.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/core/busybox/busybox-1.12.1-iproute-metric.patch b/core/busybox/busybox-1.12.1-iproute-metric.patch new file mode 100644 index 0000000000..01a24ac84b --- /dev/null +++ b/core/busybox/busybox-1.12.1-iproute-metric.patch @@ -0,0 +1,36 @@ +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; |