diff options
author | Volker Lendecke <vl@samba.org> | 2017-01-08 11:52:56 +0000 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2017-03-20 19:36:22 +0100 |
commit | e190eaa30fcf777ba11a65f11be88390ead7ce0b (patch) | |
tree | 03597d35494d7ce8bb9a8df6912d6e52868b899b | |
parent | 0b05785de6b73a1eb29e21944a7ee6dc3a5ce082 (diff) | |
download | samba-e190eaa30fcf777ba11a65f11be88390ead7ce0b.tar.gz |
winbind: Add idmap_config_int
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
-rw-r--r-- | source3/winbindd/idmap.c | 15 | ||||
-rw-r--r-- | source3/winbindd/winbindd_proto.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/source3/winbindd/idmap.c b/source3/winbindd/idmap.c index 602d3cd1fc7..dda8d0a4ba1 100644 --- a/source3/winbindd/idmap.c +++ b/source3/winbindd/idmap.c @@ -208,6 +208,21 @@ bool idmap_config_bool(const char *domname, const char *option, bool def) } } +int idmap_config_int(const char *domname, const char *option, int def) +{ + int len = snprintf(NULL, 0, "idmap config %s", domname); + + if (len == -1) { + return def; + } + { + char config_option[len+1]; + snprintf(config_option, sizeof(config_option), + "idmap config %s", domname); + return lp_parm_int(-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 9afa780486c..b8d8baa4441 100644 --- a/source3/winbindd/winbindd_proto.h +++ b/source3/winbindd/winbindd_proto.h @@ -381,6 +381,7 @@ struct idmap_domain *idmap_find_domain_with_sid(const char *domname, const char *idmap_config_const_string(const char *domname, const char *option, const char *def); bool idmap_config_bool(const char *domname, const char *option, bool def); +int idmap_config_int(const char *domname, const char *option, int def); bool domain_has_idmap_config(const char *domname); bool lp_scan_idmap_domains(bool (*fn)(const char *domname, void *private_data), |