Hi,
I uploaded an NMU of your package.
Please see this as help to get the package into a releaseable condition for
etch.
Please find the used diff below.
Cheers,
Andi
diff -ur ../mailutils-1.1+dfsg1~/debian/changelog
../mailutils-1.1+dfsg1/debian/changelog
--- ../mailutils-1.1+dfsg1~/debian/changelog 2006-11-30 13:32:44.000000000
+0000
+++ ../mailutils-1.1+dfsg1/debian/changelog 2006-12-04 11:21:49.000000000
+0000
@@ -1,3 +1,11 @@
+mailutils (1:1.1+dfsg1-3.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * Fix issue with mails containing \0. Thanks to Ben Hutchings for
+ the patch. Closes: #361354
+
+ -- Andreas Barth <[EMAIL PROTECTED]> Mon, 4 Dec 2006 11:21:05 +0000
+
mailutils (1:1.1+dfsg1-3) unstable; urgency=medium
* debian/control: switch back to guile-1.6 as guile-1.8 is not yet ready
diff -ur ../mailutils-1.1+dfsg1~/imap4d/fetch.c
../mailutils-1.1+dfsg1/imap4d/fetch.c
--- ../mailutils-1.1+dfsg1~/imap4d/fetch.c 2006-03-12 14:25:50.000000000
+0000
+++ ../mailutils-1.1+dfsg1/imap4d/fetch.c 2006-12-04 11:15:59.000000000
+0000
@@ -1160,12 +1160,11 @@
offset = 0;
if (max)
{
- util_send (" {%u}\r\n", max);
+ util_send (" {%lu}\r\n", max);
while (mu_stream_read (rfc, buffer, sizeof (buffer) - 1, offset,
&n) == 0 && n > 0)
{
- buffer[n] = '\0';
- util_send ("%s", buffer);
+ util_send_raw (buffer, n);
offset += n;
}
}
@@ -1190,13 +1189,11 @@
end -= n;
buffer += n;
}
- /* Make sure we null terminate. */
- *buffer = '\0';
util_send ("<%lu>", start);
if (total)
{
util_send (" {%s}\r\n", mu_umaxtostr (0, total));
- util_send ("%s", p);
+ util_send_raw (p, total);
}
else
util_send (" \"\"");
diff -ur ../mailutils-1.1+dfsg1~/imap4d/imap4d.h
../mailutils-1.1+dfsg1/imap4d/imap4d.h
--- ../mailutils-1.1+dfsg1~/imap4d/imap4d.h 2006-04-07 14:08:54.000000000
+0000
+++ ../mailutils-1.1+dfsg1/imap4d/imap4d.h 2006-12-04 11:18:43.000000000
+0000
@@ -245,6 +245,7 @@
extern int util_send (const char *, ...);
extern int util_send_qstring (const char *);
extern int util_send_literal (const char *);
+extern int util_send_raw (const char *, size_t);
extern int util_start (char *);
extern int util_finish (struct imap4d_command *, int, const char *, ...);
extern int util_getstate (void);
diff -ur ../mailutils-1.1+dfsg1~/imap4d/util.c
../mailutils-1.1+dfsg1/imap4d/util.c
--- ../mailutils-1.1+dfsg1~/imap4d/util.c 2006-04-07 14:08:55.000000000
+0000
+++ ../mailutils-1.1+dfsg1/imap4d/util.c 2006-12-04 11:19:42.000000000
+0000
@@ -398,6 +398,15 @@
return util_send ("{%u}\r\n%s", strlen (buffer), buffer);
}
+int
+util_send_raw (const char *data, size_t len)
+{
+ if (daemon_param.transcript)
+ syslog (LOG_DEBUG, "sent: %s", data);
+
+ return mu_stream_sequential_write (ostream, data, len);
+}
+
/* Send an unsolicited response. */
int
util_out (int rc, const char *format, ...)
--
http://home.arcor.de/andreas-barth/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]