Code

Include test for check_procs, using input file
[nagiosplug.git] / plugins / check_smtp.c
index f44e5331d048cc0eafca6465419542d863f57fff..b1fc7ee0740eab80bb1854a71ce1654c9023f845 100644 (file)
@@ -1,52 +1,48 @@
-/******************************************************************************
-*
+/*****************************************************************************
+* 
 * Nagios check_smtp plugin
-*
+* 
 * License: GPL
-* Copyright (c) 1999-2006 nagios-plugins team
-*
+* Copyright (c) 2000-2007 Nagios Plugins Development Team
+* 
 * Last Modified: $Date$
-*
+* 
 * Description:
-*
+* 
 * This file contains the check_smtp plugin
-*
-*  This plugin will attempt to open an SMTP connection with the host.
-*
-*
-* License Information:
-*
-* This program is free software; you can redistribute it and/or modify
+* 
+* This plugin will attempt to open an SMTP connection with the host.
+* 
+* 
+* This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
+* the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
-*
+* 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
-*
+* 
 * You should have received a copy of the GNU General Public License
-* along with this program; if not, write to the Free Software
-* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-*
-*
+* along with this program.  If not, see <http://www.gnu.org/licenses/>.
+* 
 * $Id$
 * 
-******************************************************************************/
+*****************************************************************************/
 
 const char *progname = "check_smtp";
 const char *revision = "$Revision$";
-const char *copyright = "2000-2006";
+const char *copyright = "2000-2007";
 const char *email = "nagiosplug-devel@lists.sourceforge.net";
 
-#include <ctype.h>
-
 #include "common.h"
 #include "netutils.h"
 #include "utils.h"
 #include "base64.h"
 
+#include <ctype.h>
+
 #ifdef HAVE_SSL
 int check_cert = FALSE;
 int days_till_exp;
@@ -198,10 +194,10 @@ main (int argc, char **argv)
                        /* make sure we find the response we are looking for */
                        if (!strstr (buffer, server_expect)) {
                                if (server_port == SMTP_PORT)
-                                       printf (_("Invalid SMTP response received from host\n"));
+                                       printf (_("Invalid SMTP response received from host: %s\n"), buffer);
                                else
-                                       printf (_("Invalid SMTP response received from host on port %d\n"),
-                                                                       server_port);
+                                       printf (_("Invalid SMTP response received from host on port %d: %s\n"),
+                                                                       server_port, buffer);
                                result = STATE_WARNING;
                        }
                }
@@ -370,7 +366,8 @@ main (int argc, char **argv)
                                        }
 
                                        /* encode authuser with base64 */
-                                       abuf = base64 (authuser, strlen(authuser));
+                                       base64_encode_alloc (authuser, strlen(authuser), &abuf);
+                                       /* FIXME: abuf shouldn't have enough space to strcat a '\r\n' into it. */
                                        strcat (abuf, "\r\n");
                                        my_send(abuf, strlen(abuf));
                                        if (verbose)
@@ -390,7 +387,8 @@ main (int argc, char **argv)
                                                break;
                                        }
                                        /* encode authpass with base64 */
-                                       abuf = base64 (authpass, strlen(authpass));
+                                       base64_encode_alloc (authpass, strlen(authpass), &abuf);
+                                       /* FIXME: abuf shouldn't have enough space to strcat a '\r\n' into it. */
                                        strcat (abuf, "\r\n");
                                        my_send(abuf, strlen(abuf));
                                        if (verbose) {