From d66f2c86f703016b3f4344d57740fa9665cab41a Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Thu, 11 Feb 2016 13:11:46 +0100 Subject: [PATCH] param: Fix str_list_v3 to accept ; again Signed-off-by: Volker Lendecke Reviewed-by: Andreas Schneider Autobuild-User(master): Volker Lendecke Autobuild-Date(master): Thu Feb 11 19:19:55 CET 2016 on sn-devel-144 --- lib/util/util_strlist_v3.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/lib/util/util_strlist_v3.c b/lib/util/util_strlist_v3.c index e08edd4e8e6..c248575c525 100644 --- a/lib/util/util_strlist_v3.c +++ b/lib/util/util_strlist_v3.c @@ -67,7 +67,23 @@ char **str_list_make_v3(TALLOC_CTX *mem_ctx, const char *string, TALLOC_FREE(list); return NULL; } - if (!sep) sep = LIST_SEP; + + /* + * DON'T REPLACE THIS BY "LIST_SEP". The common version of + * LIST_SEP does not contain the ;, which used to be accepted + * by Samba 4.0 before param merges. It would be the far + * better solution to split the _v3 version again to source3/ + * where it belongs, see the _v3 in its name. + * + * Unfortunately it is referenced in /lib/param/loadparm.c, + * which depends on the version that the AD-DC mandates, + * namely without the ; as part of the list separator. I am + * missing the waf fu to properly work around the wrong + * include paths here for this defect. + */ + if (sep == NULL) { + sep = " \t,;\n\r"; + } num = 0; str = s;