diff options
author | Jeremy Allison <jra@samba.org> | 2006-02-08 22:16:03 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:09:59 -0500 |
commit | 86358fc10bb02bd3069736bedb120f52fa3f6494 (patch) | |
tree | c150b7213e364ff833579d54470eab23c8537667 /source3/libsmb | |
parent | 1e68cce96dce53557a5f2edbf1539a144db377b5 (diff) | |
download | samba-86358fc10bb02bd3069736bedb120f52fa3f6494.tar.gz samba-86358fc10bb02bd3069736bedb120f52fa3f6494.tar.bz2 samba-86358fc10bb02bd3069736bedb120f52fa3f6494.zip |
r13396: Add in userinfo26, re-enable userinfo25 - took the knowledge
from Samba4 on how to decode the 532 byte password buffers.
Getting closer to passing samba4 RPC-SCHANNEL test.
Jeremy.
(This used to be commit 205db6968a26c43dec64c14d8053d8e66807086f)
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/smbencrypt.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/source3/libsmb/smbencrypt.c b/source3/libsmb/smbencrypt.c index 99f99f23f8..5bdd0acd3e 100644 --- a/source3/libsmb/smbencrypt.c +++ b/source3/libsmb/smbencrypt.c @@ -531,6 +531,25 @@ BOOL decode_pw_buffer(uint8 in_buffer[516], char *new_pwrd, } /*********************************************************** + Decode an arc4 encrypted password change buffer. +************************************************************/ + +void encode_or_decode_arc4_passwd_buffer(char pw_buf[532], const DATA_BLOB *psession_key) +{ + struct MD5Context tctx; + unsigned char key_out[16]; + + /* Confounder is last 16 bytes. */ + + MD5Init(&tctx); + MD5Update(&tctx, &pw_buf[516], 16); + MD5Update(&tctx, psession_key->data, psession_key->length); + MD5Final(key_out, &tctx); + /* arc4 with key_out. */ + SamOEMhash(pw_buf, key_out, 516); +} + +/*********************************************************** Encrypt/Decrypt used for LSA secrets and trusted domain passwords. ************************************************************/ |