[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%s\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