groupdb: readd groupdb:backend parametric option
authorStefan Metzmacher <metze@samba.org>
Fri, 28 Mar 2008 07:24:28 +0000 (08:24 +0100)
committerStefan Metzmacher <metze@samba.org>
Sat, 12 Apr 2008 07:21:04 +0000 (09:21 +0200)
This reverts c5adb92c020e38644baf1afc8fc570a518cd6307.

The reason is that ldb doesn't work for cluster setups yet.

metze
(This used to be commit 5f5d90ef76b969ecbe564399368a7450c4e3d155)

source3/groupdb/mapping.c

index 1ddda583df8ea0f3f6af65f6d83e85fbce8b6226..ce66bfa64fa56229a4fd988ddb14962046921352 100644 (file)
@@ -30,12 +30,30 @@ static const struct mapping_backend *backend;
  */
 static bool init_group_mapping(void)
 {
+       const char *backend_string;
+
        if (backend != NULL) {
                /* already initialised */
                return True;
        }
-       
-       backend = groupdb_ldb_init();
+
+       /*
+        * default to using the ldb backend. This parameter should
+        * disappear in future versions of Samba3.
+        *
+        * But it's needed for cluster setups, because it's
+        * not yet possible to distribute a ldb inside a cluster.
+        */
+       backend_string = lp_parm_const_string(-1, "groupdb", "backend", "ldb");
+
+       if (strcmp(backend_string, "ldb") == 0) {
+               backend = groupdb_ldb_init();
+       } else if (strcmp(backend_string, "tdb") == 0) {
+               backend = groupdb_tdb_init();
+       } else {
+               DEBUG(0,("Unknown groupdb backend '%s'\n", backend_string));
+               smb_panic("Unknown groupdb backend");
+       }
 
        return backend != NULL;
 }