aboutsummaryrefslogtreecommitdiff
path: root/networking/interface.c
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2006-06-20 21:13:29 +0000
committerRob Landley <rob@landley.net>2006-06-20 21:13:29 +0000
commit9fe801e0d2a3a30855481d125980f7bbcd857920 (patch)
treed16283c51baa1b55ecb1bd1ffb4d0a3e4fa4365b /networking/interface.c
parent14ff19b28a07ae076f40eebbda5dd4bb17192742 (diff)
downloadbusybox-w32-9fe801e0d2a3a30855481d125980f7bbcd857920.tar.gz
busybox-w32-9fe801e0d2a3a30855481d125980f7bbcd857920.tar.bz2
busybox-w32-9fe801e0d2a3a30855481d125980f7bbcd857920.zip
Patch by Robert P. Day to remove obsolete alias code that the 2.4 and 2.6
Linux kernels don't do anymore.
Diffstat (limited to 'networking/interface.c')
-rw-r--r--networking/interface.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/networking/interface.c b/networking/interface.c
index 964665c71..f5937ef3f 100644
--- a/networking/interface.c
+++ b/networking/interface.c
@@ -129,7 +129,7 @@ static struct aftype inet_aftype = {
129 .name = "inet", 129 .name = "inet",
130 .title = "DARPA Internet", 130 .title = "DARPA Internet",
131 .af = AF_INET, 131 .af = AF_INET,
132 .alen = sizeof(unsigned long), 132 .alen = 4,
133 .sprint = INET_sprint, 133 .sprint = INET_sprint,
134 .fd = -1 134 .fd = -1
135}; 135};
@@ -444,22 +444,16 @@ static int if_readconf(void)
444 444
445static char *get_name(char *name, char *p) 445static char *get_name(char *name, char *p)
446{ 446{
447 /* Extract <name>[:<alias>] from nul-terminated p where p matches 447 /* Extract <name> from nul-terminated p where p matches
448 <name>[:<alias>]: after leading whitespace. 448 <name>: after leading whitespace.
449 If match is not made, set name empty and return unchanged p */ 449 If match is not made, set name empty and return unchanged p */
450 int namestart=0, nameend=0, aliasend; 450 int namestart=0, nameend=0;
451 while (isspace(p[namestart])) 451 while (isspace(p[namestart]))
452 namestart++; 452 namestart++;
453 nameend=namestart; 453 nameend=namestart;
454 while (p[nameend] && p[nameend]!=':' && !isspace(p[nameend])) 454 while (p[nameend] && p[nameend]!=':' && !isspace(p[nameend]))
455 nameend++; 455 nameend++;
456 if (p[nameend]==':') { 456 if (p[nameend]==':') {
457 aliasend=nameend+1;
458 while (p[aliasend] && isdigit(p[aliasend]))
459 aliasend++;
460 if (p[aliasend]==':') {
461 nameend=aliasend;
462 }
463 if ((nameend-namestart)<IFNAMSIZ) { 457 if ((nameend-namestart)<IFNAMSIZ) {
464 memcpy(name,&p[namestart],nameend-namestart); 458 memcpy(name,&p[namestart],nameend-namestart);
465 name[nameend-namestart]='\0'; 459 name[nameend-namestart]='\0';
@@ -469,7 +463,7 @@ static char *get_name(char *name, char *p)
469 name[0]='\0'; 463 name[0]='\0';
470 } 464 }
471 } else { 465 } else {
472 /* first ':' not found - return empty */ 466 /* trailing ':' not found - return empty */
473 name[0]='\0'; 467 name[0]='\0';
474 } 468 }
475 return p + 1; 469 return p + 1;