s3:winbind: Do not start with an invalid default idmap backend
authorAndreas Schneider <asn@samba.org>
Mon, 12 Dec 2016 09:05:39 +0000 (10:05 +0100)
committerJeremy Allison <jra@samba.org>
Mon, 12 Dec 2016 19:19:11 +0000 (20:19 +0100)
Pair-Programmed-With: Michael Adam <obnox@samba.org>
Signed-off-by: Andreas Schneider <asn@samba.org>
Signed-off-by: Michael Adam <obnox@samba.org>
source3/winbindd/winbindd.c

index 778ee808d0cc7c7ccd5fc0a9cc25cf296388ac47..2cd200142673f9c15f4f15952fb48180d1c21520 100644 (file)
@@ -1689,6 +1689,25 @@ int main(int argc, const char **argv)
                exit(1);
        }
 
+       {
+               size_t i;
+               const char *idmap_backend;
+               const char *invalid_backends[] = {
+                       "ad", "rfc2307", "rid",
+               };
+
+               idmap_backend = lp_idmap_default_backend();
+               for (i = 0; i < ARRAY_SIZE(invalid_backends); i++) {
+                       ok = strequal(idmap_backend, invalid_backends[i]);
+                       if (ok) {
+                               DBG_ERR("FATAL: Invalid idmap backend %s "
+                                       "configured as the default backend!\n",
+                                       idmap_backend);
+                               exit(1);
+                       }
+               }
+       }
+
        ok = directory_create_or_exist(lp_lock_directory(), 0755);
        if (!ok) {
                DEBUG(0, ("Failed to create directory %s for lock files - %s\n",