X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=networking%2Fifupdown.c;h=d28c0b86771583cf7bb60f956e2805fa2d746f7b;hb=d7171c114028815df4e92f9c26875f1d60c6af2a;hp=6b9449213baef36c01ca62e3b4297cb22da5448d;hpb=043b1e5d997d9b582a5aee37bd56e2e4f29be6e4;p=oweals%2Fbusybox.git diff --git a/networking/ifupdown.c b/networking/ifupdown.c index 6b9449213..d28c0b867 100644 --- a/networking/ifupdown.c +++ b/networking/ifupdown.c @@ -522,7 +522,7 @@ static int FAST_FUNC dhcp_up(struct interface_defn_t *ifd, execfn *exec) bb_error_msg("no dhcp clients found"); return 0; } -#elif ENABLE_APP_UDHCPC +#elif ENABLE_UDHCPC static int FAST_FUNC dhcp_up(struct interface_defn_t *ifd, execfn *exec) { #if ENABLE_FEATURE_IFUPDOWN_IP @@ -569,7 +569,7 @@ static int FAST_FUNC dhcp_down(struct interface_defn_t *ifd, execfn *exec) result += static_down(ifd, exec); return ((result == 3) ? 3 : 0); } -#elif ENABLE_APP_UDHCPC +#elif ENABLE_UDHCPC static int FAST_FUNC dhcp_down(struct interface_defn_t *ifd, execfn *exec) { int result; @@ -644,6 +644,9 @@ static const struct address_family_t addr_inet = { #endif /* if ENABLE_FEATURE_IFUPDOWN_IPV4 */ +/* Returns pointer to the next word, or NULL. + * In 1st case, advances *buf to the word after this one. + */ static char *next_word(char **buf) { unsigned length; @@ -663,7 +666,7 @@ static char *next_word(char **buf) if (word[length] != '\0') word[length++] = '\0'; - *buf = word + length; + *buf = skip_whitespace(word + length); return word; } @@ -966,7 +969,7 @@ static int doit(char *str) pid_t child; int status; - fflush(NULL); + fflush_all(); child = vfork(); switch (child) { case -1: /* failure */ @@ -1035,7 +1038,7 @@ static int popen2(FILE **in, FILE **out, char *command, char *param) xpiped_pair(infd); xpiped_pair(outfd); - fflush(NULL); + fflush_all(); pid = vfork(); switch (pid) { @@ -1053,8 +1056,8 @@ static int popen2(FILE **in, FILE **out, char *command, char *param) /* parent */ close(infd.rd); close(outfd.wr); - *in = fdopen(infd.wr, "w"); - *out = fdopen(outfd.rd, "r"); + *in = xfdopen_for_write(infd.wr); + *out = xfdopen_for_read(outfd.rd); return pid; }