Check this out:

* OK medusa.kfu.com Cyrus IMAP4 v2.0.15-HIERSEP-r2 server ready
. login user testcase
. OK User logged in
. list * *
* LIST (\Noinferiors) "/" "INBOX"
* LIST () "/" "Drafts"
* LIST () "/" "Sent"
* LIST () "/" "Templates"
* LIST () "/" "Trash"
* LIST () "/" "amanda"
* LIST () "/" "archive/20010428"
* LIST () "/" "archive/certificates"
* LIST () "/" "archive/enlighten-inbox"
* LIST () "/" "archive/ladybugs"
* LIST () "/" "archive/old"
* LIST () "/" "archive/older"
* LIST () "/" "archive/orders"
* LIST () "/" "archive/passwords"
* LIST () "/" "archive/purchases"
* LIST () "/" "archive/wrinkles"
* LIST () "/" "cron-stools"
* LIST () "/" "lists/6bone"
* LIST () "/" "lists/airport-config"
* LIST () "/" "lists/bestos"
* LIST () "/" "lists/bzflag-dev"
* LIST () "/" "lists/dcti"
[and so on and so on]
. OK Completed (0.000 secs 42 calls)
. lsub * *
* LSUB (\Noinferiors) "/" "INBOX"
* LSUB () "/" "Drafts"
* LSUB () "/" "Sent"
* LSUB () "/" "Templates"
* LSUB () "/" "Trash"
* LSUB () "/" "amanda"
* LSUB () "/" "archive/20010428"
* LSUB () "/" "archive/certificates"
* LSUB () "/" "archive/enlighten-inbox"
* LSUB () "/" "archive/ladybugs"
* LSUB () "/" "archive/old"
* LSUB () "/" "archive/older"
* LSUB () "/" "archive/orders"
* LSUB () "/" "archive/passwords"
* LSUB () "/" "archive/purchases"
* LSUB () "/" "archive/wrinkles"
* LSUB () "/" "cron-stools"
* LSUB () "/" "lists/6bone"
* LSUB () "/" "lists/airport-config"
* LSUB () "/" "lists/bestos"
* LSUB () "/" "lists/bzflag-dev"
* LSUB () "/" "lists/dcti"
[and so on and so on]
. OK Completed (0.000 secs 42 calls)


Ok. So we have a nice, full hierarchy, most of which is subscribed. With 
me so far?

Now the bug:

. create abra/cadabra
. OK Completed
. subscribe abra/cadabra
. OK Completed
. lsub * *
* LSUB (\Noinferiors) "/" "INBOX"
* LSUB () "/" "Drafts"
* LSUB () "/" "Sent"
* LSUB () "/" "Templates"
* LSUB () "/" "Trash"
* LSUB () "/" "abra/cadabra"
* LSUB () "/" "amanda"
* LSUB () "/" "archive/20010428"
* LSUB () "/" "archive/certificates"
* LSUB () "/" "archive/enlighten-inbox"
* LSUB () "/" "archive/ladybugs"
* LSUB () "/" "archive/old"
* LSUB () "/" "archive/older"
* LSUB () "/" "archive/orders"
* LSUB () "/" "archive/passwords"
* LSUB () "/" "archive/purchases"
* LSUB () "/" "archive/wrinkles"
* LSUB () "/" "cron-stools"
* LSUB () "/" "lists/6bone"
* LSUB () "/" "lists/airport-config"
* LSUB () "/" "lists/bestos"
* LSUB () "/" "lists/bzflag-dev"
* LSUB () "/" "lists/dcti"
[and so on and so on]
. OK Completed (0.016 secs 43 calls)

So far so good.

. delete abra/cadabra
. OK Completed
. lsub * *
* LSUB (\Noinferiors) "/" "INBOX"
* LSUB () "/" "Drafts"
* LSUB () "/" "Sent"
* LSUB () "/" "Templates"
* LSUB () "/" "Trash"
. OK Completed (0.000 secs 6 calls)

Woah! The subscription list is (almost) gone!

. unsubscribe abra/cadabra
. OK Completed
. lsub * *
* LSUB (\Noinferiors) "/" "INBOX"
* LSUB () "/" "Drafts"
* LSUB () "/" "Sent"
* LSUB () "/" "Templates"
* LSUB () "/" "Trash"
* LSUB () "/" "amanda"
* LSUB () "/" "archive/20010428"
* LSUB () "/" "archive/certificates"
* LSUB () "/" "archive/enlighten-inbox"
* LSUB () "/" "archive/ladybugs"
* LSUB () "/" "archive/old"
* LSUB () "/" "archive/older"
* LSUB () "/" "archive/orders"
* LSUB () "/" "archive/passwords"
* LSUB () "/" "archive/purchases"
* LSUB () "/" "archive/wrinkles"
* LSUB () "/" "cron-stools"
* LSUB () "/" "lists/6bone"
* LSUB () "/" "lists/airport-config"
* LSUB () "/" "lists/bestos"
* LSUB () "/" "lists/bzflag-dev"
* LSUB () "/" "lists/dcti"
[and so on and so on]
. OK Completed (0.008 secs 42 calls)

Oh! There it is!

So the bug is a two-parter.

1. Deleting a subscribed mailbox does not automatically unsubscribe 
oneself from it.

2. Extra entries in the ...user/f/foo.sub file that corespond to 
nonexistent mailboxes causes the LSUB output to truncate at that spot.

This is the case whether or not the unix hierachy character is set. I 
don't know if it's the case if I turn off alternate namespace (I don't 
want to do that).

Reply via email to