The branch master has been updated via a6f5d614c53aaa58595af4998228e82404132739 (commit) from 5e93e5fc377ebc8bc30ffac1fa20a04cb25459eb (commit)
- Log ----------------------------------------------------------------- commit a6f5d614c53aaa58595af4998228e82404132739 Author: Rob Percival <robperci...@google.com> Date: Fri Aug 5 21:27:12 2016 -0400 Mkae CT_log_new_from_base64 always return 0 on failure In one failure case, it used to return -1. That failure case (CTLOG_new() returning NULL) was not usefully distinct from all of the other failure cases. Reviewed-by: Matt Caswell <m...@openssl.org> Reviewed-by: Rich Salz <rs...@openssl.org> (Merged from https://github.com/openssl/openssl/pull/1407) ----------------------------------------------------------------------- Summary of changes: crypto/ct/ct_b64.c | 2 +- include/openssl/ct.h | 5 ++++- util/libcrypto.num | 1 - 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/crypto/ct/ct_b64.c b/crypto/ct/ct_b64.c index 80bd45e..d13d8f2 100644 --- a/crypto/ct/ct_b64.c +++ b/crypto/ct/ct_b64.c @@ -149,7 +149,7 @@ int CTLOG_new_from_base64(CTLOG **ct_log, const char *pkey_base64, const char *n *ct_log = CTLOG_new(pkey, name); if (*ct_log == NULL) { EVP_PKEY_free(pkey); - return -1; + return 0; } return 1; diff --git a/include/openssl/ct.h b/include/openssl/ct.h index d77d168..07068af 100644 --- a/include/openssl/ct.h +++ b/include/openssl/ct.h @@ -408,12 +408,15 @@ __owur int o2i_SCT_signature(SCT *sct, const unsigned char **in, size_t len); /* * Creates a new CT log instance with the given |public_key| and |name|. + * Returns NULL if malloc fails or if |public_key| cannot be converted to DER. * Should be deleted by the caller using CTLOG_free when no longer needed. */ CTLOG *CTLOG_new(EVP_PKEY *public_key, const char *name); /* - * Creates a new CT |ct_log| instance with the given base64 public_key and |name|. + * Creates a new CTLOG instance with the base64-encoded SubjectPublicKeyInfo DER + * in |pkey_base64|. The |name| is a string to help users identify this log. + * Returns 1 on success, 0 on failure. * Should be deleted by the caller using CTLOG_free when no longer needed. */ int CTLOG_new_from_base64(CTLOG ** ct_log, diff --git a/util/libcrypto.num b/util/libcrypto.num index 0c7cd9a..a02cc8d 100644 --- a/util/libcrypto.num +++ b/util/libcrypto.num @@ -3484,7 +3484,6 @@ EVP_OpenFinal 3432 1_1_0 EXIST::FUNCTION:RSA RAND_egd_bytes 3433 1_1_0 EXIST::FUNCTION:EGD UI_method_get_writer 3434 1_1_0 EXIST::FUNCTION:UI BN_secure_new 3435 1_1_0 EXIST::FUNCTION: -CTLOG_new_null 3436 1_1_0 EXIST::FUNCTION:CT SHA1_Update 3437 1_1_0 EXIST::FUNCTION: BIO_s_connect 3438 1_1_0 EXIST::FUNCTION:SOCK EVP_MD_meth_get_init 3439 1_1_0 EXIST::FUNCTION: _____ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits