summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGarming Sam <garming@catalyst.net.nz>2014-02-19 17:19:40 +1300
committerJeremy Allison <jra@samba.org>2014-05-07 19:49:14 +0200
commit84b98a2ce58a5fe88913e34ae020775cfbba8f7f (patch)
treeeb5e8fc205f42a0f17c6a04985a372da95e814a1
parentc1c1f09c184babff428ac19982fb46239576becd (diff)
downloadsamba-84b98a2ce58a5fe88913e34ae020775cfbba8f7f.tar.gz
samba-84b98a2ce58a5fe88913e34ae020775cfbba8f7f.tar.xz
samba-84b98a2ce58a5fe88913e34ae020775cfbba8f7f.zip
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 <garming@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-on: https://gerrit.samba.org/101 Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
-rw-r--r--source3/param/loadparm.c10
1 files 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 */