diff options
| -rw-r--r-- | networking/udhcp/dhcpc.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c index 3afdb35fe..0310663e0 100644 --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c | |||
| @@ -274,6 +274,12 @@ static NOINLINE char *xmalloc_optname_optval(uint8_t *option, const struct dhcp_ | |||
| 274 | case OPTION_STRING_HOST: | 274 | case OPTION_STRING_HOST: |
| 275 | memcpy(dest, option, len); | 275 | memcpy(dest, option, len); |
| 276 | dest[len] = '\0'; | 276 | dest[len] = '\0'; |
| 277 | //TODO: it appears option 15 DHCP_DOMAIN_NAME is often abused | ||
| 278 | //by DHCP admins to contain a space-separated list of domains, | ||
| 279 | //not one domain name (presumably, to work as list of search domains, | ||
| 280 | //instead of using proper option 119 DHCP_DOMAIN_SEARCH). | ||
| 281 | //Currently, good_hostname() balks on strings containing spaces. | ||
| 282 | //Do we need to allow it? Only for DHCP_DOMAIN_NAME option? | ||
| 277 | if (type == OPTION_STRING_HOST && !good_hostname(dest)) | 283 | if (type == OPTION_STRING_HOST && !good_hostname(dest)) |
| 278 | safe_strncpy(dest, "bad", len); | 284 | safe_strncpy(dest, "bad", len); |
| 279 | return ret; | 285 | return ret; |
