ID: 27372
User updated by: php-bug-27372 at ryandesign dot com
-Reported By: php-bug-NOSPAM-2004 at ryandesign dot com
+Reported By: php-bug-27372 at ryandesign dot com
Status: Verified
Bug Type: *General Issues
Operating System: *
PHP Version: 5CVS, 4CVS (2004-04-07)
New Comment:
Based on the previous conversation in this bug I had been
under the impression that the new browscap parser had made
it into PHP 5.1 and 5.0, but I can find no trace of it in
5.1.0RC1. Today for the first time since 6 months I updated
my php_browscap with the one from Gary's site and PHP threw
a parse error, and I noticed that the two entries where the
browser glob contains square brackets throw the standard ini
parser for a loop. I sent Gary corrections for the
php_browscap that make it work with PHP (replace square
brackets with question marks) but the whole idea here is
that we want to have a parser that works with Gary's
standard files, so that we don't keep bugging him.
What was the response to the new browscap parser on the PHP
internals list? What would be required to get it committed
to 5.1 before it goes final? I'd be happy to test it on
Gary's files or evaluate the code or give a shot at
rewriting bits of it if there were any objections to the
original implementation.
I was so sure we had taken care of this last year. Please,
let's make sure it gets into PHP 5.1 and doesn't have to
wait until 5.2 or 6.0. Thanks.
Previous Comments:
------------------------------------------------------------------------
[2004-10-04 17:05:44] [EMAIL PROTECTED]
This would have to be caught during module start up, but
what should be done about it? Have the parser crap out and
stop processing when this happens, leaving an error
message in the logs or on stderr or whatever? Spit out a
warning but continue processing? What assumptions should
be made about the screwed up entry, should it just be
discarded?
This should probably be in it's own bug report, btw, this
is a seperate issue from the original report. (The new
parser fixes the original bug report, but not this issue,
which may or may not be fixed, as it's kind of a problem
with the ini file itself, akin to calling a function with
infinite recursion...)
J
------------------------------------------------------------------------
[2004-10-02 21:54:48] alexandre at alapetite dot remove dot net
Gary Keith has already (2004-10-02) kindly modified his browscap.ini in
order to prevent a specific crash about the Nutch browser. But the
browscap parser should anyway include a security: when one assign a
parent to the same parent in browscap.ini, there is an infinite loop
that should be prevented.
Example in browscap.ini:
[Nutch]
parent=Nutch
Then in a PHP script:
$browser=get_browser('Nutch');
Effect:
Infinite loop that takes 100% CPU forever.
------------------------------------------------------------------------
[2004-08-31 21:22:34] [EMAIL PROTECTED]
I posted this on internals but I should probably add it to
the bug report, too...
A patch for this against HEAD is available at
http://bugs.tutorbuddy.com/download.php/browscap.patch.tar.gz
It contains the new parser (which goes into ext/standard)
and updates to the makefiles for *ix and win32. I've
tested the patch on linux and win2k, and I'd like to
commit to HEAD for inclusion in 5.1. Backporting to 5.0
would be nice, too, if possible.
J
------------------------------------------------------------------------
[2004-02-26 18:32:25] php_bug_27372 at garykeith dot com
Hi, Derick.
Since there are so many people still using very early versions of 4.3.x
I know it will be a very long time before everyone upgrades to 5.* and
that means I'll be stuck in the same untenable situation I'm in right
now for a very long time.
Kindly remove the link to my website from your documentation page. It's
not fair to your users to refer them to a browscap.ini file that does
not work in PHP.
~gary.
------------------------------------------------------------------------
[2004-02-26 16:37:33] [EMAIL PROTECTED]
Hey,
there will be no back-port to PHP 4.3, as it involves writing a whole
new parser, which is simply something that should not go into a bug-fix
only branch (and it is also very unlikely that there will be a 4.3.6
anyway).
Now, for PHP 5 that is obviously not a problem and we'll have to write
a new parser for it, which is not an easy task, and that takes time
too. I can't not guarantee in which time frame that happens though.
Derick
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/27372
--
Edit this bug report at http://bugs.php.net/?id=27372&edit=1