git.samba.org
/
samba.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a89060a
)
ldb: Return LDB_ERR_INSUFFICIENT_ACCESS_RIGHTS rather than OPERATIONS_ERROR on EACCES...
author
Andrew Bartlett
<abartlet@samba.org>
Wed, 5 Feb 2014 01:52:28 +0000
(14:52 +1300)
committer
Andrew Bartlett
<abartlet@samba.org>
Wed, 5 Feb 2014 07:42:25 +0000
(08:42 +0100)
This makes provision errors clearer in Samba.
Andrew Bartlett
Reviewed-by: Garming Sam <garming@catalyst.net.nz>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
lib/ldb/ldb_tdb/ldb_tdb.c
patch
|
blob
|
history
diff --git
a/lib/ldb/ldb_tdb/ldb_tdb.c
b/lib/ldb/ldb_tdb/ldb_tdb.c
index 30c58f5ee362b94669a195022f48d7f4993d94b3..d3c83f5d57988176e5ed4b467d3859ef07e94463 100644
(file)
--- a/
lib/ldb/ldb_tdb/ldb_tdb.c
+++ b/
lib/ldb/ldb_tdb/ldb_tdb.c
@@
-1560,10
+1560,13
@@
static int ltdb_connect(struct ldb_context *ldb, const char *url,
ldb_get_create_perms(ldb), ldb);
if (!ltdb->tdb) {
ldb_asprintf_errstring(ldb,
- "Unable to open tdb '%s'
", path
);
+ "Unable to open tdb '%s'
: %s", path, strerror(errno)
);
ldb_debug(ldb, LDB_DEBUG_ERROR,
- "Unable to open tdb '%s'
", path
);
+ "Unable to open tdb '%s'
: %s", path, strerror(errno)
);
talloc_free(ltdb);
+ if (errno == EACCES || errno == EPERM) {
+ return LDB_ERR_INSUFFICIENT_ACCESS_RIGHTS;
+ }
return LDB_ERR_OPERATIONS_ERROR;
}