diff --git a/NEWS b/NEWS index f512509f14..5d1035c755 100644 --- a/NEWS +++ b/NEWS @@ -25,6 +25,7 @@ Bug fixes - [core] avoid generating broken DTSTART for the freebusy.ifb file (#4289) - [core] consider DAVx5 like Apple Calendar (#4304) - [core] improve handling of signer certificate (#4742) + - [core] added safety checks in S/MIME (#4745) 4.0.7 (2019-02-27) ------------------ diff --git a/SoObjects/Mailer/NSData+SMIME.m b/SoObjects/Mailer/NSData+SMIME.m index 2976b46352..b4de19f365 100644 --- a/SoObjects/Mailer/NSData+SMIME.m +++ b/SoObjects/Mailer/NSData+SMIME.m @@ -47,7 +47,7 @@ @implementation NSData (SOGoMailSMIME) // - (NSData *) signUsingCertificateAndKey: (NSData *) theData { - NSData *output; + NSData *output = NULL; BIO *tbio = NULL, *sbio = NULL, *obio = NULL; X509 *scert = NULL; @@ -65,7 +65,6 @@ - (NSData *) signUsingCertificateAndKey: (NSData *) theData OpenSSL_add_all_algorithms(); ERR_load_crypto_strings(); - output = nil; bytes = [theData bytes]; len = [theData length]; @@ -128,7 +127,7 @@ - (NSData *) signUsingCertificateAndKey: (NSData *) theData // - (NSData *) encryptUsingCertificate: (NSData *) theData { - NSData *output; + NSData *output = NULL; BUF_MEM *bptr = NULL; BIO *tbio = NULL, *sbio = NULL, *obio = NULL; @@ -215,7 +214,7 @@ - (NSData *) encryptUsingCertificate: (NSData *) theData // - (NSData *) decryptUsingCertificate: (NSData *) theData { - NSData *output; + NSData *output = NULL; BIO *tbio, *sbio, *obio; BUF_MEM *bptr; @@ -311,7 +310,7 @@ - (NGMimeMessage *) messageFromEncryptedDataAndCertificate: (NSData *) theCertif // - (NSData *) convertPKCS12ToPEMUsingPassword: (NSString *) thePassword { - NSData *output; + NSData *output = NULL; BIO *ibio, *obio; EVP_PKEY *pkey; @@ -326,7 +325,6 @@ - (NSData *) convertPKCS12ToPEMUsingPassword: (NSString *) thePassword OpenSSL_add_all_algorithms(); ERR_load_crypto_strings(); - output = nil; bytes = [self bytes]; len = [self length]; @@ -383,7 +381,7 @@ - (NSData *) convertPKCS12ToPEMUsingPassword: (NSString *) thePassword // - (NSData *) signersFromPKCS7 { - NSData *output; + NSData *output = NULL; STACK_OF(X509) *certs = NULL; BIO *ibio, *obio;