mirror of
https://github.com/openssl/openssl.git
synced 2025-02-23 14:42:15 +08:00
When creating a signed S/MIME message using SMIME_write_CMS() if the reading from the bio fails, the state is therefore still ASN1_STATE_START when BIO_flush() is called by i2d_ASN1_bio_stream(). This results in calling asn1_bio_flush_ex cleanup but will only reset retry flags as the state is not ASN1_STATE_POST_COPY. Therefore 48 bytes (Linux x86_64) leaked since the ndef_prefix_free / ndef_suffix_free callbacks are not executed and the ndef_aux structure is not freed. By always calling free function callback in asn1_bio_free() the memory leak is fixed. Reviewed-by: Paul Dale <pauli@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14844) |
||
---|---|---|
.. | ||
a_bitstr.c | ||
a_d2i_fp.c | ||
a_digest.c | ||
a_dup.c | ||
a_gentm.c | ||
a_i2d_fp.c | ||
a_int.c | ||
a_mbstr.c | ||
a_object.c | ||
a_octet.c | ||
a_print.c | ||
a_sign.c | ||
a_strex.c | ||
a_strnid.c | ||
a_time.c | ||
a_type.c | ||
a_utctm.c | ||
a_utf8.c | ||
a_verify.c | ||
ameth_lib.c | ||
asn1_err.c | ||
asn1_gen.c | ||
asn1_item_list.c | ||
asn1_item_list.h | ||
asn1_lib.c | ||
asn1_local.h | ||
asn1_parse.c | ||
asn_mime.c | ||
asn_moid.c | ||
asn_mstbl.c | ||
asn_pack.c | ||
bio_asn1.c | ||
bio_ndef.c | ||
build.info | ||
charmap.h | ||
charmap.pl | ||
d2i_param.c | ||
d2i_pr.c | ||
d2i_pu.c | ||
evp_asn1.c | ||
f_int.c | ||
f_string.c | ||
i2d_evp.c | ||
n_pkey.c | ||
nsseq.c | ||
p5_pbe.c | ||
p5_pbev2.c | ||
p5_scrypt.c | ||
p8_pkey.c | ||
standard_methods.h | ||
t_bitst.c | ||
t_pkey.c | ||
t_spki.c | ||
tasn_dec.c | ||
tasn_enc.c | ||
tasn_fre.c | ||
tasn_new.c | ||
tasn_prn.c | ||
tasn_scn.c | ||
tasn_typ.c | ||
tasn_utl.c | ||
tbl_standard.h | ||
x_algor.c | ||
x_bignum.c | ||
x_info.c | ||
x_int64.c | ||
x_long.c | ||
x_pkey.c | ||
x_sig.c | ||
x_spki.c | ||
x_val.c |