From 638b596992feabc7cb8a74a788b9426e4e2e95a3 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 29 Jun 2012 00:28:46 -0400 Subject: check_smtp: Fix strcat overflows Signed-off-by: Anders Kaseorg diff --git a/plugins/check_smtp.c b/plugins/check_smtp.c index 6b3f9dd..2a60cf0 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); -- cgit v0.10-9-g596f