summaryrefslogtreecommitdiffstats
path: root/plugins/check_smtp.c
diff options
context:
space:
mode:
authorvagrant <vagrant@debiantesting-64>2016-11-13 19:39:46 +0000
committerSven Nierlein <sven@nierlein.de>2016-11-13 21:14:02 +0000
commitfe1c4bb0e5ea3632d608a6b8b7e51d580856d833 (patch)
tree5fceabfc6f53b2bf7505bba099fa75d6cc8159bc /plugins/check_smtp.c
parent2f845e9ebc2b7bcf6472e0191752215d351e4e7c (diff)
downloadmonitoring-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.c8
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)
764int 764int
765my_close (void) 765my_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