From 960df6d7a11eef90128dc2ae660866b27f0e4336 Mon Sep 17 00:00:00 2001 From: muquit Date: Wed, 21 Sep 2016 12:46:24 -0400 Subject: [PATCH] OpenSSL 1.1 support for HMAC api --- utils.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) --- a/utils.c +++ b/utils.c @@ -791,8 +791,14 @@ char *encode_cram_md5(char *challenge,ch unsigned char hmac_md5[16]; +#if OPENSSL_VERSION_NUMBER < 0x10100000L HMAC_CTX ctx; +#else + /* OpenSSL 1.1.x*/ + HMAC_CTX + *ctx; +#endif const EVP_MD *md5=NULL; @@ -831,11 +837,20 @@ char *encode_cram_md5(char *challenge,ch showVerbose("Challenge After decoding: %s\n",data); /* take HMAC-MD5 of the challenge*/ + +#if OPENSSL_VERSION_NUMBER < 0x10100000L md5=EVP_get_digestbyname("md5"); HMAC_CTX_init(&ctx); HMAC_Init(&ctx,secret,strlen(secret),md5); HMAC_Update(&ctx,data,data_len); HMAC_Final(&ctx,hmac_md5,&hmac_len); +#else + /* OpenSSL 1.1.x */ + ctx = HMAC_CTX_new(); + HMAC_Init_ex(ctx,secret,strlen(secret),EVP_md5(),NULL); + HMAC_Update(ctx,data,data_len); + HMAC_Final(ctx,hmac_md5,&hmac_len); +#endif /* convert the digest to hex */ memset(hex,0,sizeof(hex));