dovecot-sieve-1.0: Vacation crashfix: If there's no return path ...

dovecot at dovecot.org dovecot at dovecot.org
Sat Jun 16 03:35:47 EEST 2007


details:   http://hg.dovecot.org/dovecot-sieve-1.0/rev/c41e5970e2dc
changeset: 20:c41e5970e2dc
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Jun 16 03:35:45 2007 +0300
description:
Vacation crashfix: If there's no return path (or it's broken), getenvelope()
returns SIEVE_FAIL now.

diffstat:

1 file changed, 5 insertions(+)
src/sieve-cmu.c |    5 +++++

diffs (15 lines):

diff -r 8ac0d2217a46 -r c41e5970e2dc src/sieve-cmu.c
--- a/src/sieve-cmu.c	Sat May 19 18:12:37 2007 +0300
+++ b/src/sieve-cmu.c	Sat Jun 16 03:35:45 2007 +0300
@@ -73,6 +73,11 @@ static int getenvelope(void *mc, const c
     sieve_msgdata_t *m = (sieve_msgdata_t *) mc;
 
     if (!strcasecmp(field, "from")) {
+	if (m->return_path == NULL) {
+	    /* invalid or missing return path */
+	    *contents = NULL;
+	    return SIEVE_FAIL;
+	}
 	*contents = m->temp;
 	m->temp[0] = m->return_path;
 	m->temp[1] = NULL;


More information about the dovecot-cvs mailing list