summaryrefslogtreecommitdiffstats
path: root/server/confdb/confdb.c
diff options
context:
space:
mode:
Diffstat (limited to 'server/confdb/confdb.c')
-rw-r--r--server/confdb/confdb.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/server/confdb/confdb.c b/server/confdb/confdb.c
index 3064101a1..7d11fae7e 100644
--- a/server/confdb/confdb.c
+++ b/server/confdb/confdb.c
@@ -20,13 +20,14 @@
*/
#define _GNU_SOURCE
+#include "config.h"
#include <string.h>
#include <errno.h>
#include "ldb.h"
#include "ldb_errors.h"
#include "util/util.h"
#define CONFDB_VERSION "0.1"
-#define CONFDB_FILE "/var/lib/sss/db/config.ldb"
+#define CONFDB_FILE "config.ldb"
#define CONFDB_DOMAIN_BASEDN "cn=domains,cn=config"
#define CONFDB_DOMAIN_ATTR "cn"
@@ -417,6 +418,7 @@ int confdb_init(TALLOC_CTX *mem_ctx,
struct confdb_ctx **cdb_ctx)
{
struct confdb_ctx *cdb;
+ char *confdb_location;
int ret;
cdb = talloc_zero(mem_ctx, struct confdb_ctx);
@@ -429,12 +431,21 @@ int confdb_init(TALLOC_CTX *mem_ctx,
return EIO;
}
- ret = ldb_connect(cdb->ldb, CONFDB_FILE, 0, NULL);
+ confdb_location = talloc_asprintf(cdb,"%s/%s", DB_PATH,CONFDB_FILE);
+ if (confdb_location == NULL) {
+ talloc_free(cdb);
+ return ENOMEM;
+ }
+ DEBUG(3, ("CONFDB: %s\n",confdb_location));
+
+ ret = ldb_connect(cdb->ldb, confdb_location, 0, NULL);
if (ret != LDB_SUCCESS) {
talloc_free(cdb);
return EIO;
}
+ talloc_free(confdb_location);
+
ret = confdb_test(cdb);
if (ret == ENOENT) {
ret = confdb_init_db(cdb);