Skip Menu |

This queue is for tickets about the Mail-IMAPClient CPAN distribution.

Report information
The Basics
Id: 5297
Status: resolved
Priority: 0/
Queue: Mail-IMAPClient

People
Owner: Nobody in particular
Requestors: kpfleming [...] backtobasicsmgmt.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Date: Wed, 11 Feb 2004 15:49:09 -0700
From: "Kevin P. Fleming" <kpfleming [...] backtobasicsmgmt.com>
To: bug-Mail-IMAPClient [...] rt.cpan.org
Subject: Broken IMAP server causes Mail::IMAPClient to truncate message body
I've just written a small script to move messages from a 3Com NBX phone system that exposes voice mail boxes as IMAP folders over to a Cyrus shared folder. First let me say that this module is way cool, and the documentation is top-notch. I was able to get this script working in less than an hour, although granted it's pretty simple. I'm not, however, using the migrate() method, because... The NBX's IMAP server (which claims to be tmail-4.1 or something like that) incorrectly reports RFC822.SIZE 1179 for a message that is really 14851 bytes, and Mail::IMAPClient dutifully reports this mismatch and truncates the message contents (retrieved via message_string()) at 1179 bytes. I edited IMAPClient.pm to remove the truncation, and things work as expected, I get the full contents of my messages and can move them over to my Cyrus folders. Can you suggest a way that Mail::IMAPClient could offer this behavior as an option, rather than having to edit the module code itself?
From: jcullin [...] unipress.com
This sounded familiar to me, so I looked at some of my old code and found this comment: # Don't use message_string(). It calls size(), which gets bogus data from # exchange unless the exchange admin unchecks the 'fast retrieval' option # for the imap mailbox. The message_to_file() method doesn't call size(), # so nothing has to be changed by the exchange admin. So, I would suggest trying message_to_file(). I thought it was an exchange problem, you thought it was a problem with your server -- maybe it's the correct behaviour. I'll admit that the docs for this module are good enough that they've enabled me to be lazy about understanding the protocol. If this is the expected behavior, a note in the docs for message_string would be helpful.
new maintainer version 2.99_02 provides an option 'IgnoreSizeErrors'