summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGarming Sam <garming@catalyst.net.nz>2014-02-17 16:33:55 +1300
committerJeremy Allison <jra@samba.org>2014-05-07 19:49:14 +0200
commit389208658972b6b19f15167dc8c2dd419e404a2e (patch)
treeaf58b185962ab63126bf63ce6bb079681f0d8212
parent84b98a2ce58a5fe88913e34ae020775cfbba8f7f (diff)
downloadsamba-389208658972b6b19f15167dc8c2dd419e404a2e.tar.gz
samba-389208658972b6b19f15167dc8c2dd419e404a2e.tar.xz
samba-389208658972b6b19f15167dc8c2dd419e404a2e.zip
param: attempt to consolidate handle_debug_level between the two loadparms
Signed-off-by: Garming Sam <garming@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-on: https://gerrit.samba.org/102 Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
-rw-r--r--lib/param/loadparm.c15
-rw-r--r--lib/param/s3_param.h1
-rw-r--r--source3/param/loadparm.c11
-rw-r--r--source3/param/loadparm_ctx.c1
4 files changed, 9 insertions, 19 deletions
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c
index 97a06a0efd..b47a2c0486 100644
--- a/lib/param/loadparm.c
+++ b/lib/param/loadparm.c
@@ -102,8 +102,6 @@ static bool handle_realm(struct loadparm_context *lp_ctx, int unused,
const char *pszParmValue, char **ptr);
static bool handle_copy(struct loadparm_context *lp_ctx, int unused,
const char *pszParmValue, char **ptr);
-static bool handle_debug_list(struct loadparm_context *lp_ctx, int unused,
- const char *pszParmValue, char **ptr);
static bool handle_logfile(struct loadparm_context *lp_ctx, int unused,
const char *pszParmValue, char **ptr);
@@ -1136,15 +1134,16 @@ static bool handle_copy(struct loadparm_context *lp_ctx, int unused,
return bRetval;
}
-static bool handle_debug_list(struct loadparm_context *lp_ctx, int unused,
+bool handle_debug_list(struct loadparm_context *lp_ctx, int unused,
const char *pszParmValue, char **ptr)
{
-
- lpcfg_string_set(lp_ctx, ptr, pszParmValue);
- if (lp_ctx->global) {
- return debug_parse_levels(pszParmValue);
+ if (lp_ctx->s3_fns != NULL) {
+ lp_ctx->s3_fns->lp_string_set(ptr, pszParmValue);
+ } else {
+ lpcfg_string_set(lp_ctx, ptr, pszParmValue);
}
- return true;
+
+ return debug_parse_levels(pszParmValue);
}
static bool handle_logfile(struct loadparm_context *lp_ctx, int unused,
diff --git a/lib/param/s3_param.h b/lib/param/s3_param.h
index 106c48007d..276810427e 100644
--- a/lib/param/s3_param.h
+++ b/lib/param/s3_param.h
@@ -14,6 +14,7 @@ struct loadparm_s3_helpers
bool (*set_cmdline)(const char *pszParmName, const char *pszParmValue);
void (*dump)(FILE *f, bool show_defaults, int maxtoprint);
char * (*lp_string)(TALLOC_CTX *ctx, const char *in);
+ bool (*lp_string_set)(char **dest, const char *src);
struct loadparm_global *globals;
};
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index c6ff350d6c..adf3001933 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -265,7 +265,6 @@ static bool handle_copy(struct loadparm_context *unused, int snum, const char *p
static bool handle_idmap_backend(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr);
static bool handle_idmap_uid(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr);
static bool handle_idmap_gid(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr);
-static bool handle_debug_list(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr );
static bool handle_realm(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr );
static bool handle_netbios_aliases(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr );
static bool handle_charset(struct loadparm_context *unused, int snum, const char *pszParmValue, char **ptr );
@@ -2954,16 +2953,6 @@ const char *lp_idmap_default_backend(void)
}
/***************************************************************************
- Handle the DEBUG level list.
-***************************************************************************/
-
-static bool handle_debug_list(struct loadparm_context *unused, int snum, const char *pszParmValueIn, char **ptr )
-{
- string_set(Globals.ctx, ptr, pszParmValueIn);
- return debug_parse_levels(pszParmValueIn);
-}
-
-/***************************************************************************
Handle ldap suffixes - default to ldapsuffix if sub-suffixes are not defined.
***************************************************************************/
diff --git a/source3/param/loadparm_ctx.c b/source3/param/loadparm_ctx.c
index efae8cbbaf..0d5189b388 100644
--- a/source3/param/loadparm_ctx.c
+++ b/source3/param/loadparm_ctx.c
@@ -68,6 +68,7 @@ static struct loadparm_s3_helpers s3_fns =
.load = lp_load_for_s4_ctx,
.set_cmdline = lp_set_cmdline,
.dump = lp_dump,
+ .lp_string_set = lp_string_set,
};
const struct loadparm_s3_helpers *loadparm_s3_helpers(void)