[PATCH v2 2/3] imap-send: eliminate HMAC warnings on OS X 10.8
- From
David Aguilar <davvid@gmail.com>
- Date
- May 11, 2013, 08:22 UTC
- Message-ID
- <1368260548-52612-2-git-send-email-davvid@gmail.com>
- In-Reply-To
- <1368260548-52612-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.
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: David Aguilar <davvid@gmail.com> --- Rebased to 2/3.
Makefile | 5 +++++ imap-send.c | 10 ++++++++++ 2 files changed, 15 insertions(+)
diff --git a/Makefile b/Makefile index f698c1a..25282b4 100644 --- a/Makefile +++ b/Makefile @@ -1054,6 +1054,7 @@ ifeq ($(uname_S),Darwin) BASIC_LDFLAGS += -L/opt/local/lib endif endif + COMMON_DIGEST_HMAC = YesPlease NO_REGEX = YesPlease PTHREAD_LIBS = endif @@ -1393,6 +1394,10 @@ else EXTLIBS += $(LIB_4_CRYPTO) 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 <CommonCrypto/CommonHMAC.h> +#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 <openssl/evp.h> #include <openssl/hmac.h> +#endif #include <openssl/x509v3.h> #endif
-- 1.8.3.rc1.47.g41936fa