aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/sysinstall/variable.c
diff options
context:
space:
mode:
authorJordan K. Hubbard <jkh@FreeBSD.org>1995-05-26 20:45:20 +0000
committerJordan K. Hubbard <jkh@FreeBSD.org>1995-05-26 20:45:20 +0000
commit395dda4194b2684375bcc0d16286db701d37e398 (patch)
treefc57a9165a12e93458ba530ae017299f96ef8665 /usr.sbin/sysinstall/variable.c
parenta7f54e2e75c372680acaba606d31cb594aea0b57 (diff)
downloadsrc-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.c37
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);
}