From: Phil Sutter Date: Sun, 6 Mar 2011 18:15:30 +0000 (+0100) Subject: nameif: fix parsing of /proc/net/dev; small code shrink X-Git-Tag: 1_19_0~250 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=2adc0e6d8b146991063309238569a703af6bda8f;p=oweals%2Fbusybox.git nameif: fix parsing of /proc/net/dev; small code shrink function old new delta nameif_main 628 618 -10 Signed-off-by: Phil Sutter Signed-off-by: Denys Vlasenko --- diff --git a/networking/nameif.c b/networking/nameif.c index 6cf1c50c2..e9bff8b11 100644 --- a/networking/nameif.c +++ b/networking/nameif.c @@ -133,7 +133,7 @@ void delete_eth_table(ethtable_t *ch); #endif int nameif_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; -int nameif_main(int argc, char **argv) +int nameif_main(int argc UNUSED_PARAM, char **argv) { ethtable_t *clist = NULL; const char *fname = "/etc/mactab"; @@ -148,17 +148,15 @@ int nameif_main(int argc, char **argv) * can't hurt. 2>/dev/null if you don't like it: */ logmode |= LOGMODE_SYSLOG; } - argc -= optind; argv += optind; - if (argc & 1) - bb_show_usage(); - - if (argc) { - while (*argv) { - char *ifname = *argv++; - prepend_new_eth_table(&clist, ifname, *argv++); - } + if (argv[0]) { + do { + if (!argv[1]) + bb_show_usage(); + prepend_new_eth_table(&clist, argv[0], argv[1]); + argv += 2; + } while (*argv); } else { parser = config_open(fname); while (config_read(parser, token, 2, 2, "# \t", PARSE_NORMAL)) @@ -174,7 +172,7 @@ int nameif_main(int argc, char **argv) #if ENABLE_FEATURE_NAMEIF_EXTENDED struct ethtool_drvinfo drvinfo; #endif - if (parser->lineno < 2) + if (parser->lineno <= 2) continue; /* Skip the first two lines */ /* Find the current interface name and copy it to ifr.ifr_name */