From 11f4893145f94c85b4f1268544a84116d3a38751 Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Sat, 22 Nov 2003 04:33:36 +0000 Subject: Ensure that items in a list of strings containing whitespace are written out surrounded by single quotes. This means that both double and single quotes are now used to surround strings in smb.conf. This is a slight change from the previous behavior but needed or else things like printer admin = +ntadmin, 'VALE\Domain, Admin' get written to smb.conf by SWAT. (This used to be commit 5bf91c79d620e34ac71d72c80f74e47754d49dcb) --- source3/param/loadparm.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'source3/param') diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index 8643ecb028..e98d924964 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -3301,9 +3301,13 @@ static void print_parameter(struct parm_struct *p, void *ptr, FILE * f) if ((char ***)ptr && *(char ***)ptr) { char **list = *(char ***)ptr; - for (; *list; list++) - fprintf(f, "%s%s", *list, - ((*(list+1))?", ":"")); + for (; *list; list++) { + /* surround strings with whitespace in single quotes */ + if ( strchr_m( *list, ' ' ) ) + fprintf(f, "\'%s\'%s", *list, ((*(list+1))?", ":"")); + else + fprintf(f, "%s%s", *list, ((*(list+1))?", ":"")); + } } break; -- cgit