One of my clients received a poorly formatted email with a To: header that looked somewhat like this:

===cut================================================================
To: [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]
        Some Foo <[EMAIL PROTECTED]
===cut================================================================

NOTE the lack of a trailing > on the final address.

This caused the parseAddress function in functions/imap_general.php to go into an infinite loop because of line 486, which I believe returns -1 or 0... which sets the position back to the begging of the address string in line 488.

======================================================================
functions/imap_general.php
======================================================================
484:    case '<':  /* get email address */
485:        $addr_start = $pos;
486:        $addr_end = strpos($address,'>',$addr_start);
487:        $addr = substr($address,$addr_start+1,$addr_end-$addr_start-1);
488:        $pos = $addr_end+1;
489:        break;
======================================================================

This "bug" caused the user to be unable to open the folder that this email was located in (their inbox).

I realize that this "bug" is only a "bug" if you consider "failure to handle a poorly formated email message" as a bug. But still, it's something that could be easily avoided.

- Rick



-------------------------------------------------------
This SF.Net email is sponsored by: INetU
Attention Web Developers & Consultants: Become An INetU Hosting Partner.
Refer Dedicated Servers. We Manage Them. You Get 10% Monthly Commission!
INetU Dedicated Managed Hosting http://www.inetu.net/partner/index.php
--
squirrelmail-users mailing list
List Address: [EMAIL PROTECTED]
List Archives:  http://sourceforge.net/mailarchive/forum.php?forum_id=2995
List Info: https://lists.sourceforge.net/lists/listinfo/squirrelmail-users

Reply via email to