summaryrefslogtreecommitdiff
path: root/source3/passdb/pdb_tdb.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2002-01-25 11:44:15 +0000
committerAndrew Bartlett <abartlet@samba.org>2002-01-25 11:44:15 +0000
commit320f7cb4ac66bbb9fbfdd1f8b330264127c3f730 (patch)
treeb30ecc57246bec60b88ef26d5ed2dcf703b7676d /source3/passdb/pdb_tdb.c
parent30802965d21b27a2100dfdf8fdc8776eb176eb2a (diff)
downloadsamba-320f7cb4ac66bbb9fbfdd1f8b330264127c3f730.tar.gz
samba-320f7cb4ac66bbb9fbfdd1f8b330264127c3f730.tar.bz2
samba-320f7cb4ac66bbb9fbfdd1f8b330264127c3f730.zip
Passdb changes:
Modules now name themselves, which should allow for sane behaviour when we get an 'extern' passdb module (which in turn loads a .so). Fix up tdbsam for non-unix-accounts. Not sure if this fixes idra's bug, but its a start... Andrew Bartlett (This used to be commit 7d576d89d7b4a7b95e87a844568d7d7cd89f0542)
Diffstat (limited to 'source3/passdb/pdb_tdb.c')
-rw-r--r--source3/passdb/pdb_tdb.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/source3/passdb/pdb_tdb.c b/source3/passdb/pdb_tdb.c
index b1ba01fe98..5fdf348e15 100644
--- a/source3/passdb/pdb_tdb.c
+++ b/source3/passdb/pdb_tdb.c
@@ -131,8 +131,8 @@ static BOOL init_sam_from_buffer (struct tdbsam_privates *tdb_state,
}
if ((tdb_state->permit_non_unix_accounts)
- && (pdb_get_user_rid(sampass) >= tdb_state->low_nua_rid)
- && (pdb_get_user_rid(sampass) <= tdb_state->high_nua_rid)) {
+ && (user_rid >= tdb_state->low_nua_rid)
+ && (user_rid <= tdb_state->high_nua_rid)) {
} else {
struct passwd *pw;
@@ -142,7 +142,7 @@ static BOOL init_sam_from_buffer (struct tdbsam_privates *tdb_state,
* to try case permutations
*/
if (!username || !(pw=getpwnam_alloc(username))) {
- DEBUG(0,("tdb_sam: getpwnam_alloc(%s) return NULL. User does not exist!\n",
+ DEBUG(0,("tdbsam: getpwnam_alloc(%s) return NULL. User does not exist!\n",
username?username:"NULL"));
ret = False;
goto done;
@@ -842,6 +842,8 @@ NTSTATUS pdb_init_tdbsam(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method, con
return nt_status;
}
+ (*pdb_method)->name = "tdbsam";
+
(*pdb_method)->setsampwent = tdbsam_setsampwent;
(*pdb_method)->endsampwent = tdbsam_endsampwent;
(*pdb_method)->getsampwent = tdbsam_getsampwent;
@@ -851,8 +853,6 @@ NTSTATUS pdb_init_tdbsam(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method, con
(*pdb_method)->update_sam_account = tdbsam_update_sam_account;
(*pdb_method)->delete_sam_account = tdbsam_delete_sam_account;
- /* TODO: Setup private data and free */
-
tdb_state = talloc_zero(pdb_context->mem_ctx, sizeof(struct tdbsam_privates));
if (!tdb_state) {
@@ -886,6 +886,8 @@ NTSTATUS pdb_init_tdbsam_nua(PDB_CONTEXT *pdb_context, PDB_METHODS **pdb_method,
return nt_status;
}
+ (*pdb_method)->name = "tdbsam_nua";
+
tdb_state = (*pdb_method)->private_data;
tdb_state->permit_non_unix_accounts = True;