diff options
author | vagrant <vagrant@debiantesting-64> | 2016-11-13 19:39:46 +0000 |
---|---|---|
committer | Sven Nierlein <sven@nierlein.de> | 2016-11-13 21:14:02 +0000 |
commit | fe1c4bb0e5ea3632d608a6b8b7e51d580856d833 (patch) | |
tree | 5fceabfc6f53b2bf7505bba099fa75d6cc8159bc /plugins/check_smtp.c | |
parent | 2f845e9ebc2b7bcf6472e0191752215d351e4e7c (diff) | |
download | monitoring-plugins-fe1c4bb0e5ea3632d608a6b8b7e51d580856d833.tar.gz |
add openssl 1.1 support
changes:
- CRYPTO_lock detection replaced in configure.ac. We don't use that
function anywhere, so just replace it with the suggested one from
https://wiki.openssl.org/index.php/Library_Initialization#Autoconf
- OPENSSL_NO_SSL2 is no longer defined while ssl2 is not included.
Set it ourself using the suggested openssl 1.1 version check from
https://wiki.openssl.org/index.php/1.1_API_Changes#Backward_compatibility
- openssl 1.1 sends a sigpipe if the connection is still open when
calling SSL_shutdown(), so move the close before the shutdown.
Signed-off-by: Sven Nierlein <sven@nierlein.de>
Diffstat (limited to 'plugins/check_smtp.c')
-rw-r--r-- | plugins/check_smtp.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/plugins/check_smtp.c b/plugins/check_smtp.c index 1996c6d3..f5a6fa3d 100644 --- a/plugins/check_smtp.c +++ b/plugins/check_smtp.c | |||
@@ -239,8 +239,8 @@ main (int argc, char **argv) | |||
239 | result = np_net_ssl_init(sd); | 239 | result = np_net_ssl_init(sd); |
240 | if(result != STATE_OK) { | 240 | if(result != STATE_OK) { |
241 | printf (_("CRITICAL - Cannot create SSL context.\n")); | 241 | printf (_("CRITICAL - Cannot create SSL context.\n")); |
242 | np_net_ssl_cleanup(); | ||
243 | close(sd); | 242 | close(sd); |
243 | np_net_ssl_cleanup(); | ||
244 | return STATE_CRITICAL; | 244 | return STATE_CRITICAL; |
245 | } else { | 245 | } else { |
246 | ssl_established = 1; | 246 | ssl_established = 1; |
@@ -764,10 +764,12 @@ recvlines(char *buf, size_t bufsize) | |||
764 | int | 764 | int |
765 | my_close (void) | 765 | my_close (void) |
766 | { | 766 | { |
767 | int result; | ||
768 | result = close(sd); | ||
767 | #ifdef HAVE_SSL | 769 | #ifdef HAVE_SSL |
768 | np_net_ssl_cleanup(); | 770 | np_net_ssl_cleanup(); |
769 | #endif | 771 | #endif |
770 | return close(sd); | 772 | return result; |
771 | } | 773 | } |
772 | 774 | ||
773 | 775 | ||