mirror of
https://github.com/samba-team/samba.git
synced 2025-01-27 14:04:05 +03:00
s3:net idmap: fix error reporting in net_idmap_dbfile()
The last case which results in dbfile == NULL is not an out of memory case but means no --db has been specified and the idmap backend is not supported for auto-determining the idmap tdb file.
This commit is contained in:
parent
e2795f5664
commit
92f856c513
@ -61,14 +61,23 @@ static const char* net_idmap_dbfile(struct net_context *c)
|
||||
|
||||
if (c->opt_db != NULL) {
|
||||
dbfile = talloc_strdup(talloc_tos(), c->opt_db);
|
||||
if (dbfile == NULL) {
|
||||
d_fprintf(stderr, _("Out of memory!\n"));
|
||||
}
|
||||
} else if (strequal(lp_idmap_backend(), "tdb")) {
|
||||
dbfile = state_path("winbindd_idmap.tdb");
|
||||
if (dbfile == NULL) {
|
||||
d_fprintf(stderr, _("Out of memory!\n"));
|
||||
}
|
||||
} else if (strequal(lp_idmap_backend(), "tdb2")) {
|
||||
dbfile = lp_parm_talloc_string(-1, "tdb", "idmap2.tdb", NULL);
|
||||
if (dbfile == NULL) {
|
||||
dbfile = talloc_asprintf(talloc_tos(), "%s/idmap2.tdb",
|
||||
lp_private_dir());
|
||||
}
|
||||
if (dbfile == NULL) {
|
||||
d_fprintf(stderr, _("Out of memory!\n"));
|
||||
}
|
||||
} else {
|
||||
char* backend = talloc_strdup(talloc_tos(), lp_idmap_backend());
|
||||
char* args = strchr(backend, ':');
|
||||
@ -81,9 +90,7 @@ static const char* net_idmap_dbfile(struct net_context *c)
|
||||
|
||||
talloc_free(backend);
|
||||
}
|
||||
if (dbfile == NULL) {
|
||||
DEBUG(0,("Out of memory\n"));
|
||||
}
|
||||
|
||||
return dbfile;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user