diff options
author | Jordan K. Hubbard <jkh@FreeBSD.org> | 1995-05-26 20:45:20 +0000 |
---|---|---|
committer | Jordan K. Hubbard <jkh@FreeBSD.org> | 1995-05-26 20:45:20 +0000 |
commit | 395dda4194b2684375bcc0d16286db701d37e398 (patch) | |
tree | fc57a9165a12e93458ba530ae017299f96ef8665 /usr.sbin/sysinstall/variable.c | |
parent | a7f54e2e75c372680acaba606d31cb594aea0b57 (diff) | |
download | src-395dda4194b2684375bcc0d16286db701d37e398.tar.gz src-395dda4194b2684375bcc0d16286db701d37e398.zip |
Clean up the variable handling code a little.
Write /etc/hosts in the right place.
Notes
Notes:
svn path=/head/; revision=8771
Diffstat (limited to 'usr.sbin/sysinstall/variable.c')
-rw-r--r-- | usr.sbin/sysinstall/variable.c | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/usr.sbin/sysinstall/variable.c b/usr.sbin/sysinstall/variable.c index 993828cd487f..ec3c5b187429 100644 --- a/usr.sbin/sysinstall/variable.c +++ b/usr.sbin/sysinstall/variable.c @@ -4,7 +4,7 @@ * This is probably the last program in the `sysinstall' line - the next * generation being essentially a complete rewrite. * - * $Id: variable.c,v 1.1 1995/05/01 21:56:32 jkh Exp $ + * $Id: variable.c,v 1.2 1995/05/20 10:33:13 jkh Exp $ * * Copyright (c) 1995 * Jordan Hubbard. All rights reserved. @@ -45,19 +45,15 @@ /* Routines for dealing with variable lists */ -void -variable_set(char *var) +static void +make_variable(char *var, char *value) { - char tmp[VAR_NAME_MAX + VAR_VALUE_MAX], *cp; Variable *newvar; + setenv(var, value, 1); newvar = (Variable *)safe_malloc(sizeof(Variable)); - strncpy(tmp, var, VAR_NAME_MAX + VAR_VALUE_MAX); - if ((cp = index(tmp, '=')) == NULL) - msgFatal("Invalid variable format: %s", var); - *cp = '\0'; - strncpy(newvar->name, tmp, VAR_NAME_MAX); - strncpy(newvar->value, cp + 1, VAR_VALUE_MAX); + strncpy(newvar->name, var, VAR_NAME_MAX); + strncpy(newvar->value, value, VAR_VALUE_MAX); newvar->next = VarHead; VarHead = newvar; setenv(newvar->name, newvar->value, 1); @@ -65,18 +61,23 @@ variable_set(char *var) } void +variable_set(char *var) +{ + char tmp[VAR_NAME_MAX + VAR_VALUE_MAX], *cp; + + strncpy(tmp, var, VAR_NAME_MAX + VAR_VALUE_MAX); + if ((cp = index(tmp, '=')) == NULL) + msgFatal("Invalid variable format: %s", var); + *(cp++) = '\0'; + make_variable(tmp, cp); +} + +void variable_set2(char *var, char *value) { Variable *newvar; if (!var || !value) msgFatal("Null name or value passed to set_variable2!"); - setenv(var, value, 1); - newvar = (Variable *)safe_malloc(sizeof(Variable)); - strncpy(newvar->name, var, VAR_NAME_MAX); - strncpy(newvar->value, value, VAR_VALUE_MAX); - newvar->next = VarHead; - VarHead = newvar; - setenv(newvar->name, newvar->value, 1); - msgInfo("Set %s to %s", newvar->name, newvar->value); + make_variable(var, value); } |