Eric Sunshine <sunshine@xxxxxxxxxxxxxx> writes: > From: David Aguilar <davvid@xxxxxxxxx> > > As of Mac OS X 10.7, Apple deprecated all OpenSSL functions due to > OpenSSL ABI instability. Silence the warnings by using Apple's > CommonCrypto HMAC replacement functions. > > [es: reworded commit message; eliminated abuse of > COMMON_DIGEST_FOR_OPENSSL by checking NO_APPLE_COMMON_CRYPTO instead] > > Signed-off-by: David Aguilar <davvid@xxxxxxxxx> > Signed-off-by: Eric Sunshine <sunshine@xxxxxxxxxxxxxx> > --- > imap-send.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/imap-send.c b/imap-send.c > index d9bcfb4..642448c 100644 > --- a/imap-send.c > +++ b/imap-send.c > @@ -29,8 +29,18 @@ > #ifdef NO_OPENSSL > typedef void *SSL; > #else > +#ifndef NO_APPLE_COMMON_CRYPTO > +#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 Doesn't this mean people on platforms that do not care what Apple does have to define NO_APPLE_COMMON_CRYPTO? How about stopping this double-negation and do it more like this? * In Makefile (1/3), in uname_S == Darwin section, define COMPAT_CFLAGS += DAPPLE_COMMON_CRYPTO by default, unless the builder declines it with "make NO_APPLE_COMMON_CRYPTO=NoThanks" * Express this part as #ifdef APPLE_COMMON_CRYPTO ... do the common crypto thing ... #else ... everybody else ... #endif > #include <openssl/x509v3.h> > #endif -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html