Weekly/Monthly record-keeping / maintenance?
Jeff Blaine
jblaine at kickflop.net
Mon Apr 6 18:49:09 EDT 2009
I lied, quoting works when you use the right quotes.
Double quotes, not single.
my ($rc, $msg) = $cyrus->send('', '', "EXAMINE $mb");
should become
my ($rc, $msg) = $cyrus->send('', '', "EXAMINE \"$mb\"");
... for a better imapdu.pl
Jeff Blaine wrote:
> I tried both
>
> a) escaping spaces in $mb
> b) quoting $mb
>
> Neither worked.
>
> That's about as far as I delve into Perl anymore, so
> I'm happy to just retract my note to our users about
> this tool.
>
> Bron Gondwana wrote:
>> On Thu, Apr 02, 2009 at 10:42:23AM -0400, Jeff Blaine wrote:
>>> Okay, well, for what it's worth, I fixed all of the
>>> problems prohibiting me from running a quota -f
>>> to completion.
>>>
>>> The problem: imapdu.pl is buggy
>>
>> Doh.
>>
>>> It fails to do the right thing with mailboxes containing
>>> a space in the name.
>>
>> Yeah, that's not entirely a surprise. Spaces in names
>> confuse lots of stuff.
>>
>>> ...
>>> 1.46 MB 114 msgs INBOX.BMP
>>> 1.46 MB 114 msgs INBOX.Bio Stuff
>>> 0.00 bytes 0 msgs INBOX.Drafts
>>> 1.25 MB 36 msgs INBOX.HLT
>>> 1.25 MB 36 msgs INBOX.Information Retrieval
>>> ...
>>>
>>> # $Id: imapdu.pl,v 1.9 2008/04/04 12:47:14 murch Exp $
>>>
>>> I don't suppose 'murch', the author of the code reads
>>> this list?
>>
>> Yeah, he's around, though he doesn't always see stuff as quickly
>> if it's only sent to the list. I've CC'd him.
>>
>> That said, he's likely not the author - just the last person that
>> changed things. Given that he did a giant sweeping copyright
>> update of nearly every file in the tree a couple of months ago...
>>
>> my ($rc, $msg) = $cyrus->send('', '', "EXAMINE $mb");
>> if ($rc eq 'OK') {
>> } else {
>> print "failed: $mb: $msg\n";
>> }
>>
>> Apart from being icky perl, that will fail to change mailboxes
>> because the EXAMINE command will have dodgy syntax. I'm not
>> entirely sure why you're not seeing the 'failed' messages
>> though... The "$mb" needs to be at least quoted - which is
>> why I generally use something like Mail::IMAPTalk that can
>> do correct protocol quoting.
>>
>> Ahh - it probably does output the "failed" stuff further up.
>>
>> Bron.
>>
>
More information about the Info-cyrus
mailing list