[git commit master 1/1] nameif: fix parsing of /proc/net/dev; small code shrink
Denys Vlasenko
vda.linux at googlemail.com
Sun Mar 6 18:15:30 UTC 2011
commit: http://git.busybox.net/busybox/commit/?id=2adc0e6d8b146991063309238569a703af6bda8f
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master
function old new delta
nameif_main 628 618 -10
Signed-off-by: Phil Sutter <phil.sutter at viprinet.com>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
networking/nameif.c | 20 +++++++++-----------
1 files changed, 9 insertions(+), 11 deletions(-)
diff --git a/networking/nameif.c b/networking/nameif.c
index 6cf1c50..e9bff8b 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 */
--
1.7.3.4
More information about the busybox-cvs
mailing list