diff options
author | Garming Sam <garming@catalyst.net.nz> | 2014-02-21 17:59:41 +1300 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2014-05-07 19:49:16 +0200 |
commit | dce3bcd00ff0e63548b9d2849238d0ba68137481 (patch) | |
tree | 5ed0b91c501a087053f8eb38d2d1ddc10eacbb32 /lib/param/loadparm.c | |
parent | 74e0a37fd34791099a32591ab607e9444fd441fe (diff) | |
download | samba-dce3bcd00ff0e63548b9d2849238d0ba68137481.tar.gz samba-dce3bcd00ff0e63548b9d2849238d0ba68137481.tar.xz samba-dce3bcd00ff0e63548b9d2849238d0ba68137481.zip |
param: move handle printing into lib/param
Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'lib/param/loadparm.c')
-rw-r--r-- | lib/param/loadparm.c | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c index 2b8ea237a06..5b89a4f1dba 100644 --- a/lib/param/loadparm.c +++ b/lib/param/loadparm.c @@ -81,7 +81,6 @@ static bool defaults_saved = false; * non-source3 code */ #define handle_netbios_aliases NULL -#define handle_printing NULL #define handle_ldap_debug_level NULL #define handle_idmap_backend NULL #define handle_idmap_uid NULL @@ -1262,6 +1261,34 @@ bool handle_dos_charset(struct loadparm_context *lp_ctx, int snum, return lpcfg_string_set(lp_ctx, ptr, pszParmValue); } +bool handle_printing(struct loadparm_context *lp_ctx, int snum, + const char *pszParmValue, char **ptr) +{ + static int parm_num = -1; + struct loadparm_service *s; + + if (parm_num == -1) { + parm_num = lpcfg_map_parameter("printing"); + } + + if (!lp_set_enum_parm(&parm_table[parm_num], pszParmValue, (int*)ptr)) { + return false; + } + + if (lp_ctx->s3_fns) { + if ( snum < 0 ) { + s = lp_ctx->sDefault; + lp_ctx->s3_fns->init_printer_values(lp_ctx->globals->ctx, s); + } else { + s = lp_ctx->services[snum]; + lp_ctx->s3_fns->init_printer_values(s, s); + } + } + + return true; +} + + /*************************************************************************** Initialise a copymap. ***************************************************************************/ |