diff options
author | Gerald Carter <jerry@samba.org> | 2001-05-07 14:04:46 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2001-05-07 14:04:46 +0000 |
commit | 30c4c04c2f584857633ce7605555dcfb37a3e1af (patch) | |
tree | cd8eb3081373a1d46a9e5d601e92467db40f9817 /source3/smbd/reply.c | |
parent | 050b0307f086037ec9c21d7125fd2a86cf218339 (diff) | |
download | samba-30c4c04c2f584857633ce7605555dcfb37a3e1af.tar.gz samba-30c4c04c2f584857633ce7605555dcfb37a3e1af.tar.bz2 samba-30c4c04c2f584857633ce7605555dcfb37a3e1af.zip |
Patch from Simo:
o sed 's/pdb_clear_sam/pdb_free_sam/g'
o add pdb_reset_sam()
o password changing should be ok now as well.
(This used to be commit 96d0e7c3301ad990f6c83b9c216720cb32661fb5)
Diffstat (limited to 'source3/smbd/reply.c')
-rw-r--r-- | source3/smbd/reply.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index c9ef881b59..41970c4040 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -436,7 +436,7 @@ static int session_trust_account(connection_struct *conn, char *inbuf, char *out } else { DEBUG(0,("session_trust_account: Trust account %s only supported with security = user\n", user)); SSVAL(outbuf, smb_flg2, SVAL(outbuf, smb_flg2) | FLAGS2_32_BIT_ERROR_CODES); - pdb_clear_sam(sam_trust_acct); + pdb_free_sam(sam_trust_acct); return(ERROR(0, NT_STATUS_LOGON_FAILURE)); } @@ -444,25 +444,25 @@ static int session_trust_account(connection_struct *conn, char *inbuf, char *out /* lkclXXXX: workstation entry doesn't exist */ DEBUG(0,("session_trust_account: Trust account %s user doesn't exist\n",user)); SSVAL(outbuf, smb_flg2, SVAL(outbuf, smb_flg2) | FLAGS2_32_BIT_ERROR_CODES); - pdb_clear_sam(sam_trust_acct); + pdb_free_sam(sam_trust_acct); return(ERROR(0, NT_STATUS_NO_SUCH_USER)); } else { if ((smb_passlen != 24) || (smb_nt_passlen != 24)) { DEBUG(0,("session_trust_account: Trust account %s - password length wrong.\n", user)); SSVAL(outbuf, smb_flg2, SVAL(outbuf, smb_flg2) | FLAGS2_32_BIT_ERROR_CODES); - pdb_clear_sam(sam_trust_acct); + pdb_free_sam(sam_trust_acct); return(ERROR(0, NT_STATUS_LOGON_FAILURE)); } if (!smb_password_ok(sam_trust_acct, NULL, (unsigned char *)smb_passwd, (unsigned char *)smb_nt_passwd)) { DEBUG(0,("session_trust_account: Trust Account %s - password failed\n", user)); SSVAL(outbuf, smb_flg2, SVAL(outbuf, smb_flg2) | FLAGS2_32_BIT_ERROR_CODES); - pdb_clear_sam(sam_trust_acct); + pdb_free_sam(sam_trust_acct); return(ERROR(0, NT_STATUS_LOGON_FAILURE)); } acct_ctrl = pdb_get_acct_ctrl(sam_trust_acct); - pdb_clear_sam(sam_trust_acct); + pdb_free_sam(sam_trust_acct); if (acct_ctrl & ACB_DOMTRUST) { DEBUG(0,("session_trust_account: Domain trust account %s denied by server\n",user)); SSVAL(outbuf, smb_flg2, SVAL(outbuf, smb_flg2) | FLAGS2_32_BIT_ERROR_CODES); |