aboutsummaryrefslogtreecommitdiffstats
path: root/driver.c
diff options
context:
space:
mode:
Diffstat (limited to 'driver.c')
-rw-r--r--driver.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/driver.c b/driver.c
index bbcaa768..4c9a05fc 100644
--- a/driver.c
+++ b/driver.c
@@ -1962,6 +1962,15 @@ const int maxfetch; /* maximum number of messages to fetch */
{
if ((ok=(protocol->fetch_body)(mailserver_socket,ctl,num,&len)))
goto cleanUp;
+ /*
+ * Work around a bug in Novell's
+ * broken GroupWise IMAP server;
+ * its body FETCH response is missing
+ * the required length for the data
+ * string. This violates RFC2060.
+ */
+ if (len == -1)
+ len = msgsizes[num-1] - msglen;
if (outlevel > O_SILENT && !wholesize)
report_complete(stdout,
_(" (%d body octets) "), len);