preg error in 1.4.20-RC2

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

preg error in 1.4.20-RC2

by Helmut Hullen :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hallo,


when I call "Ordner" (folders) all folders are shown, but under "export/
import" there are many lines with


Warning: preg_match() [function.preg-match]: Unknown modifier '/' in  
/home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 758

Warning: preg_match() [function.preg-match]: Unknown modifier '/' in /home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 759


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

Then follows the window with the available folders.

All other functions seem to work well.

Viele Gruesse!
Helmut

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
-----
squirrelmail-users mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-users@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.user
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users

Re: preg error in 1.4.20-RC2

by Scott Lambert :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On, Sept 10th, at 16:56, Helmut Hullen wrote:

> Hallo,
>
>
> when I call "Ordner" (folders) all folders are shown, but under \
> "export/ import" there are many lines with
>
>
> Warning: preg_match() [function.preg-match]: Unknown modifier '/' in  
> /home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 758
>
> Warning: preg_match() [function.preg-match]: Unknown modifier '/' in \
> /home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 759
>
>
> -------------------
>
> Then follows the window with the available folders.
>
> All other functions seem to work well.

I have just run into this myself.  I believe Helmut was referring to
"UnSubscribe / Subscribe" when he mentions "export / import".  Perhaps
that minor translation issue is part of the cause of lack of responses.

The error messages show in the Subscribe column, and I believe there is
one entry for each folder I have on the server. (lots)

I am running Cyrus IMAPd with the unixhierseperator.  The folder
delimiter is "/".  I am already subscribed to all of the folders.

--------
Warning: preg_match() [function.preg-match]: Unknown modifier '/' in
/usr/local/www/squirrelmail/functions/imap_mailbox.php on line 758
... (repeats hundreds of time) ...
No folders were found to subscribe to!
--------

/usr/local/www/squirrelmail/functions/imap_mailbox.php:
-------
758:            if((preg_match('/^inbox'.quotemeta($delimiter).'/i', $mailbox)) ||
759:               (preg_match('/^'.$folder_prefix.'/', $mailbox)) ||
760:               ( isset($boxesallbyname[$parentfolder]) && (strlen($parentfolder) > 0) ) ) {
-------

I suspect Helmut may have $folder_prefix specified as something like
"INBOX/" to get the error on line 759 as well as 758.

http://php.net/manual/en/function.quotemeta.php:
-------
string quotemeta  ( string $str  )

Returns a version of str with a backslash character (\) before every character that is among these:
. \ + * ? [ ^ ] ( $ )
-------

That doesn't list "/" so I am wondering if that is the problem.

I wonder if it would be possible to choose a different regex
delimiter(?) rather than "/". Something like "#", or something else
which is not allowed as part of an IMAP mailbox name per the specs and
reality.  

I haven't checked to see what characters that would leave available.  I
also don't have an install of squirrel mail which is not in production
so I am afraid to test this suggestion without input from those who know
more about the topic than I.

In other words:
758:            if((preg_match('#^inbox'.quotemeta($delimiter).'#i', $mailbox)) ||
759:               (preg_match('#^'.$folder_prefix.'#', $mailbox)) ||
760:               ( isset($boxesallbyname[$parentfolder]) && (strlen($parentfolder) > 0) ) ) {

Thank you for your assistance.

FreeBSD 8.0-RC1 FreeBSD 8.0-RC1 #2: Fri Sep 18 20:12:14 CDT 2009    
root@localhost:/usr/obj/usr/src/sys/GENERIC  i386

apache-2.2.13       Version 2.2.x of Apache web server with prefork MPM.
cyrus-imapd-2.3.15  The cyrus mail server, supporting POP3 and IMAP4 protocols
cyrus-sasl-2.1.23   RFC 2222 SASL (Simple Authentication and Security Layer)
mysql-client-5.1.39 Multithreaded SQL database (client)
pcre-7.9            Perl Compatible Regular Expressions library
pear-1.9.0          PEAR framework for PHP
pear-DB-1.7.13,1    PEAR Database Abstraction Layer
php5-5.2.11         PHP Scripting Language
php5-ctype-5.2.11   The ctype shared extension for php
php5-dom-5.2.11     The dom shared extension for php
php5-filter-5.2.11  The filter shared extension for php
php5-gettext-5.2.11 The gettext shared extension for php
php5-hash-5.2.11    The hash shared extension for php
php5-iconv-5.2.11   The iconv shared extension for php
php5-imap-5.2.11    The imap shared extension for php
php5-json-5.2.11    The json shared extension for php
php5-mbstring-5.2.11 The mbstring shared extension for php
php5-mcrypt-5.2.11  The mcrypt shared extension for php
php5-mhash-5.2.11   The mhash shared extension for php
php5-mysql-5.2.11   The mysql shared extension for php
php5-openssl-5.2.11 The openssl shared extension for php
php5-pcre-5.2.11    The pcre shared extension for php
php5-pdo-5.2.11     The pdo shared extension for php
php5-pdo_sqlite-5.2.11 The pdo_sqlite shared extension for php
php5-posix-5.2.11   The posix shared extension for php
php5-pspell-5.2.11  The pspell shared extension for php
php5-session-5.2.11 The session shared extension for php
php5-simplexml-5.2.11 The simplexml shared extension for php
php5-spl-5.2.11     The spl shared extension for php
php5-tokenizer-5.2.11 The tokenizer shared extension for php
php5-xml-5.2.11     The xml shared extension for php
php5-xmlreader-5.2.11 The xmlreader shared extension for php
php5-xmlwriter-5.2.11 The xmlwriter shared extension for php
squirrelmail-1.4.20.r2_1 A webmail system which accesses mail over IMAP
squirrelmail-avelsieve-plugin-1.9.7_2 SquirrelMail plugin for Server-Side Mail Filtering manageme
squirrelmail-compatibility-plugin-2.0.14 Required by many plugins for compatibility with SquirrelMai
squirrelmail-email_footer-plugin-0.5_1 Automatically appends footer to SquirrelMail-generated emai
squirrelmail-login_notes-plugin-1.2 Place notes on the login screen
squirrelmail-notes-plugin-1.2_1 Allows you to create notes
squirrelmail-notify-plugin-1.3_1 Notify when new mail arrives
squirrelmail-plugins-1.0_1 A "meta-port" to install SquirrelMail plugins
squirrelmail-pupdate-plugin-0.7_2 Checks for plugin updates by parsing the SM site
squirrelmail-quota_usage-plugin-1.3.1_1 View quota and current usage
squirrelmail-secure_login-plugin-1.4_1 This plugin will automatically turn on SSL security during
squirrelmail-timeout_user-plugin-1.1.1_2 Automatically logs a user out if they're idle for a set amo
squirrelmail-vlogin-plugin-3.10.1 Adds multi-site-hosting capabilities to SquirrelMail
squirrelmail-web_search-plugin-0.1.6_1 Plugin for Websearch

--
Scott Lambert                    KC5MLE                       Unix SysAdmin
lambert@...


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) 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/devconference
-----
squirrelmail-users mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-users@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.user
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users

Re: preg error in 1.4.20-RC2

by Paul Lesniewski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, Oct 20, 2009 at 2:54 PM, Scott Lambert <lambert@...> wrote:

> On, Sept 10th, at 16:56, Helmut Hullen wrote:
>> Hallo,
>>
>>
>> when I call "Ordner" (folders) all folders are shown, but under \
>> "export/ import" there are many lines with
>>
>>
>> Warning: preg_match() [function.preg-match]: Unknown modifier '/' in
>> /home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 758
>>
>> Warning: preg_match() [function.preg-match]: Unknown modifier '/' in \
>> /home/www/squirrelmail-1.4.20-RC2/functions/imap_mailbox.php on line 759
>>
>>
>> -------------------
>>
>> Then follows the window with the available folders.
>>
>> All other functions seem to work well.
>
> I have just run into this myself.  I believe Helmut was referring to
> "UnSubscribe / Subscribe" when he mentions "export / import".  Perhaps
> that minor translation issue is part of the cause of lack of responses.

It's already fixed in 1.4.20SVN.

Cheers,

  Paul


> The error messages show in the Subscribe column, and I believe there is
> one entry for each folder I have on the server. (lots)
>
> I am running Cyrus IMAPd with the unixhierseperator.  The folder
> delimiter is "/".  I am already subscribed to all of the folders.
>
> --------
> Warning: preg_match() [function.preg-match]: Unknown modifier '/' in
> /usr/local/www/squirrelmail/functions/imap_mailbox.php on line 758
> ... (repeats hundreds of time) ...
> No folders were found to subscribe to!
> --------
>
> /usr/local/www/squirrelmail/functions/imap_mailbox.php:
> -------
> 758:            if((preg_match('/^inbox'.quotemeta($delimiter).'/i', $mailbox)) ||
> 759:               (preg_match('/^'.$folder_prefix.'/', $mailbox)) ||
> 760:               ( isset($boxesallbyname[$parentfolder]) && (strlen($parentfolder) > 0) ) ) {
> -------
>
> I suspect Helmut may have $folder_prefix specified as something like
> "INBOX/" to get the error on line 759 as well as 758.
>
> http://php.net/manual/en/function.quotemeta.php:
> -------
> string quotemeta  ( string $str  )
>
> Returns a version of str with a backslash character (\) before every character that is among these:
> . \ + * ? [ ^ ] ( $ )
> -------
>
> That doesn't list "/" so I am wondering if that is the problem.
>
> I wonder if it would be possible to choose a different regex
> delimiter(?) rather than "/". Something like "#", or something else
> which is not allowed as part of an IMAP mailbox name per the specs and
> reality.
>
> I haven't checked to see what characters that would leave available.  I
> also don't have an install of squirrel mail which is not in production
> so I am afraid to test this suggestion without input from those who know
> more about the topic than I.
>
> In other words:
> 758:            if((preg_match('#^inbox'.quotemeta($delimiter).'#i', $mailbox)) ||
> 759:               (preg_match('#^'.$folder_prefix.'#', $mailbox)) ||
> 760:               ( isset($boxesallbyname[$parentfolder]) && (strlen($parentfolder) > 0) ) ) {
>
> Thank you for your assistance.
>
> FreeBSD 8.0-RC1 FreeBSD 8.0-RC1 #2: Fri Sep 18 20:12:14 CDT 2009
> root@localhost:/usr/obj/usr/src/sys/GENERIC  i386
>
> apache-2.2.13       Version 2.2.x of Apache web server with prefork MPM.
> cyrus-imapd-2.3.15  The cyrus mail server, supporting POP3 and IMAP4 protocols
> cyrus-sasl-2.1.23   RFC 2222 SASL (Simple Authentication and Security Layer)
> mysql-client-5.1.39 Multithreaded SQL database (client)
> pcre-7.9            Perl Compatible Regular Expressions library
> pear-1.9.0          PEAR framework for PHP
> pear-DB-1.7.13,1    PEAR Database Abstraction Layer
> php5-5.2.11         PHP Scripting Language
> php5-ctype-5.2.11   The ctype shared extension for php
> php5-dom-5.2.11     The dom shared extension for php
> php5-filter-5.2.11  The filter shared extension for php
> php5-gettext-5.2.11 The gettext shared extension for php
> php5-hash-5.2.11    The hash shared extension for php
> php5-iconv-5.2.11   The iconv shared extension for php
> php5-imap-5.2.11    The imap shared extension for php
> php5-json-5.2.11    The json shared extension for php
> php5-mbstring-5.2.11 The mbstring shared extension for php
> php5-mcrypt-5.2.11  The mcrypt shared extension for php
> php5-mhash-5.2.11   The mhash shared extension for php
> php5-mysql-5.2.11   The mysql shared extension for php
> php5-openssl-5.2.11 The openssl shared extension for php
> php5-pcre-5.2.11    The pcre shared extension for php
> php5-pdo-5.2.11     The pdo shared extension for php
> php5-pdo_sqlite-5.2.11 The pdo_sqlite shared extension for php
> php5-posix-5.2.11   The posix shared extension for php
> php5-pspell-5.2.11  The pspell shared extension for php
> php5-session-5.2.11 The session shared extension for php
> php5-simplexml-5.2.11 The simplexml shared extension for php
> php5-spl-5.2.11     The spl shared extension for php
> php5-tokenizer-5.2.11 The tokenizer shared extension for php
> php5-xml-5.2.11     The xml shared extension for php
> php5-xmlreader-5.2.11 The xmlreader shared extension for php
> php5-xmlwriter-5.2.11 The xmlwriter shared extension for php
> squirrelmail-1.4.20.r2_1 A webmail system which accesses mail over IMAP
> squirrelmail-avelsieve-plugin-1.9.7_2 SquirrelMail plugin for Server-Side Mail Filtering manageme
> squirrelmail-compatibility-plugin-2.0.14 Required by many plugins for compatibility with SquirrelMai
> squirrelmail-email_footer-plugin-0.5_1 Automatically appends footer to SquirrelMail-generated emai
> squirrelmail-login_notes-plugin-1.2 Place notes on the login screen
> squirrelmail-notes-plugin-1.2_1 Allows you to create notes
> squirrelmail-notify-plugin-1.3_1 Notify when new mail arrives
> squirrelmail-plugins-1.0_1 A "meta-port" to install SquirrelMail plugins
> squirrelmail-pupdate-plugin-0.7_2 Checks for plugin updates by parsing the SM site
> squirrelmail-quota_usage-plugin-1.3.1_1 View quota and current usage
> squirrelmail-secure_login-plugin-1.4_1 This plugin will automatically turn on SSL security during
> squirrelmail-timeout_user-plugin-1.1.1_2 Automatically logs a user out if they're idle for a set amo
> squirrelmail-vlogin-plugin-3.10.1 Adds multi-site-hosting capabilities to SquirrelMail
> squirrelmail-web_search-plugin-0.1.6_1 Plugin for Websearch
>

--
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(R) 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/devconference
-----
squirrelmail-users mailing list
Posting guidelines: http://squirrelmail.org/postingguidelines
List address: squirrelmail-users@...
List archives: http://news.gmane.org/gmane.mail.squirrelmail.user
List info (subscribe/unsubscribe/change options): https://lists.sourceforge.net/lists/listinfo/squirrelmail-users