From: David Aguilar Date: Sat, 11 May 2013 04:43:26 GMT Subject: [PATCH] imap-send: eliminate HMAC warnings on OS X 10.8 Message-ID: <1368247406-10334-1-git-send-email-davvid@gmail.com> Mac OS X Mountain Lion warns that HMAC_Init() and friends are deprecated. Use CommonCrypto's HMAC to eliminate the warnings. Signed-off-by: David Aguilar --- This builds upon the patch I sent earlier, so technically it's 2/2 While researching these errors I found this: http://opensource.apple.com/source/Git/Git-37/src/git/imap-send.c The approach in this patch is similar in spirit, but simpler since it avoids pushing #ifdefs into the function bodies. Makefile | 5 +++++ imap-send.c | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/Makefile b/Makefile index d8a45b4..7e12999 100644 --- a/Makefile +++ b/Makefile @@ -1055,6 +1055,7 @@ ifeq ($(uname_S),Darwin) endif endif COMMON_DIGEST_SHA1 = YesPlease + COMMON_DIGEST_HMAC = YesPlease PTHREAD_LIBS = endif @@ -1399,6 +1400,10 @@ else endif endif endif + +ifdef COMMON_DIGEST_HMAC + BASIC_CFLAGS += -DCOMMON_DIGEST_FOR_HMAC=1 +endif ifdef NO_PERL_MAKEMAKER export NO_PERL_MAKEMAKER endif diff --git a/imap-send.c b/imap-send.c index d9bcfb4..1b2e69c 100644 --- a/imap-send.c +++ b/imap-send.c @@ -29,8 +29,18 @@ #ifdef NO_OPENSSL typedef void *SSL; #else +#ifdef COMMON_DIGEST_FOR_HMAC +#include +#define HMAC_CTX CCHmacContext +#define HMAC_Init(hmac, key, len, algo) CCHmacInit(hmac, algo, key, len) +#define HMAC_Update CCHmacUpdate +#define HMAC_Final(hmac, hash, ptr) CCHmacFinal(hmac, hash) +#define HMAC_CTX_cleanup +#define EVP_md5() kCCHmacAlgMD5 +#else #include #include +#endif #include #endif -- 1.8.3.rc1.46.g9f9589e