From: Holger Weiss Date: Tue, 8 Feb 2011 16:07:52 +0000 (+0100) Subject: check_smtp: Abort on missing/unexpected greeting X-Git-Url: https://git.tokkee.org/?p=nagiosplug.git;a=commitdiff_plain;h=d16f3fb0a9bb37cc1ce73ef14b5de83e907ef23c check_smtp: Abort on missing/unexpected greeting Abort immediately if we don't receive a server greeting or if the greeting doesn't contain the "--expect"ed string (by default: "220") instead of blindly sending the EHLO/HELO line. Spotted by Daniel Piddock, see Debian bug report #611914. --- diff --git a/plugins/check_smtp.c b/plugins/check_smtp.c index 3da724b..ed49163 100644 --- a/plugins/check_smtp.c +++ b/plugins/check_smtp.c @@ -183,7 +183,7 @@ main (int argc, char **argv) /* return a WARNING status if we couldn't read any data */ if (recvlines(buffer, MAX_INPUT_BUFFER) <= 0) { printf (_("recv() failed\n")); - result = STATE_WARNING; + return STATE_WARNING; } else { if (verbose) @@ -197,7 +197,7 @@ main (int argc, char **argv) else printf (_("Invalid SMTP response received from host on port %d: %s\n"), server_port, buffer); - result = STATE_WARNING; + return STATE_WARNING; } }