Hi.
I would like to (safely) increase the maximum permitted length of a
data string in filter commands. In our setup, the options to the
"vacation" cmd are read from an sql database and some users requested
to have a vacation message longer than 1024 chars.
I figured out that everything works fine if I increase the buffer size
in src/filter.c (please see the patch below). I'm quite unsure if this
might have any side effects.
Chris
--- src/filter.c.orig 2006-07-31 16:19:48.000000000 +0200
+++ src/filter.c 2007-09-24 11:52:23.000000000 +0200
@@ -420,7 +420,7 @@
static uschar *
read_condition(uschar *ptr, condition_block **cond, BOOL toplevel)
{
-uschar buffer[1024];
+uschar buffer[4096];
BOOL testfor = TRUE;
condition_block *current_parent = NULL;
condition_block **current = cond;
@@ -853,7 +853,7 @@
BOOL yield = TRUE;
BOOL was_seen_or_unseen = FALSE;
BOOL was_noerror = FALSE;
-uschar buffer[1024];
+uschar buffer[4096];
uschar *ptr = *pptr;
uschar *saveptr;
uschar *fmsg = NULL;