diff options
author | Matt Caswell <matt@openssl.org> | 2021-02-15 16:59:43 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2021-02-24 12:13:38 +0000 |
commit | de4a88a979193e1f28c65c1f902828dd91d10ba5 (patch) | |
tree | 3209c5536fc6c849eb83d61385746b15dc08f190 /include | |
parent | b0001d0cf2539b9309712e3e04f407dcbb04352c (diff) |
Duplicate the file and func error strings
Errors raised from a provider that is subsequently unloaded from memory
may have references to strings representing the file and function that
are no longer present because the provider is no longer in memory. This
can cause crashes. To avoid this we duplicate the file and func strings.
Fixes #13623
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/14213)
Diffstat (limited to 'include')
-rw-r--r-- | include/openssl/err.h.in | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/openssl/err.h.in b/include/openssl/err.h.in index c012f65d08..f7d5c174a1 100644 --- a/include/openssl/err.h.in +++ b/include/openssl/err.h.in @@ -62,9 +62,9 @@ struct err_state_st { char *err_data[ERR_NUM_ERRORS]; size_t err_data_size[ERR_NUM_ERRORS]; int err_data_flags[ERR_NUM_ERRORS]; - const char *err_file[ERR_NUM_ERRORS]; + char *err_file[ERR_NUM_ERRORS]; int err_line[ERR_NUM_ERRORS]; - const char *err_func[ERR_NUM_ERRORS]; + char *err_func[ERR_NUM_ERRORS]; int top, bottom; }; # endif |