[1.4.20RC2] case exact match in decodeheader

View: New views
3 Messages — Rating Filter:   Alert me  

[1.4.20RC2] case exact match in decodeheader

by taca :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

my acquaintance find there is a case exact match in processing
decoding encoded header.

This problem still exists in 1.4.20RC2 and affects replying/forwarding
a mail.

Attached patch fix the problem.  Case of "q|b" part has changed to the
same as other regular expressions.

Best regards.

--
Takahiro Kambe <taca@...>


--- functions/i18n.php.orig 2009-07-29 11:21:06.000000000 +0900
+++ functions/i18n.php 2009-10-04 10:17:48.000000000 +0900
@@ -675,7 +675,7 @@
             break;
         case 'decodeheader':
             $ret = str_replace("\t", "", $ret);
-            if (preg_match('/=\?([^?]+)\?(q|b)\?([^?]+)\?=/', $ret))
+            if (preg_match('/=\?([^?]+)\?(Q|B)\?([^?]+)\?=/Ui', $ret))
                 $ret = @mb_decode_mimeheader($ret);
             $ret = @mb_convert_encoding($ret, 'EUC-JP', 'AUTO');
             break;


------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
-----
squirrelmail-devel mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-devel@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.devel
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-devel

Re: [1.4.20RC2] case exact match in decodeheader

by Paul Lesniewski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Sat, Oct 3, 2009 at 7:35 PM, Takahiro Kambe <taca@...> wrote:

> Hi,
>
> my acquaintance find there is a case exact match in processing
> decoding encoded header.
>
> This problem still exists in 1.4.20RC2 and affects replying/forwarding
> a mail.
>
> Attached patch fix the problem.  Case of "q|b" part has changed to the
> same as other regular expressions.

> -            if (preg_match('/=\?([^?]+)\?(q|b)\?([^?]+)\?=/', $ret))
> +            if (preg_match('/=\?([^?]+)\?(Q|B)\?([^?]+)\?=/Ui', $ret))

Kanbe-san, thank you.  Looks like I forgot to add the i modifier in a
couple places where eregi() was being replaced.  However, unless you
can prove otherwise, I believe the U modifier does nothing here, so it
is being left out.  This has been committed.  Thank you.

--
Paul Lesniewski
SquirrelMail Team
Please support Open Source Software by donating to SquirrelMail!
http://squirrelmail.org/donate_paul_lesniewski.php

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
-----
squirrelmail-devel mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-devel@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.devel
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-devel

Re: [1.4.20RC2] case exact match in decodeheader

by taca :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

In message <58191e420910032210ob8e1c12s275f2bed213191f@...>
        on Sat, 3 Oct 2009 22:10:44 -0700,
        Paul Lesniewski <paul@...> wrote:
>> -            if (preg_match('/=\?([^?]+)\?(q|b)\?([^?]+)\?=/', $ret))
>> +            if (preg_match('/=\?([^?]+)\?(Q|B)\?([^?]+)\?=/Ui', $ret))
The patch was provided by obache at NetBSD.org.

> Kanbe-san, thank you.  Looks like I forgot to add the i modifier in a
> couple places where eregi() was being replaced.  However, unless you
> can prove otherwise, I believe the U modifier does nothing here, so it
Yes, I think that U modifier isn't needed unless the string is really
correctly encoded and I don't have such a wrong case.  Probably, U
modified was added as other lines which make matching to MIME B/Q
encoding.

> is being left out.  This has been committed.  Thank you.
Thanks for your quick action!

--
Takahiro Kambe <taca@...>

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
-----
squirrelmail-devel mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-devel@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.devel
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-devel