php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #10064 Apache Seg Faults with XSLT and domXML usage
Submitted: 2001-03-29 14:15 UTC Modified: 2001-05-01 08:53 UTC
From: micah at auctionservices dot com Assigned:
Status: Closed Package: Sablotron XSL
PHP Version: 4.0 Latest CVS (29/03/2001) OS: Linux Mandrake 8.0
Private report: No CVE-ID: None
 [2001-03-29 14:15 UTC] micah at auctionservices dot com
The compile script is as follows:

./configure \
--mandir=/usr/share/man \
--with-apxs=/usr/local/apache/bin/apxs \
--with-config-file-path=/etc/httpd \
--enable-magic-quotes \
--enable-bcmath \
--enable-calendar \
--with-dom=/usr/local \
--with-zlib-dir \
--enable-ftp \
--with-mysql=/usr/local/mysql \
--with-pgsql=/usr/local/pgsql \
--with-expat-dir=/usr/local \
--with-sablot=/usr/local \
--enable-trans-sid \
--with-regex=system \
--with-swf=/usr/local/openswf \
--enable-wddx \
--enable-memory-limit \
--with-gnu-ld


The system is:
Linux Mandrake 8.0
Apache 1.3.19
glibc 2.2.2
MySQL 3.23.34a
Postgres 7.0.3
libxml 2.3.4
Sablot 0.51
expat 1.95.1

gdb backtrace:

 
Program received signal SIGSEGV, Segmentation fault.
0x403d0742 in Processor::useArg (this=0x8145840, 
name=0x8f8 <Address 0x8f8 out of bounds>, val=0x0)
    at proc.cpp:1067
1067    proc.cpp: No such file or directory.
        in proc.cpp
Current language:  auto; currently c++
(gdb) bt
#0  0x403d0742 in Processor::useArg (this=0x8145840, 
name=0x8f8 <Address 0x8f8 out of bounds>, val=0x0)
    at proc.cpp:1067
#1  0x403d12a4 in SablotRunProcessor 
(processor_=0x8145840, sheetURI=0x81358bc "test.xsl",
    inputURI=0x4032ebfc "arg:/_xmlinput", 
resultURI=0x4032ebef "arg:/_output", params=0x0, 
arguments=0xbfffdad0)
    at sablot.cpp:137
#2  0x40279d7e in php_if_xslt_output_endtransform (ht=0, 
return_value=0x8136254, this_ptr=0x0, return_value_used=0)
    at sablot.c:317
#3  0x4021c3c1 in execute (op_array=0x811d774) at 
./zend_execute.c:1494
#4  0x4022d27d in zend_execute_scripts (type=8, 
file_count=3) at zend.c:743
#5  0x40244f5c in php_execute_script 
(primary_file=0xbffff690) at main.c:1194
#6  0x402406a5 in apache_php_module_main (r=0x812ad04, 
display_source_mode=0) at sapi_apache.c:89
#7  0x4024137c in send_php (r=0x812ad04, 
display_source_mode=0,
    filename=0x812b7e4 
"/home/www/public_html/xsl/test2.php") at mod_php4.c:521
#8  0x402413c2 in send_parsed_php (r=0x812ad04) at 
mod_php4.c:532
#9  0x0805b797 in ap_invoke_handler ()
#10 0x0807029b in process_request_internal ()
#11 0x08070310 in ap_process_request ()
#12 0x080673b2 in child_main ()
#13 0x08067564 in make_child ()
#14 0x080676d8 in startup_children ()
#15 0x08067d57 in standalone_main ()
#16 0x0806858f in main ()
#17 0x400960de in __libc_start_main () from /lib/libc.so.6
(gdb)


Code that is killing it:
<?php
xslt_output_begintransform("test.xsl");

$doc = new_xmldoc("1.0");

//<books>
$books = $doc->add_root("books");

//<book>
$book = $books->new_child("book","");

// <title>
$title = $book->new_child("title","Core Java Programming");

// <authors>
$authors = $book->new_child("authors","");

//<author>
$author = $authors->new_child("author","Leon Atkinson2");
$author->set_attribute("id","1");
// <isbn>
$isbn = $book->new_child("isbn",123);
	// <isbn id="123">
	$isbn->set_attribute("id","987");
/*
######################################################################
*/
	
//<book>
$book = $books->new_child("book","");

// <title>
$title = $book->new_child("title","Flash 4 Magic");

// <authors>
$authors = $book->new_child("authors","");

//<author>
$author = $authors->new_child("author","David Emberton");
$author->set_attribute("id","1");
$author = $authors->new_child("author","J. Scott Hamlin");
$author->set_attribute("id","2");

// <isbn>
$isbn = $book->new_child("isbn",123);
	// <isbn id="123">
	$isbn->set_attribute("id","987");


echo $doc->dumpmem();

xslt_output_endtransform();
?>



Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-04-01 13:28 UTC] sniper@php.net
With latest CVS (from today) I can not reproduce this.
Please try updating your CVS checkout.

--Jani

 [2001-05-01 08:53 UTC] jmoore@php.net
I cant reproduce this. No feedback and there were some slabtron fixes please try with 4.0.5

- James
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sun Dec 22 06:01:30 2024 UTC