switch to use EVP interface instead of old MDX_ style interface
This commit is contained in:
@@ -74,32 +74,36 @@ hash_input_chan_bindings (const gss_channel_bindings_t b,
|
|||||||
u_char *p)
|
u_char *p)
|
||||||
{
|
{
|
||||||
u_char num[4];
|
u_char num[4];
|
||||||
MD5_CTX md5;
|
EVP_MD_CTX ctx;
|
||||||
|
|
||||||
|
EVP_MD_CTX_init(&ctx);
|
||||||
|
EVP_DigestInit_ex(&ctx, EVP_md5(), NULL);
|
||||||
|
|
||||||
MD5_Init(&md5);
|
|
||||||
_gsskrb5_encode_om_uint32 (b->initiator_addrtype, num);
|
_gsskrb5_encode_om_uint32 (b->initiator_addrtype, num);
|
||||||
MD5_Update (&md5, num, sizeof(num));
|
EVP_DigestUpdate(&ctx, num, sizeof(num));
|
||||||
_gsskrb5_encode_om_uint32 (b->initiator_address.length, num);
|
_gsskrb5_encode_om_uint32 (b->initiator_address.length, num);
|
||||||
MD5_Update (&md5, num, sizeof(num));
|
EVP_DigestUpdate(&ctx, num, sizeof(num));
|
||||||
if (b->initiator_address.length)
|
if (b->initiator_address.length)
|
||||||
MD5_Update (&md5,
|
EVP_DigestUpdate(&ctx,
|
||||||
b->initiator_address.value,
|
b->initiator_address.value,
|
||||||
b->initiator_address.length);
|
b->initiator_address.length);
|
||||||
_gsskrb5_encode_om_uint32 (b->acceptor_addrtype, num);
|
_gsskrb5_encode_om_uint32 (b->acceptor_addrtype, num);
|
||||||
MD5_Update (&md5, num, sizeof(num));
|
EVP_DigestUpdate(&ctx, num, sizeof(num));
|
||||||
_gsskrb5_encode_om_uint32 (b->acceptor_address.length, num);
|
_gsskrb5_encode_om_uint32 (b->acceptor_address.length, num);
|
||||||
MD5_Update (&md5, num, sizeof(num));
|
EVP_DigestUpdate(&ctx, num, sizeof(num));
|
||||||
if (b->acceptor_address.length)
|
if (b->acceptor_address.length)
|
||||||
MD5_Update (&md5,
|
EVP_DigestUpdate(&ctx,
|
||||||
b->acceptor_address.value,
|
b->acceptor_address.value,
|
||||||
b->acceptor_address.length);
|
b->acceptor_address.length);
|
||||||
_gsskrb5_encode_om_uint32 (b->application_data.length, num);
|
_gsskrb5_encode_om_uint32 (b->application_data.length, num);
|
||||||
MD5_Update (&md5, num, sizeof(num));
|
EVP_DigestUpdate(&ctx, num, sizeof(num));
|
||||||
if (b->application_data.length)
|
if (b->application_data.length)
|
||||||
MD5_Update (&md5,
|
EVP_DigestUpdate(&ctx,
|
||||||
b->application_data.value,
|
b->application_data.value,
|
||||||
b->application_data.length);
|
b->application_data.length);
|
||||||
MD5_Final (p, &md5);
|
EVP_DigestFinal_ex(&ctx, p, NULL);
|
||||||
|
EVP_MD_CTX_cleanup(&ctx);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user