Mercurial > hg > dhcpcd
changeset 1818:02a2ae2621a7 draft
Preserve the space in static routes on the command line.
Thanks to br@waldteufel.eu.
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Thu, 20 Dec 2012 19:35:26 +0000 |
| parents | e321a7642d75 |
| children | af356547a5c1 |
| files | if-options.c |
| diffstat | 1 files changed, 6 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/if-options.c Wed Dec 19 09:34:16 2012 +0000 +++ b/if-options.c Thu Dec 20 19:35:26 2012 +0000 @@ -341,7 +341,7 @@ parse_option(struct if_options *ifo, int opt, const char *arg) { int i; - char *p = NULL, *np; + char *p = NULL, *fp, *np; ssize_t s; struct in_addr addr, addr2; struct rt *rt; @@ -654,7 +654,7 @@ strncmp(arg, "classless_static_routes=", strlen("classless_static_routes=")) == 0 || strncmp(arg, "ms_classless_static_routes=", strlen("ms_classless_static_routes=")) == 0) { - np = strchr(p, ' '); + fp = np = strchr(p, ' '); if (np == NULL) { syslog(LOG_ERR, "all routes need a gateway"); return -1; @@ -674,7 +674,11 @@ rt->next = NULL; if (parse_addr(&rt->dest, &rt->net, p) == -1 || parse_addr(&rt->gate, NULL, np) == -1) + { + *fp = ' '; return -1; + } + *fp = ' '; } else if (strncmp(arg, "routers=", strlen("routers=")) == 0) { if (ifo->routes == NULL) { rt = ifo->routes = xzalloc(sizeof(*rt));
