summaryrefslogtreecommitdiffstats
path: root/package/busybox/busybox-1.9.0-iproute.patch
blob: 4813aa3c6c06a7d86bd84560a89058ebab2935ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
diff -urN busybox-1.9.0/networking/libiproute/iproute.c busybox-1.9.0-iproute/networking/libiproute/iproute.c
--- busybox-1.9.0/networking/libiproute/iproute.c	2007-12-21 22:00:23.000000000 +0000
+++ busybox-1.9.0-iproute/networking/libiproute/iproute.c	2008-01-04 15:18:33.000000000 +0000
@@ -841,15 +841,17 @@
 	/*0-3*/	"add\0""append\0""change\0""chg\0"
 	/*4-7*/	"delete\0""get\0""list\0""show\0"
 	/*8..*/	"prepend\0""replace\0""test\0""flush\0";
-	int command_num = 6;
+	int command_num;
 	unsigned flags = 0;
 	int cmd = RTM_NEWROUTE;
 
+	if (!*argv)
+		return iproute_list_or_flush(argv, 0);
+
 	/* "Standard" 'ip r a' treats 'a' as 'add', not 'append' */
 	/* It probably means that it is using "first match" rule */
-	if (*argv) {
-		command_num = index_in_substrings(ip_route_commands, *argv);
-	}
+	command_num = index_in_substrings(ip_route_commands, *argv);
+
 	switch (command_num) {
 		case 0: /* add */
 			flags = NLM_F_CREATE|NLM_F_EXCL;