dovecot-2.2: login, lib-ssl-iostream: Clear errors caused by man...
dovecot at dovecot.org
dovecot at dovecot.org
Thu Dec 3 10:23:22 UTC 2015
details: http://hg.dovecot.org/dovecot-2.2/rev/302c3c7e11f8
changeset: 19449:302c3c7e11f8
user: Timo Sirainen <tss at iki.fi>
date: Thu Dec 03 12:19:12 2015 +0200
description:
login, lib-ssl-iostream: Clear errors caused by manual EC key selection when there was no EC key.
EVP_PKEY_get1_EC_KEY() would return an error, which should be ignored
instead of being logged later on.
diffstat:
src/lib-ssl-iostream/iostream-openssl-context.c | 4 ++++
src/login-common/ssl-proxy-openssl.c | 4 ++++
2 files changed, 8 insertions(+), 0 deletions(-)
diffs (28 lines):
diff -r a0df8b106de1 -r 302c3c7e11f8 src/lib-ssl-iostream/iostream-openssl-context.c
--- a/src/lib-ssl-iostream/iostream-openssl-context.c Thu Dec 03 12:13:11 2015 +0200
+++ b/src/lib-ssl-iostream/iostream-openssl-context.c Thu Dec 03 12:19:12 2015 +0200
@@ -454,6 +454,10 @@
if ((eckey = EVP_PKEY_get1_EC_KEY(pkey)) != NULL &&
(ecgrp = EC_KEY_get0_group(eckey)) != NULL)
nid = EC_GROUP_get_curve_name(ecgrp);
+ else {
+ /* clear errors added by the above calls */
+ (void)openssl_iostream_error();
+ }
EVP_PKEY_free(pkey);
}
diff -r a0df8b106de1 -r 302c3c7e11f8 src/login-common/ssl-proxy-openssl.c
--- a/src/login-common/ssl-proxy-openssl.c Thu Dec 03 12:13:11 2015 +0200
+++ b/src/login-common/ssl-proxy-openssl.c Thu Dec 03 12:19:12 2015 +0200
@@ -1129,6 +1129,10 @@
(eckey = EVP_PKEY_get1_EC_KEY(pkey)) != NULL &&
(ecgrp = EC_KEY_get0_group(eckey)) != NULL)
nid = EC_GROUP_get_curve_name(ecgrp);
+ else {
+ /* clear errors added by the above calls */
+ (void)openssl_iostream_error();
+ }
EVP_PKEY_free(pkey);
return nid;
}
More information about the dovecot-cvs
mailing list