boringssl/crypto/x509
David Benjamin 15e4deb165 d2i: don't update input pointer on failure
(Imported from upstream's 728bcd59d3d41e152aead0d15acc51a8958536d3.)

Actually this one was reported by us, but the commit message doesn't
mention this.

This is slightly modified from upstream's version to fix some problems
noticed in import. Specifically one of d2i_X509_AUX's success paths is
bust and d2i_PrivateKey still updates on one error path. Resolve the
latter by changing both it and d2i_AutoPrivateKey to explicitly hit the
error path on ret == NULL. This lets us remove the NULL check in
d2i_AutoPrivateKey.

We'll want to report the problems back upstream.

Change-Id: Ifcfc965ca6d5ec0a08ac154854bd351cafbaba25
Reviewed-on: https://boringssl-review.googlesource.com/5948
Reviewed-by: Adam Langley <agl@google.com>
2015-09-28 22:15:17 +00:00
..
a_digest.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
a_sign.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
a_strex.c Remove string.h from base.h. 2015-02-02 19:14:15 +00:00
a_verify.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
asn1_gen.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
by_dir.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
by_file.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
charmap.h Inital import. 2014-06-20 13:17:32 -07:00
CMakeLists.txt Move arm_arch.h and fix up lots of include paths. 2015-08-26 01:57:59 +00:00
i2d_pr.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
pkcs7_test.c Eliminate unnecessary includes from low-level crypto modules. 2015-04-13 20:49:18 +00:00
pkcs7.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
t_crl.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
t_req.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
t_x509.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
t_x509a.c Inital import. 2014-06-20 13:17:32 -07:00
vpm_int.h Update API to use (char *) for email addresses and hostnames. 2015-02-13 11:00:48 -08:00
x509_att.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_cmp.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_d2.c Inital import. 2014-06-20 13:17:32 -07:00
x509_def.c Inital import. 2014-06-20 13:17:32 -07:00
x509_ext.c Inital import. 2014-06-20 13:17:32 -07:00
x509_lu.c Add X509_CRL_up_ref. 2015-09-01 19:12:56 +00:00
x509_obj.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_r2x.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_req.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_set.c Omit version for v1 certificates. 2014-11-10 13:45:32 -08:00
x509_trs.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_txt.c Inital import. 2014-06-20 13:17:32 -07:00
x509_v3.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509_vfy.c Add X509_CRL_up_ref. 2015-09-01 19:12:56 +00:00
x509_vpm.c Require that FOO_free functions do nothing on NULL. 2015-05-04 22:58:13 +00:00
x509.c Inital import. 2014-06-20 13:17:32 -07:00
x509cset.c Add X509_CRL_up_ref. 2015-09-01 19:12:56 +00:00
x509name.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509rset.c Inital import. 2014-06-20 13:17:32 -07:00
x509spki.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x509type.c Inital import. 2014-06-20 13:17:32 -07:00
x_algor.c Fix various certificate fingerprint issues. 2015-01-09 19:41:59 +00:00
x_all.c Parse RSAPrivateKey with CBS. 2015-07-07 22:50:53 +00:00
x_attrib.c Inital import. 2014-06-20 13:17:32 -07:00
x_crl.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x_exten.c Inital import. 2014-06-20 13:17:32 -07:00
x_info.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x_name.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x_pkey.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x_pubkey.c Remove the func parameter to OPENSSL_PUT_ERROR. 2015-07-16 02:02:37 +00:00
x_req.c Remove last references to named locks. 2015-05-20 19:18:30 +00:00
x_sig.c Inital import. 2014-06-20 13:17:32 -07:00
x_spki.c Inital import. 2014-06-20 13:17:32 -07:00
x_val.c Inital import. 2014-06-20 13:17:32 -07:00
x_x509.c d2i: don't update input pointer on failure 2015-09-28 22:15:17 +00:00
x_x509a.c Fix memory leaks on error in x_x509a.c. 2015-08-31 18:54:17 +00:00