Don't clear the whole error stack when loading engines
authorMatt Caswell <matt@openssl.org>
Wed, 4 Nov 2020 11:34:15 +0000 (11:34 +0000)
committerMatt Caswell <matt@openssl.org>
Fri, 6 Nov 2020 10:34:48 +0000 (10:34 +0000)
commitb9b2135d22b93f949fd77f293925fc66158416ff
treee82c316f4f3ef24d8ec2e77a9de085d583b1adc3
parentb8ae4a83de0de38fd382f3981e503f2ab5461c07
Don't clear the whole error stack when loading engines

Loading the various built-in engines was unconditionally clearing the
whole error stack. During config file processing processing a .include
directive which fails results in errors being added to the stack - but
we carry on anyway. These errors were then later being removed by the
engine loading code, meaning that problems with the .include directive
never get shown.

Reviewed-by: Paul Dale <paul.dale@oracle.com>
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
(Merged from https://github.com/openssl/openssl/pull/13311)
crypto/conf/conf_mod.c
crypto/engine/eng_dyn.c
crypto/engine/eng_openssl.c
crypto/engine/eng_rdrand.c
engines/e_afalg.c
engines/e_capi.c
engines/e_dasync.c
engines/e_devcrypto.c
engines/e_padlock.c