[Pkg-citadel-commit] r176 - in citadel/tags: . 7.37-6/debian 7.37-6/debian/patches
meskes at alioth.debian.org
meskes at alioth.debian.org
Fri Nov 7 11:29:18 UTC 2008
Author: meskes
Date: 2008-11-07 11:29:18 +0000 (Fri, 07 Nov 2008)
New Revision: 176
Added:
citadel/tags/7.37-6/
citadel/tags/7.37-6/debian/patches/r6718_fix_sieve_header_hickup.diff
Modified:
citadel/tags/7.37-6/debian/changelog
citadel/tags/7.37-6/debian/patches/series
Log:
Let's do a 7-37-6 release that hopefully might make it into Lenny, to fix the
sieve bug there too.
Copied: citadel/tags/7.37-6 (from rev 175, citadel/tags/7.37-5)
Modified: citadel/tags/7.37-6/debian/changelog
===================================================================
--- citadel/tags/7.37-5/debian/changelog 2008-11-05 18:46:23 UTC (rev 175)
+++ citadel/tags/7.37-6/debian/changelog 2008-11-07 11:29:18 UTC (rev 176)
@@ -1,3 +1,11 @@
+citadel (7.37-6) unstable; urgency=low
+
+ [ Wilfried Goesgens ]
+ * [r6718] add upstream prepatch; long to: headerlines would choke sieve on
+ parsing, closes: #503346
+
+ -- Michael Meskes <meskes at debian.org> Fri, 07 Nov 2008 12:26:44 +0100
+
citadel (7.37-5) unstable; urgency=medium
* Do not change /etc/services, closes: #475539
Added: citadel/tags/7.37-6/debian/patches/r6718_fix_sieve_header_hickup.diff
===================================================================
--- citadel/tags/7.37-6/debian/patches/r6718_fix_sieve_header_hickup.diff (rev 0)
+++ citadel/tags/7.37-6/debian/patches/r6718_fix_sieve_header_hickup.diff 2008-11-07 11:29:18 UTC (rev 176)
@@ -0,0 +1,79 @@
+Index: msgbase.c
+===================================================================
+--- msgbase.c (revision 6717)
++++ msgbase.c (revision 6718)
+@@ -1593,6 +1593,31 @@
+ }
+
+
++/* If the last item in a list of recipients was truncated to a partial address,
++ * remove it completely in order to avoid choking libSieve
++ */
++void sanitize_truncated_recipient(char *str)
++{
++ if (!str) return;
++ if (num_tokens(str, ',') < 2) return;
++
++ int len = strlen(str);
++ if (len < 900) return;
++ if (len > 998) str[998] = 0;
++
++ char *cptr = strrchr(str, ',');
++ if (!cptr) return;
++
++ char *lptr = strchr(cptr, '<');
++ char *rptr = strchr(cptr, '>');
++
++ if ( (lptr) && (rptr) && (rptr > lptr) ) return;
++
++ *cptr = 0;
++}
++
++
++
+ /*
+ * Get a message off disk. (returns om_* values found in msgbase.h)
+ */
+@@ -1792,8 +1817,10 @@
+ safestrncpy(suser, mptr, sizeof suser);
+ }
+ else if (i == 'Y') {
+- if ((flags & QP_EADDR) != 0)
++ if ((flags & QP_EADDR) != 0) {
+ mptr = qp_encode_email_addrs(mptr);
++ }
++ sanitize_truncated_recipient(mptr);
+ cprintf("CC: %s%s", mptr, nl);
+ }
+ else if (i == 'P') {
+@@ -1824,13 +1851,16 @@
+ {
+ if (haschar(mptr, '@') == 0)
+ {
++ sanitize_truncated_recipient(mptr);
+ cprintf("To: %s@%s", mptr, config.c_fqdn);
+ cprintf("%s", nl);
+ }
+ else
+ {
+- if ((flags & QP_EADDR) != 0)
++ if ((flags & QP_EADDR) != 0) {
+ mptr = qp_encode_email_addrs(mptr);
++ }
++ sanitize_truncated_recipient(mptr);
+ cprintf("To: %s", mptr);
+ cprintf("%s", nl);
+ }
+Index: modules/sieve/serv_sieve.c
+===================================================================
+--- modules/sieve/serv_sieve.c (revision 6717)
++++ modules/sieve/serv_sieve.c (revision 6718)
+@@ -640,7 +640,7 @@
+ }
+
+
+- CtdlLogPrintf(CTDL_DEBUG, "HEADERS-------\n%s\n", my.rfc822headers);
++ CtdlLogPrintf(CTDL_DEBUG, "HEADERS-------\n[31m%s[0m\n", my.rfc822headers);
+
+ sieve2_setvalue_string(sieve2_context, "allheaders", my.rfc822headers);
+
Modified: citadel/tags/7.37-6/debian/patches/series
===================================================================
--- citadel/tags/7.37-5/debian/patches/series 2008-11-05 18:46:23 UTC (rev 175)
+++ citadel/tags/7.37-6/debian/patches/series 2008-11-07 11:29:18 UTC (rev 176)
@@ -8,3 +8,4 @@
r6535_autopurger_dont_touch_systemfiles.diff
r6544_fix_qp_encoder_offbyone.diff
r6570_uppercase_smtp_commands.diff
+r6718_fix_sieve_header_hickup.diff
More information about the Pkg-citadel-commit
mailing list