Use newer DES API so that smbk5pwd loads with newer OpenSSL

OpenSSL removed old DES API which used des_* functions.
24956ca00f

In order to link with libcrypto from recent OpenSSL releases, we need
to replace the older API des_* functions by the newer API DES_* functions.

Signed-off-by: Emmanuel Dreyfus <manu@netbsd.org>
This commit is contained in:
Emmanuel Dreyfus 2016-10-30 05:34:58 +01:00 committed by Quanah Gibson-Mount
parent 227e02ec20
commit 0d10236da9

View File

@ -154,7 +154,7 @@ static void lmPasswd_to_key(
k[7] = ((lpw[6]&0x7F)<<1);
#ifdef HAVE_OPENSSL
des_set_odd_parity( key );
DES_set_odd_parity( key );
#endif
}
@ -210,12 +210,12 @@ static void lmhash(
des_set_key( &ctx, key );
des_encrypt( &ctx, sizeof(key), hbuf[1], StdText );
#elif defined(HAVE_OPENSSL)
des_set_key_unchecked( &key, schedule );
des_ecb_encrypt( &StdText, &hbuf[0], schedule , DES_ENCRYPT );
DES_set_key_unchecked( &key, &schedule );
DES_ecb_encrypt( &StdText, &hbuf[0], &schedule , DES_ENCRYPT );
lmPasswd_to_key( &UcasePassword[7], &key );
des_set_key_unchecked( &key, schedule );
des_ecb_encrypt( &StdText, &hbuf[1], schedule , DES_ENCRYPT );
DES_set_key_unchecked( &key, &schedule );
DES_ecb_encrypt( &StdText, &hbuf[1], &schedule , DES_ENCRYPT );
#endif
hexify( (char *)hbuf, hash );