summaryrefslogtreecommitdiff
path: root/source3/auth/auth_rhosts.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2003-07-05 10:39:41 +0000
committerAndrew Bartlett <abartlet@samba.org>2003-07-05 10:39:41 +0000
commit85921dbd6fa417aa451ab9b6e88ecb7900333549 (patch)
tree8bdb5a575f2f9dc06d29480bbf5165e5bb8760c6 /source3/auth/auth_rhosts.c
parenta3ddfa5069c9df07626135aa5fd2ec411c41943f (diff)
downloadsamba-85921dbd6fa417aa451ab9b6e88ecb7900333549.tar.gz
samba-85921dbd6fa417aa451ab9b6e88ecb7900333549.tar.bz2
samba-85921dbd6fa417aa451ab9b6e88ecb7900333549.zip
Add some debug statments to our vampire code - try to make it easier to track
down failures. Add a 'auto-add on modify' feature to guestsam Fix some segfault bugs on no-op idmap modifications, and on new idmappings that do not have a DN to tack onto. Make the 'private data' a bit more robust. Andrew Bartlett (This used to be commit 6c48309cda9538da5a32f3d88a7bb9c413ae9e8e)
Diffstat (limited to 'source3/auth/auth_rhosts.c')
-rw-r--r--source3/auth/auth_rhosts.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/auth/auth_rhosts.c b/source3/auth/auth_rhosts.c
index e2c6f0b06a..fab2d551f2 100644
--- a/source3/auth/auth_rhosts.c
+++ b/source3/auth/auth_rhosts.c
@@ -162,11 +162,13 @@ static NTSTATUS check_hostsequiv_security(const struct auth_context *auth_contex
const auth_usersupplied_info *user_info,
auth_serversupplied_info **server_info)
{
- NTSTATUS nt_status = NT_STATUS_NOT_IMPLEMENTED;
+ NTSTATUS nt_status;
SAM_ACCOUNT *account = NULL;
if (!NT_STATUS_IS_OK(nt_status =
auth_get_sam_account(user_info->internal_username.str,
&account))) {
+ if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_SUCH_USER))
+ nt_status = NT_STATUS_NOT_IMPLEMENTED;
return nt_status;
}
@@ -174,6 +176,7 @@ static NTSTATUS check_hostsequiv_security(const struct auth_context *auth_contex
nt_status = make_server_info_sam(server_info, account);
} else {
pdb_free_sam(&account);
+ nt_status = NT_STATUS_NOT_IMPLEMENTED;
}
return nt_status;
@@ -202,7 +205,7 @@ static NTSTATUS check_rhosts_security(const struct auth_context *auth_context,
const auth_usersupplied_info *user_info,
auth_serversupplied_info **server_info)
{
- NTSTATUS nt_status = NT_STATUS_NOT_IMPLEMENTED;
+ NTSTATUS nt_status;
SAM_ACCOUNT *account = NULL;
pstring rhostsfile;
const char *home;
@@ -210,6 +213,8 @@ static NTSTATUS check_rhosts_security(const struct auth_context *auth_context,
if (!NT_STATUS_IS_OK(nt_status =
auth_get_sam_account(user_info->internal_username.str,
&account))) {
+ if (NT_STATUS_EQUAL(nt_status, NT_STATUS_NO_SUCH_USER))
+ nt_status = NT_STATUS_NOT_IMPLEMENTED;
return nt_status;
}
@@ -226,6 +231,7 @@ static NTSTATUS check_rhosts_security(const struct auth_context *auth_context,
unbecome_root();
} else {
pdb_free_sam(&account);
+ nt_status = NT_STATUS_NOT_IMPLEMENTED;
}
return nt_status;