winbind: Add idmap_config_bool()
authorVolker Lendecke <vl@samba.org>
Sat, 7 Jan 2017 15:10:05 +0000 (15:10 +0000)
committerMichael Adam <obnox@samba.org>
Mon, 20 Mar 2017 18:36:21 +0000 (19:36 +0100)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
source3/winbindd/idmap.c
source3/winbindd/winbindd_proto.h

index d5471e9cdbae7296acfedd8a0fdfbfc326a72cd3..be4ee6436545f0cea8fecbc46c30cebbfbdd9bf1 100644 (file)
@@ -193,6 +193,21 @@ const char *idmap_config_const_string(const char *domname, const char *option,
        }
 }
 
+bool idmap_config_bool(const char *domname, const char *option, bool 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_bool(-1, config_option, option, def);
+       }
+}
+
 bool domain_has_idmap_config(const char *domname)
 {
        int i;
index b33c24ff39a14b2a8d8f8fe1345f60d18875d248..9afa780486c0eddf32291411f65f99fb6118a7d3 100644 (file)
@@ -380,6 +380,7 @@ 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 idmap_config_bool(const char *domname, const char *option, bool def);
 bool domain_has_idmap_config(const char *domname);
 bool lp_scan_idmap_domains(bool (*fn)(const char *domname,
                                      void *private_data),