diff options
author | Simo Sorce <simo@redhat.com> | 2014-08-06 13:26:35 -0400 |
---|---|---|
committer | Simo Sorce <simo@redhat.com> | 2014-08-06 15:44:28 -0400 |
commit | bf15dd42184fa5daa0911b4a4030727a8e691027 (patch) | |
tree | 031925374986becc35c243176cbb27e722fa20e3 | |
parent | b1db05383e6681c0f7d1cc0ee578c2ca763fb1e1 (diff) | |
download | gss-ntlmssp-bf15dd42184fa5daa0911b4a4030727a8e691027.tar.gz gss-ntlmssp-bf15dd42184fa5daa0911b4a4030727a8e691027.tar.xz gss-ntlmssp-bf15dd42184fa5daa0911b4a4030727a8e691027.zip |
Generate LM hash when getting pwd from cred_store
This is needed when NTLMSSP_NEGOTIATE_LM_KEY is used at lower,
LM_COMPTE_LEVEL (eg, level 0) by a client and NTLMv1 auth.
-rw-r--r-- | src/gss_creds.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gss_creds.c b/src/gss_creds.c index 7ccc6be..17ac3f6 100644 --- a/src/gss_creds.c +++ b/src/gss_creds.c @@ -221,6 +221,14 @@ static int get_creds_from_store(struct gssntlm_name *name, cred->cred.user.nt_hash.length = 16; ret = NTOWFv1(cred_store->elements[i].value, &cred->cred.user.nt_hash); + + if (gssntlm_get_lm_compatibility_level() < 3) { + cred->cred.user.lm_hash.length = 16; + ret = LMOWFv1(cred_store->elements[i].value, + &cred->cred.user.lm_hash); + if (ret) return ret; + } + if (ret) return ret; } } |