summaryrefslogtreecommitdiffstats
path: root/lib/param
diff options
context:
space:
mode:
Diffstat (limited to 'lib/param')
-rw-r--r--lib/param/loadparm.c15
-rw-r--r--lib/param/s3_param.h1
2 files changed, 8 insertions, 8 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;
};