php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #40665 DOM/EXSLT not enabled in Windows binaries
Submitted: 2007-02-28 12:35 UTC Modified: 2007-03-04 18:40 UTC
From: bat at flurf dot net Assigned: edink (profile)
Status: Closed Package: XSLT related
PHP Version: 4CVS-2007-02-28 (snap) OS: Windows XP
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: bat at flurf dot net
New email:
PHP Version: OS:

 

 [2007-02-28 12:35 UTC] bat at flurf dot net
Description:
------------
In a Windows binary of PHP4, enable DOMXML and look at a phpinfo() page.  DOM/XSLT is listed as enabled, but DOM/EXSLT, a feature built in to libxslt, is not enabled.  There appears to be no way to enable it, short of perhaps fixing the switch in the standard/snapshot Windows build scripts that are disabling the feature.

Reproduce code:
---------------
Ensure that your PHP.ini contains the line:
  extension=php_domxml.dll

Look at a phpinfo() page, in the domxml section, typically about halfway down the page.

Mine contains these settings only:
DOM/XML 	enabled
DOM/XML API Version 	20020815
libxml Version 	20626
HTML Support 	enabled
XPath Support 	enabled
XPointer Support 	enabled
DOM/XSLT 	enabled
libxslt Version 	1.1.17
libxslt compiled against libxml Version 	2.6.26


Expected result:
----------------
Should also contain:
DOM/EXSLT 	enabled
libexslt Version 	x.x.xx

Actual result:
--------------
Consequence: attempting to use the exslt:node-set() function to get past an egregious limitation in XSLT 1.0 gives the warning messages as follows on any Windows build of PHP4:

Warning: process() [function.process]: xmlXPathCompOpEval: function node-set not found in ...
Warning: process() [function.process]: Unregistered function in ...

This indicates that libxslt is working, but access to its EXSLT features has been prevented.  The phpinfo() result indicates that this prevention has occurred at build time, not as a consequence of any PHP script.

On a standard Linux build, this function works perfectly well.  It is therefore a bug in the way PHP is being built.  Note: this is not a bug in libxslt!

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2007-03-04 18:40 UTC] edink@php.net
This bug has been fixed in CVS.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.


 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Mon Apr 29 07:01:30 2024 UTC