summaryrefslogtreecommitdiff
path: root/config.c
diff options
context:
space:
mode:
authorDoug Ledford <dledford@redhat.com>2010-01-11 15:38:14 -0500
committerNeilBrown <neilb@suse.de>2010-01-19 10:50:26 +1300
commit4d0b563b5b5597cc1467e3560f87fc3a144223a2 (patch)
tree5d3a5e8ed1a12f832e49c7c659c55e68bc8db667 /config.c
parent6e48d593c163e8107f06d13bc6092466a5d58c94 (diff)
Fix segfault when the AUTO keyword is used in the config file
Signed-off-by: Doug Ledford <dledford@redhat.com> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'config.c')
-rw-r--r--config.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/config.c b/config.c
index c962afda..07a12dcb 100644
--- a/config.c
+++ b/config.c
@@ -677,12 +677,21 @@ void homehostline(char *line)
static char *auto_options = NULL;
void autoline(char *line)
{
+ char *w;
+
if (auto_options) {
fprintf(stderr, Name ": AUTO line may only be give once."
" Subsequent lines ignored\n");
return;
}
- auto_options = line;
+
+ auto_options = dl_strdup(line);
+ dl_init(auto_options);
+
+ for (w=dl_next(line); w != line ; w=dl_next(w)) {
+ char *w2 = dl_strdup(w);
+ dl_add(auto_options, w2);
+ }
}
int loaded = 0;