From: Volker Lendecke Date: Sat, 7 Jan 2017 14:53:09 +0000 (+0000) Subject: winbind: Add idmap_config_const_string X-Git-Tag: tdb-1.3.13~433 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1c34166c1205328c53fca987e43bb1be6ca13538;p=thirdparty%2Fsamba.git winbind: Add idmap_config_const_string Signed-off-by: Volker Lendecke Reviewed-by: Michael Adam --- diff --git a/source3/winbindd/idmap.c b/source3/winbindd/idmap.c index 6a5263358d2..a8a71362c28 100644 --- a/source3/winbindd/idmap.c +++ b/source3/winbindd/idmap.c @@ -177,6 +177,22 @@ static bool idmap_init(void) return true; } +const char *idmap_config_const_string(const char *domname, const char *option, + const char *def) +{ + int len = snprintf(NULL, 0, "idmap config %s", domname); + + if (len == -1) { + return NULL; + } + { + char config_option[len+1]; + snprintf(config_option, sizeof(config_option), + "idmap config %s", domname); + return lp_parm_const_string(-1, config_option, option, def); + } +} + bool domain_has_idmap_config(const char *domname) { int i; diff --git a/source3/winbindd/winbindd_proto.h b/source3/winbindd/winbindd_proto.h index ede2c3e774c..b33c24ff39a 100644 --- a/source3/winbindd/winbindd_proto.h +++ b/source3/winbindd/winbindd_proto.h @@ -378,6 +378,8 @@ void init_idmap_child(void); struct winbindd_child *idmap_child(void); struct idmap_domain *idmap_find_domain_with_sid(const char *domname, const struct dom_sid *sid); +const char *idmap_config_const_string(const char *domname, const char *option, + const char *def); bool domain_has_idmap_config(const char *domname); bool lp_scan_idmap_domains(bool (*fn)(const char *domname, void *private_data),