From 84b98a2ce58a5fe88913e34ae020775cfbba8f7f Mon Sep 17 00:00:00 2001 From: Garming Sam Date: Wed, 19 Feb 2014 17:19:40 +1300 Subject: param: allow special functions to be common across the two loadparms Currently, each of the functions are declared in both and redefined using macros when they are unused. This change should allow only a single function to exist. Signed-off-by: Garming Sam Reviewed-by: Andrew Bartlett Reviewed-on: https://gerrit.samba.org/101 Reviewed-by: Andreas Schneider Reviewed-by: Jeremy Allison --- source3/param/loadparm.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index c449073986..c6ff350d6c 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -3177,8 +3177,14 @@ bool lp_do_parameter(int snum, const char *pszParmName, const char *pszParmValue /* if it is a special case then go ahead */ if (parm_table[parmnum].special) { - return parm_table[parmnum].special(NULL, snum, pszParmValue, - (char **)parm_ptr); + bool ok; + struct loadparm_context *lp_ctx = loadparm_init_s3(talloc_tos(), + loadparm_s3_helpers()); + ok = parm_table[parmnum].special(lp_ctx, snum, pszParmValue, + (char **)parm_ptr); + TALLOC_FREE(lp_ctx); + + return ok; } /* now switch on the type of variable it is */ -- cgit