[Dovecot] Squirrelmail + Dovecot + Maildir
I have been struggling with getting my Fedora 7 box set up to use dovecot with Squirrelmail and Maildir. It works correctly with the exception of writing outgoing mail to the right folder (.Sent) or drafts (.Drafts). If I send a mail with Mutt, it writes the mail to the right place, so it has to be squirrelmail config or dovecot config. I want to use .Sent for sent-mail (~user/Maildir/.Sent) and .Drafts for drafts (~user/Maildir/.Drafts).
Here is what I see in /etc/squirrelmail/config.php
$optional_delimiter = '.'; [snip] $default_folder_prefix = ''; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true;
The error in the browser is:
- ERROR : Bad or malformed request.*
Server responded: {830} BAD Error in IMAP command : Unknown command.
and in the logs I see this:
Dec 18 09:41:56 opus postfix/smtpd[12747]: connect from localhost[127.0.0.1] Dec 18 09:41:56 opus postfix/smtpd[12747]: 4CB7329B00B2: client=localhost[127.0.0.1] Dec 18 09:41:56 opus postfix/cleanup[12750]: 4CB7329B00B2: message-id=51150.127.0.1.1.1197988916.squirrel@127.0.1.1 Dec 18 09:41:56 opus postfix/qmgr[2650]: 4CB7329B00B2: from=vic@thepenguin.net, size=1015, nrcpt=1 (queue active) Dec 18 09:41:56 opus postfix/smtpd[12747]: disconnect from localhost[127.0.0.1] Dec 18 09:41:56 opus dovecot: imap-login: Login: user=<vic>, method=PLAIN, rip=::ffff:127.0.1.1, lip=::ffff:127.0.1.1, secured Dec 18 09:41:56 opus dovecot: IMAP(vic): Disconnected: Too many invalid IMAP commands. Dec 18 09:41:59 opus postfix/smtp[12751]: 4CB7329B00B2: to=vstanfield@other.com, relay=platinum.fusionalliance.com[168.215.73.114]:25, delay=3.6, delays=0.08/0.01/2.6/0.89, dsn=2.0.0, status=sent (250 Requested mail action okay, completed) Dec 18 09:41:59 opus postfix/qmgr[2650]: 4CB7329B00B2: removed
As you can surmise from the logs, the mail does get sent.
Anybody see my mistake?
CaptainVic
Vicki Stanfield wrote:
Here is what I see in /etc/squirrelmail/config.php
$optional_delimiter = '.'; [snip] $default_folder_prefix = ''; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true;
This may or not be related, but I had a lot of trouble getting SM to work in it's "dovecot" mode, I'm not sure it's entirely up to snuff - I haven't spent the time to debug. Instead I switched it back to Courier mode (we migrated from Courier) and it works like a champ - you just need to adjust your $default_folder_prefix if you don't actually run Dovecot in Courier-like mode (namespace), I do believe.
Here are what I believe to be the bits out of my config.php that matter:
$imapServerAddress = '127.0.0.1'; $imapPort = 143; $imap_server_type = 'courier'; $invert_time = false; $optional_delimiter = '.';
$default_folder_prefix = 'INBOX.'; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true; $show_prefix_option = false; $auto_expunge = true; $default_sub_of_inbox = false; $show_contain_subfolders_option = false; $auto_create_special = true; $delete_folder = true; $noselect_fix_enable = false;
$allow_thread_sort = true; $allow_server_sort = true; $allow_charset_search = true; $uid_support = true;
$no_list_for_subscribe = false; $imap_auth_mech = 'login'; $use_imap_tls = false;
The matching namespace in dovecot.conf that goes along with this is:
# Courier-IMAP friendly namespace private { separator = . prefix = INBOX. inbox = yes }
Hope this helps some, -te
-- Troy Engel | Systems Engineer Fluid, Inc | http://www.fluid.com
Troy Engel wrote:
Vicki Stanfield wrote:
Here is what I see in /etc/squirrelmail/config.php
$optional_delimiter = '.'; [snip] $default_folder_prefix = ''; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true;
This may or not be related, but I had a lot of trouble getting SM to work in it's "dovecot" mode, I'm not sure it's entirely up to snuff - I haven't spent the time to debug. Instead I switched it back to Courier mode (we migrated from Courier) and it works like a champ - you just need to adjust your $default_folder_prefix if you don't actually run Dovecot in Courier-like mode (namespace), I do believe.
Here are what I believe to be the bits out of my config.php that matter:
$imapServerAddress = '127.0.0.1'; $imapPort = 143; $imap_server_type = 'courier'; $invert_time = false; $optional_delimiter = '.';
$default_folder_prefix = 'INBOX.'; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true; $show_prefix_option = false; $auto_expunge = true; $default_sub_of_inbox = false; $show_contain_subfolders_option = false; $auto_create_special = true; $delete_folder = true; $noselect_fix_enable = false;
$allow_thread_sort = true; $allow_server_sort = true; $allow_charset_search = true; $uid_support = true;
$no_list_for_subscribe = false; $imap_auth_mech = 'login'; $use_imap_tls = false;
The matching namespace in dovecot.conf that goes along with this is:
# Courier-IMAP friendly namespace private { separator = . prefix = INBOX. inbox = yes }
Hope this helps some, -te
We use dovecot+squirrelmail+maildir without problems:
$imapPort = 1143; #imapproxy on this port $useSendmail = false; $smtpServerAddress = 'localhost'; $smtpPort = 25; $sendmail_path = '/usr/sbin/sendmail'; $sendmail_args = '-i -t'; $pop_before_smtp = false; $imap_server_type = 'dovecot'; $invert_time = false; $optional_delimiter = 'detect'; $encode_header_key = '';
$default_folder_prefix = ''; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true; $show_prefix_option = false; $list_special_folders_first = true; $use_special_folder_color = true; $auto_expunge = false; $default_sub_of_inbox = false; $show_contain_subfolders_option = false; $default_unseen_notify = 2; $default_unseen_type = 1; $auto_create_special = true; $delete_folder = false; $noselect_fix_enable = false;
==============================================
Namespaces are:
# default namespace namespace private { separator = / prefix = inbox = yes #location = maildir:/home/virtual/%h
}
# for backwards compatibility: namespace private { separator = / prefix = mail/ location = maildir:/home/virtual/%h
hidden = yes
}
===========================================
If no luck use a network sniffer eg tcpdump to intercept the IMAP commands and see what command is actually "malformed".
Dan
Vicki Stanfield wrote:
I have been struggling with getting my Fedora 7 box set up to use dovecot with Squirrelmail and Maildir. It works correctly with the exception of writing outgoing mail to the right folder (.Sent) or drafts (.Drafts). If I send a mail with Mutt, it writes the mail to the right place, so it has to be squirrelmail config or dovecot config. I want to use .Sent for sent-mail (~user/Maildir/.Sent) and .Drafts for drafts (~user/Maildir/.Drafts).
Here is what I see in /etc/squirrelmail/config.php
$optional_delimiter = '.'; [snip] $default_folder_prefix = ''; $trash_folder = 'Trash'; $sent_folder = 'Sent'; $draft_folder = 'Drafts'; $default_move_to_trash = true; $default_move_to_sent = true; $default_save_as_draft = true;
The error in the browser is:
- ERROR : Bad or malformed request.*
Server responded: {830} BAD Error in IMAP command : Unknown command.
and in the logs I see this:
Dec 18 09:41:56 opus postfix/smtpd[12747]: connect from localhost[127.0.0.1] Dec 18 09:41:56 opus postfix/smtpd[12747]: 4CB7329B00B2: client=localhost[127.0.0.1] Dec 18 09:41:56 opus postfix/cleanup[12750]: 4CB7329B00B2: message-id=51150.127.0.1.1.1197988916.squirrel@127.0.1.1 Dec 18 09:41:56 opus postfix/qmgr[2650]: 4CB7329B00B2: from=vic@thepenguin.net, size=1015, nrcpt=1 (queue active) Dec 18 09:41:56 opus postfix/smtpd[12747]: disconnect from localhost[127.0.0.1] Dec 18 09:41:56 opus dovecot: imap-login: Login: user=<vic>, method=PLAIN, rip=::ffff:127.0.1.1, lip=::ffff:127.0.1.1, secured Dec 18 09:41:56 opus dovecot: IMAP(vic): Disconnected: Too many invalid IMAP commands. Dec 18 09:41:59 opus postfix/smtp[12751]: 4CB7329B00B2: to=vstanfield@other.com, relay=platinum.fusionalliance.com[168.215.73.114]:25, delay=3.6, delays=0.08/0.01/2.6/0.89, dsn=2.0.0, status=sent (250 Requested mail action okay, completed) Dec 18 09:41:59 opus postfix/qmgr[2650]: 4CB7329B00B2: removed
As you can surmise from the logs, the mail does get sent.
Anybody see my mistake?
CaptainVic
Further to my last email about tcpdump to see the imap commands itself this is how you could use it:
tcpdump -i eth0 -n -s 1500 -X tcp port 143
HTH Dan
On Wed, 2007-12-19 at 14:11 -0500, Vicki Stanfield wrote:
The error in the browser is:
- ERROR : Bad or malformed request.*
Server responded: {830} BAD Error in IMAP command : Unknown command.
This is clearly a Squirrelmail bug.
For completeness, I wanted to include the solution to this puzzle. I had migrated my old squirrelmail config over to the box and then forgot it was there. I later installed the rpm version. I confused the system (and myself) in the process. Once I took away the old stuff, I was able to appropriately configure squirrelmail. Thanks for the help.
Vic
participants (5)
-
Daniel Watts
-
Timo Sirainen
-
Troy Engel
-
Vicki Stanfield
-
vicki@thepenguin.org