atmail problem

chatwizrd

Verified User
Joined
Jul 3, 2005
Messages
1,911
Hi.

Anyone else having problem with atmail where you go and write out an email then click save instead of send. It is supposed to add it to the drafts area. But when you go into the drafts folder it is empty no email is there. Anyone know how to fix it?
 
Well I fixed it by adding the following to /etc/dovecot.conf

Code:
namespace private {
  separator = .
  prefix = INBOX.
  inbox = yes
}

Then restart dovecot.
 
Hello,

Thanks for the find. If anyone finds any adverse issues with this change, let me know. I'll start doing some testing on it. If we get no reports, and I don't find any issues, I'll add it into the default dovecot.conf.

John
 
this is not the correct fix I have tried it before posting to these forums, see the directory structure on this account right after applying the so called fix:

drwxrwx--- 5 sw mail 4096 Jul 18 09:56 .Drafts
drwxrwx--- 5 sw mail 4096 Jul 18 09:55 .INBOX.Drafts
drwxrwx--- 5 sw mail 4096 Jul 18 09:55 .INBOX.Sent
drwxrwx--- 5 sw mail 4096 Dec 3 2007 .INBOX.Trash
drwxrwx--- 5 sw mail 4096 Jul 18 09:56 .Sent
drwxrwx--- 5 sw mail 4096 Jul 18 09:54 .Spam
drwxrwx--- 5 sw mail 4096 Jul 18 09:56 .Trash


atmail went ahead and created the .Sent and .Spam and .Trash folders which your mail is being piped into and properly showing up in Atmail. The problem is it is not the origional .INBOX.Sent etc. Which means exisiting mail folders are not being piped properly.

What does this mean the fix you applied is meant for going in the opposite direction meaning client looks for mail in .INBOX.Sent but dovecot tells it to look in .Sent instead


To add this fix breaks the folder layout in squirrelmail
 
This fix definately does not work with new accounts.

It messes up squirrelmail totally

Warning: substr_count() [function.substr-count]: Empty substring in /var/www/html/squirrelmail-nuts/src/left_main.php on line 468

Blah!
 
To me it looks like squirrelmail is using the INBOX.folder format and atmail is using .folder

Ugh :/
 
the problem is not with squirellmail... squirellmail has a system in it to handle subfolders correctly.


Lets put squirellmail completely out of the picture:


Server only has atmail installed, now setup your Maildirs with the following format:

.Sent
.Trash
.Drafts


now atmail behaves correctly... so where is the problem at here? well we have catered the system around atmail instead of atmail being catered around the dovecot mail system. My guess is Atmail is breaking RFC rules for namespaces.


How can you prove this? Well you now have this properly setup mail account with the above setup. Lets login to the imap server with MS Outlook and create some subfolders.


First lets create a folder under the INBOX by right clicking on the inbox and name it: sub1

Now right mouse click the root folder and create a folder called sub2, right click on trash and create a subfolder called sub 3


now move some mail into both of these folders.



so now the directory structure should look something like this:

.Sent
.Spam
.Drafts
.Trash
.Trash.sub3
.INBOX.sub1
.sub2



now log back into atmail you will find that atmail can read the mail from "sub2" and "sub3" but not from "sub1"


the solution cannot break all the other imap clients so the true solution to this will most likely be someone who has some coding skills and strong knowledge in IMAP protocols to dig into the Atmail code and find where it is breaking down where all other clients succeed with.
 
Last edited:
Well I fixed it by adding the following to /etc/dovecot.conf

Code:
namespace private {
  separator = .
  prefix = INBOX.
  inbox = yes
}

Then restart dovecot.

Changing namespace will cause roundcube and squirrelmail not working properly.
If anybody plan to use only atmail and not use other webmail you can use above solution.

-----------------------------------

I have solved the problem by edit lib/IMAP_Clients.php as follow, now atmail working well.

Code:
                                if(is_array($imapfol))  {
//                              $this->Prefix = $imapfol[1];
                                $this->Prefix = 'INBOX.';
                                $this->Deliminator = $imapfol[2];
                                }
 
Last edited:
Have this problem already fixed?
Because when i do a fresh install of directadmin and atmail.
It seems that its not working.

Greetz,

Michaël
 
Back
Top