summaryrefslogtreecommitdiffstats
path: root/sbin
diff options
context:
space:
mode:
authorglebius <glebius@FreeBSD.org>2016-08-12 04:01:16 +0000
committerglebius <glebius@FreeBSD.org>2016-08-12 04:01:16 +0000
commit31dd439280dad5066313b92d89838db63d850228 (patch)
tree2cca4241e42ffa267711f2516135c081337a1624 /sbin
parent3a81e075fa773707432d8e3f71cbc9348670536e (diff)
downloadFreeBSD-src-31dd439280dad5066313b92d89838db63d850228.zip
FreeBSD-src-31dd439280dad5066313b92d89838db63d850228.tar.gz
Release 6 errata notices for 10.3-RELEASE, all related to Microsoft Hyper-V.
Submitted by: Dexuan Cui <decui microsoft.com>, gjb Approved by: so
Diffstat (limited to 'sbin')
-rw-r--r--sbin/dhclient/dhclient.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c
index 97f9d47..b173eb2 100644
--- a/sbin/dhclient/dhclient.c
+++ b/sbin/dhclient/dhclient.c
@@ -2277,6 +2277,17 @@ script_set_env(struct client_state *client, const char *prefix,
{
int i, j, namelen;
+ /* No `` or $() command substitution allowed in environment values! */
+ for (j=0; j < strlen(value); j++)
+ switch (value[j]) {
+ case '`':
+ case '$':
+ warning("illegal character (%c) in value '%s'",
+ value[j], value);
+ /* Ignore this option */
+ return;
+ }
+
namelen = strlen(name);
for (i = 0; client->scriptEnv[i]; i++)
@@ -2313,16 +2324,6 @@ script_set_env(struct client_state *client, const char *prefix,
strlen(value) + 1);
if (client->scriptEnv[i] == NULL)
error("script_set_env: no memory for variable assignment");
-
- /* No `` or $() command substitution allowed in environment values! */
- for (j=0; j < strlen(value); j++)
- switch (value[j]) {
- case '`':
- case '$':
- error("illegal character (%c) in value '%s'", value[j],
- value);
- /* not reached */
- }
snprintf(client->scriptEnv[i], strlen(prefix) + strlen(name) +
1 + strlen(value) + 1, "%s%s=%s", prefix, name, value);
}
OpenPOWER on IntegriCloud