diff --git a/cli.c b/cli.c
index 7e44555845cbe0d95c8c706862e9e55185cde5df..d577943ea0e87d263b39a9116e36a4b63c492ca0 100755
--- a/cli.c
+++ b/cli.c
@@ -36,10 +36,10 @@
 	
 void ast_cli(int fd, char *fmt, ...)
 {
-	char stuff[4096];
+	char *stuff;
 	va_list ap;
 	va_start(ap, fmt);
-	vsnprintf(stuff, sizeof(stuff), fmt, ap);
+	vasprintf(&stuff, fmt, ap);
 	va_end(ap);
 	write(fd, stuff, strlen(stuff));
 }