Replace index_in_[sub]str_array with index_in_[sub]strings,
which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes. text data bss dec hex filename 781266 1328 11844 794438 c1f46 busybox_old 781010 1328 11844 794182 c1e46 busybox_unstripped
This commit is contained in:
@ -46,17 +46,15 @@ static int sockfd; /* active socket descriptor */
|
||||
static smallint hw_set; /* flag if hw-type was set (-H) */
|
||||
static const char *device = ""; /* current device */
|
||||
|
||||
static const char *const options[] = {
|
||||
"pub",
|
||||
"priv",
|
||||
"temp",
|
||||
"trail",
|
||||
"dontpub",
|
||||
"auto",
|
||||
"dev",
|
||||
"netmask",
|
||||
NULL
|
||||
};
|
||||
static const char options[] =
|
||||
"pub\0"
|
||||
"priv\0"
|
||||
"temp\0"
|
||||
"trail\0"
|
||||
"dontpub\0"
|
||||
"auto\0"
|
||||
"dev\0"
|
||||
"netmask\0";
|
||||
|
||||
/* Delete an entry from the ARP cache. */
|
||||
/* Called only from main, once */
|
||||
@ -85,7 +83,7 @@ static int arp_del(char **args)
|
||||
req.arp_flags = ATF_PERM;
|
||||
args++;
|
||||
while (*args != NULL) {
|
||||
switch (index_in_str_array(options, *args)) {
|
||||
switch (index_in_strings(options, *args)) {
|
||||
case 0: /* "pub" */
|
||||
flags |= 1;
|
||||
args++;
|
||||
@ -239,7 +237,7 @@ static int arp_set(char **args)
|
||||
/* Check out any modifiers. */
|
||||
flags = ATF_PERM | ATF_COM;
|
||||
while (*args != NULL) {
|
||||
switch (index_in_str_array(options, *args)) {
|
||||
switch (index_in_strings(options, *args)) {
|
||||
case 0: /* "pub" */
|
||||
flags |= ATF_PUBL;
|
||||
args++;
|
||||
|
Reference in New Issue
Block a user