aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Anders Kaseorg <andersk@mit.edu> 2012-06-29 00:28:46 -0400
committerGravatar Holger Weiss <holger@zedat.fu-berlin.de> 2012-06-29 13:39:11 +0200
commit638b596992feabc7cb8a74a788b9426e4e2e95a3 (patch)
tree38d4ddaec68b16bb40810d7096fa3c7742b0a034
parent028d50d6f99e647a325a0a68303016382c4bbdc9 (diff)
downloadmonitoring-plugins-638b596992feabc7cb8a74a788b9426e4e2e95a3.tar.gz
check_smtp: Fix strcat overflows
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
-rw-r--r--plugins/check_smtp.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/plugins/check_smtp.c b/plugins/check_smtp.c
index 6b3f9dd4..2a60cf07 100644
--- a/plugins/check_smtp.c
+++ b/plugins/check_smtp.c
@@ -366,8 +366,7 @@ main (int argc, char **argv)
/* encode authuser with base64 */
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");
+ xasprintf(&abuf, "%s\r\n", abuf);
my_send(abuf, strlen(abuf));
if (verbose)
printf (_("sent %s\n"), abuf);
@@ -387,8 +386,7 @@ main (int argc, char **argv)
}
/* encode authpass with base64 */
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");
+ xasprintf(&abuf, "%s\r\n", abuf);
my_send(abuf, strlen(abuf));
if (verbose) {
printf (_("sent %s\n"), abuf);