summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2015-05-03 19:35:11 +0200
committerJakub Hrozek <jhrozek@redhat.com>2015-05-03 19:35:11 +0200
commitc73df13d1b68b396794f263eb1dbb0cd2381dc19 (patch)
treeb8579f18b5de89240814a5d9334e842b14251c1e
parentc0cf8b5af6d9144ea5ffe535e0b37105360007ae (diff)
downloadsssd-c73df13d1b68b396794f263eb1dbb0cd2381dc19.tar.gz
sssd-c73df13d1b68b396794f263eb1dbb0cd2381dc19.tar.xz
sssd-c73df13d1b68b396794f263eb1dbb0cd2381dc19.zip
Make the db configurable with a environment variable
-rw-r--r--src/db/sysdb.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/db/sysdb.c b/src/db/sysdb.c
index 9da655759..e52790b3c 100644
--- a/src/db/sysdb.c
+++ b/src/db/sysdb.c
@@ -35,6 +35,8 @@ errno_t sysdb_ldb_connect(TALLOC_CTX *mem_ctx, const char *filename,
int ret;
struct ldb_context *ldb;
const char *mod_path;
+ const char *db;
+ const char *dbpath;
if (_ldb == NULL) {
return EINVAL;
@@ -56,7 +58,12 @@ errno_t sysdb_ldb_connect(TALLOC_CTX *mem_ctx, const char *filename,
ldb_set_modules_dir(ldb, mod_path);
}
- ret = ldb_connect(ldb, filename, 0, NULL);
+ db = getenv("LDB_BACKEND");
+ if (db == NULL) db = "tdb";
+
+ dbpath = talloc_asprintf(ldb, "%s://%s", db, filename);
+
+ ret = ldb_connect(ldb, dbpath, 0, NULL);
if (ret != LDB_SUCCESS) {
return EIO;
}