SquirrelMail  
Donations
News
About
Support
Screen shots
Download
Plugins
Documentation
Sponsors
Bounties













Security Notice
Phishing campain
Version 1.4.15
Security Upgrade

After sending a mail message, the right frame displays a warning:

ERROR : Bad or malformed request.
Server responded: Received: BAD Command unrecognized: FROM

The syslog for imapd suggests that Squirrelmail is writing the whole message to imapd.

The problem may be that the user has a directory called "Sent" and squirrelmail is trying to append to a folder called "Sent" - and is not seeing an error status and persists in writing. Check the user preferences to see if the "sent" option points to a writable folder

Andrew Daviel <advax@triumf.ca>


For cyrus-imap: Another solution could be a line in /etc/imapd.conf

altnamespace: yes

in the config.php:

$optional_delimiter     = '.';
$default_folder_prefix          = '';
$trash_folder                   = 'INBOX.Trash';
$sent_folder                    = 'INBOX.Sent';
$draft_folder                   = 'INBOX.Drafts';

Enrique Seiffert <ds@caribenet.com>


  • Reply: The Above fix worked for me running squirrelmail-1.4.4-2 on FC4

This error started to occur to me suddenly. I'm using Debian's Cyrus21 2.1.18-1 and SquirrelMail 1.4.4-7 and self-compiled PHP 5.1.1. The actual error message when sending was:

ERROR : Bad or malformed request. Server responded: Received: BAD Unrecognized command 

I used ethereal to see what's going on, and here's what it said:

Request: A002 LIST "" "Sent"
Response: * LIST (\HasNoChildren) "." "Sent"
Request: A003 APPEND "Sent" (\Seen) \{625}
Response: A003 BAD Missing required argument to Append command

I then tried to follow the same procedure using telnet, and it gave the same error. Then I looked at the RFC3501 and noticed that there was no \ before the last argument in the examples. I then tried that with telnet, and it worked. This makes me believe that the problem is in SquirrelMail (though I can not be sure).

I changed row number 895 from file imap_general.php (function sqimap_append) to

  fputs ($imap_stream, sqimap_session_id() . " APPEND \"$sent_folder\" (\\Seen) {" . $length . "}\r\n");

after which Sent messages where stored okay.

NOTE: This issue was fixed several years ago and made part of version 1.4.6. If this fix solves your problem, you are running drastically outdated code and should upgrade immediately.

  • Reply: Thanks Vesse! That was really helpful!
  • Reply2: I was also saved by this information.
  • Reply3: had the same problem, but your solution didn't worked for me. A upgrade to sq-1.4.6-RC1 solved the issue. /Pascal
  • Reply4: Above solution worked fine for me on 1.4.8 with FC5 and nutsmail skin. Thanks - PsyMan
  • Reply5: Thanks Vesse! I was also saved by this information - for sq-1.4.3a on FC5, I did not have any problem for sq-1.4.9a on FC5 /R.Lin.
  • Reply6: Same here. Thanks vesse!!
  • Reply7: Thanks a lot man, you're a genius!

In my case, I was over quota. I did not know because the new mail was pushing me over, but it could not be delivered and so I did not think that I was over -- although it was very close to full (99.1%). -Pablo


If you've upgraded to PHP 5.1.1 there's a known bug which can cause this error on send. The message seems to be sent in spite of the error. It's under PHP 5.1 in the KnownBugs page.

© 1999-2010 by The SquirrelMail Project Team