summaryrefslogtreecommitdiff
path: root/source4/libcli/auth/schannel.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2004-06-03 23:15:16 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:56:25 -0500
commit8087d844ef59a82617be51f7c887b9bafe362f80 (patch)
treee09e1761bc871b73eeaf5c25109e9d8daf207c1d /source4/libcli/auth/schannel.c
parent4309727424a0a27bbf5372789bc8644b96a28ba9 (diff)
downloadsamba-8087d844ef59a82617be51f7c887b9bafe362f80.tar.gz
samba-8087d844ef59a82617be51f7c887b9bafe362f80.tar.bz2
samba-8087d844ef59a82617be51f7c887b9bafe362f80.zip
r995: - renamed many of our crypto routines to use the industry standard
names rather than our crazy naming scheme. So DES is now called des_crypt() rather than smbhash() - added the code from the solution of the ADS crypto challenge that allows Samba to correctly handle a 128 bit session key in all of the netr_ServerAuthenticateX() varients. A huge thanks to Luke Howard from PADL for solving this one! - restructured the server side rpc authentication to allow for other than NTLMSSP sign and seal. This commit just adds the structure, the next commit will add schannel server side support. - added 128 bit session key support to our client side code, and testing against w2k3 with smbtorture. Works well. (This used to be commit 729b2f41c924a0b435d44a14209e6dacc2304cee)
Diffstat (limited to 'source4/libcli/auth/schannel.c')
-rw-r--r--source4/libcli/auth/schannel.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/source4/libcli/auth/schannel.c b/source4/libcli/auth/schannel.c
index 666eb811ae..294873feff 100644
--- a/source4/libcli/auth/schannel.c
+++ b/source4/libcli/auth/schannel.c
@@ -35,7 +35,7 @@ static void netsec_deal_with_seq_num(struct schannel_state *state,
hmac_md5(state->session_key, zeros, sizeof(zeros), digest1);
hmac_md5(digest1, packet_digest, 8, sequence_key);
- SamOEMhash(seq_num, sequence_key, 8);
+ arcfour_crypt(seq_num, sequence_key, 8);
state->seq_num++;
}
@@ -113,8 +113,8 @@ NTSTATUS schannel_unseal_packet(struct schannel_state *state,
SIVAL(seq_num, 4, state->initiator?0:0x80);
netsec_get_sealing_key(state->session_key, seq_num, sealing_key);
- SamOEMhash(confounder, sealing_key, 8);
- SamOEMhash(data, sealing_key, length);
+ arcfour_crypt(confounder, sealing_key, 8);
+ arcfour_crypt(data, sealing_key, length);
schannel_digest(state->session_key,
netsec_sig, confounder,
@@ -204,8 +204,8 @@ NTSTATUS schannel_seal_packet(struct schannel_state *state,
data, length, digest_final);
netsec_get_sealing_key(state->session_key, seq_num, sealing_key);
- SamOEMhash(confounder, sealing_key, 8);
- SamOEMhash(data, sealing_key, length);
+ arcfour_crypt(confounder, sealing_key, 8);
+ arcfour_crypt(data, sealing_key, length);
netsec_deal_with_seq_num(state, digest_final, seq_num);