From: Anirudh Ramachandran Date: Wed, 8 Mar 2017 18:10:42 +0000 (-0800) Subject: Fix mcrouter-oss build X-Git-Tag: v2017.03.13.00~13 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;ds=sidebyside;h=162ba31064ad2093e1fcb11ef4e02ab2a62eacb6;p=folly.git Fix mcrouter-oss build Summary: D4624754 broke mcrouter-oss because that uses older OpenSSL (1.0.1). Reviewed By: yfeldblum, jmswen Differential Revision: D4670767 fbshipit-source-id: f297c8d3e013525bb36bd059eb40c70f0c4c2dcc --- diff --git a/folly/ssl/OpenSSLCertUtils.cpp b/folly/ssl/OpenSSLCertUtils.cpp index d06cdac7..238fa689 100644 --- a/folly/ssl/OpenSSLCertUtils.cpp +++ b/folly/ssl/OpenSSLCertUtils.cpp @@ -128,17 +128,19 @@ folly::Optional OpenSSLCertUtils::toString(X509& x509) { throw std::runtime_error("Cannot allocate bio"); } - if (X509_print_ex( - in.get(), - &x509, - XN_FLAG_ONELINE, - X509_FLAG_NO_HEADER | /* A few bytes of cert and data */ - X509_FLAG_NO_PUBKEY | /* Public key */ - X509_FLAG_NO_IDS | /* Issuer/subject IDs */ - X509_FLAG_NO_AUX | /* Auxiliary info? */ - X509_FLAG_NO_SIGDUMP | /* Prints the signature */ - X509_FLAG_NO_SIGNAME /* Signature algorithms */ - ) > 0) { + int flags = 0; + + flags |= X509_FLAG_NO_HEADER | /* A few bytes of cert and data */ + X509_FLAG_NO_PUBKEY | /* Public key */ + X509_FLAG_NO_AUX | /* Auxiliary info? */ + X509_FLAG_NO_SIGDUMP | /* Prints the signature */ + X509_FLAG_NO_SIGNAME; /* Signature algorithms */ + +#ifdef X509_FLAG_NO_IDS + flags |= X509_FLAG_NO_IDS; /* Issuer/subject IDs */ +#endif + + if (X509_print_ex(in.get(), &x509, XN_FLAG_ONELINE, flags) > 0) { char* bioData = nullptr; size_t bioLen = BIO_get_mem_data(in.get(), &bioData); return std::string(bioData, bioLen);