php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #4237 Call to exit causes crash in Roxen-module
Submitted: 2000-04-25 12:56 UTC Modified: 2001-01-30 03:41 UTC
From: pete at byways dot org Assigned:
Status: Closed Package: Reproducible Crash
PHP Version: 4.0 Latest CVS (25/04/2000) OS: RedHat Linux 6.1 Intel
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: pete at byways dot org
New email:
PHP Version: OS:

 

 [2000-04-25 12:56 UTC] pete at byways dot org
When running PHP 4.0 latest CVS compiled as a Roxen module under Roxen 2.0.46, using the "exit" statement in a PHP script causes the web server to return an empty page ("Document contains no data").

PHP is configured using:

./configure --with-roxen=/usr/local/roxen/server --enable-roxen-zts --with-gettext=no --with-pgsql --without-mysql --enable-track-vars=yes --with-zlib --with-jpeg-dir=/usr --with-tiff-dir=/usr --with-session=/tmp --enable-trans-sid --with-pdflib=/usr/local

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2000-04-28 16:40 UTC] pete at byways dot org
Here is a Pike backtrace of a request for a script that contains the exit statement, using the "Resolve Path" feature in Roxen Administration.  Execution seems to stop inside the PHPScript::run() method in php4.pike, at the line:

mid->my_fd->set_close_callback(done);


Roxen version: Roxen/2.0.46
Pike version: Pike v7.0 release 38
Requested URL: /standard/actions/index.html

Error: Indexing the NULL value.
RXML frame backtrace:
 | <if variable="form.action">
 | <contents>
 | <cset preparse="" quote="none" variable="var.__contents">
 | <colorscope bgcolor="#eeeeee">
 | <st-page>
 | <contents>
 | <nooutput>
 | <subtablist preparse="preparse" width="100%">
 | <contents>
 | <cv-split>
 | <contents>
 | <cset quote="none" variable="var.content">
 | <content>
 | <contents>
 | <nooutput>
 | <tmpl title="">
modules/scripting/php4.pike (version 2.5):168: run()
base_server/roxen.pike (version 1.480):491: unthreaded_handle(modules/scripting/php4.pike.PHPScript.run)
modules/scripting/php4.pike (version 2.5):253: handle_file_extension(module.File(),"php",RequestID())
base_server/configuration.pike (version 1.303):1445: low_get_file(RequestID(),0)
base_server/configuration.pike (version 1.303):1528: get_file(RequestID(),0,0)
config_interface/standard/actions/resolv.pike (version 1.9):171: resolv_handle_request(Configuration(Deffendol),RequestID())
config_interface/standard/actions/resolv.pike (version 1.9):291: parse(RequestID())
modules/scripting/pikescript.pike (version 1.59):128: call_script(config_interface/standard/actions/resolv.pike.parse,RequestID(),module.File())
modules/scripting/pikescript.pike (version 1.59):240: handle_file_extension(module.File(),"pike",RequestID())
base_server/configuration.pike (version 1.303):1445: low_get_file(RequestID(),0)
base_server/configuration.pike (version 1.303):1528: get_file(RequestID(),0,1)
base_server/configuration.pike (version 1.303):2104: try_get_file("/standard/actions/resolv.pike",RequestID(),0,0,0)
modules/tags/rxmltags.pike (version 1.113):632: tag_insert("insert",mapping[2],RequestID())
base_server/rxml.pike (version 1.187):277: call_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[2],modules/tags/rxmltags.pike.tag_insert)
etc/modules/RXML.pmod/PXml.pike: finish("\n      <input ty"+[82]+"\" nocache/>\n    ")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n      <input ty"+[82]+"\" nocache/>\n    ")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[1],"\n      <input ty"+[82]+"\" nocache/>\n    ")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[1],"\n      <input ty"+[82]+"\" nocache/>\n    ")
etc/modules/RXML.pmod/PXml.pike: finish("<blockquote><br "+[488]+"\n  </blockquote>")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<blockquote><br "+[488]+"\n  </blockquote>")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"<blockquote><br "+[488]+"\n  </blockquote>"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/PXml.pike: finish("<contents/>")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<contents/>")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[3],"<contents/>")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[3],"<contents/>")
etc/modules/RXML.pmod/PXml.pike: finish("\n    <cset prepa"+[51]+"ents/></cset>\n  ")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n    <cset prepa"+[51]+"ents/></cset>\n  ")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[1],"\n    <cset prepa"+[51]+"ents/></cset>\n  ")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[1],"\n    <cset prepa"+[51]+"ents/></cset>\n  ")
etc/modules/RXML.pmod/PXml.pike: finish("\n  <colorscope b"+[107]+"  </colorscope>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n  <colorscope b"+[107]+"  </colorscope>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n  <colorscope b"+[107]+"  </colorscope>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"<blockquote><br "+[488]+"\n  </blockquote>")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"<blockquote><br "+[488]+"\n  </blockquote>")
etc/modules/RXML.pmod/PXml.pike: finish("\n  <st-tabs><ins"+[570]+"uote></st-page>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n  <st-tabs><ins"+[570]+"uote></st-page>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n  <st-tabs><ins"+[570]+"uote></st-page>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/PXml.pike: finish("\n  <contents/>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n  <contents/>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n  <contents/>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n  <contents/>\n")
etc/modules/RXML.pmod/PXml.pike: finish("\n<nooutput>\n  <c"+[355]+"/tr>\n  </table>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n<nooutput>\n  <c"+[355]+"/tr>\n  </table>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n<nooutput>\n  <c"+[355]+"/tr>\n  </table>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[2],"\n  <st-tabs><ins"+[570]+"uote></st-page>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[2],"\n  <st-tabs><ins"+[570]+"uote></st-page>\n")
etc/modules/RXML.pmod/PXml.pike: finish("\n<subtablist wid"+[619]+">\n</subtablist>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n<subtablist wid"+[619]+">\n</subtablist>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n<subtablist wid"+[619]+">\n</subtablist>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/PXml.pike: finish("\n <table ::=\"&us"+[369]+"/tr>\n  </table>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n <table ::=\"&us"+[369]+"/tr>\n  </table>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n <table ::=\"&us"+[369]+"/tr>\n  </table>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n<subtablist wid"+[619]+">\n</subtablist>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n<subtablist wid"+[619]+">\n</subtablist>\n")
etc/modules/RXML.pmod/PXml.pike: finish("\n<cv-split>\n<sub"+[642]+"st>\n</cv-split>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n<cv-split>\n<sub"+[642]+"st>\n</cv-split>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"\n<cv-split>\n<sub"+[642]+"st>\n</cv-split>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/PXml.pike: finish("<contents/>")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<contents/>")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[2],"<contents/>")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),mapping[2],"<contents/>")
etc/modules/RXML.pmod/PXml.pike: finish("<cset quote=\"non"+[28]+"ontents/></cset>")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<cset quote=\"non"+[28]+"ontents/></cset>")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"<cset quote=\"non"+[28]+"ontents/></cset>"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n<cv-split>\n<sub"+[642]+"st>\n</cv-split>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n<cv-split>\n<sub"+[642]+"st>\n</cv-split>\n")
etc/modules/RXML.pmod/PXml.pike: finish("<left-menu title"+[743]+"lit>\n</content>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<left-menu title"+[743]+"lit>\n</content>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),({"<left-menu title"+[743]+"lit>\n</content>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),0)
etc/modules/RXML.pmod/PXml.pike: finish("\n  <insert file="+[449]+">\n  <contents/>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n  <insert file="+[449]+">\n  <contents/>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1862: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n  <insert file="+[449]+">\n  <contents/>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("user_tag_contents+rxml_tag_set,Administration Interface",16)),([]),"\n  <insert file="+[449]+">\n  <contents/>\n")
etc/modules/RXML.pmod/PXml.pike: finish("\n<html><head>\n<t"+[2566]+"</body>\n</html>\n")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("\n<html><head>\n<t"+[2566]+"</body>\n</html>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):1547: _exec_array(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("rxml_tag_set,Administration Interface",2)),({"\n<html><head>\n<t"+[2566]+"</body>\n</html>\n"}),0)
etc/modules/RXML.pmod/module.pmod (version 1.87):1976: _eval(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("rxml_tag_set,Administration Interface",2)),mapping[1],"<left-menu title"+[743]+"lit>\n</content>\n")
etc/modules/RXML.pmod/module.pmod (version 1.87):217: _handle_tag(RXML.PXml(RXML.Context,RXML.t_html,RXML.TagSet("rxml_tag_set,Administration Interface",2)),mapping[1],"<left-menu title"+[743]+"lit>\n</content>\n")
etc/modules/RXML.pmod/PXml.pike: finish("<use file='/stan"+[798]+"content>\n</tmpl>")
etc/modules/RXML.pmod/PXml.pike (version 1.45):265: finish("<use file='/stan"+[798]+"content>\n</tmpl>")
etc/modules/RXML.pmod/module.pmod (version 1.87):2268: write_end("<use file='/stan"+[798]+"content>\n</tmpl>")
base_server/rxml.pike (version 1.187):389: do_parse("<use file='/stan"+[798]+"content>\n</tmpl>",RequestID(),0,mapping[14])
base_server/rxml.pike (version 1.187):434: parse_rxml("<use file='/stan"+[798]+"content>\n</tmpl>",RequestID(),0,mapping[14])
base_server/http.pike (version 1.40):114: http_rxml_answer("<use file='/stan"+[798]+"content>\n</tmpl>",RequestID(),0,0)
modules/configuration/config_filesystem.pike (version 1.34):208: find_file("standard/actions/index.html",RequestID())
base_server/configuration.pike (version 1.303):1338: low_get_file(RequestID(),0)
base_server/configuration.pike (version 1.303):1528: get_file(RequestID(),0,0)
base_server/configuration.pike (version 1.303):1507: handle_request(RequestID())
protocols/http.pike (version 1.228):1840: handle_request()
base_server/roxen.pike (version 1.480):491: unthreaded_handle(protocols/http.pike.handle_request)
protocols/http.pike (version 1.228):1968: got_data(0,"POST /standard/a"+[579]+"Ok+.x=0&+Ok+.y=0")
/usr/local/pike/7.0.38/lib/modules/Stdio.pmod/module.pmod (version 1.79):308: __stdio_read_callback()

Request data:
POST /standard/actions/index.html HTTP/1.1
Accept: */*
Referer: http://207.224.221.131:19193/standard/actions/?action=resolv.pike&class=maintenance
Accept-Language: en-us
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)
Host: 207.224.221.131:19193
Content-Length: 168
Connection: Keep-Alive
Authorization: ################ (censored)

magic_roxen_automatic_charset_variable=%C3%A5%C3%A4%C3%B6&class=maintenance&action=resolv.pike&path=http%3A%2F%2F*%3A80%2Ftestexit.php&user=&password=&+Ok+.x=0&+Ok+.y=0

 [2000-08-31 11:36 UTC] sniper@php.net
Have you tried using more recent version of php4?
Like php4.0.2 ?

--Jani
 [2000-08-31 23:51 UTC] pete at byways dot org
Still a problem using PHP 4.0.2 compiled as a Roxen module with Roxen 2.0.74 and Pike 7.0.80.
 [2000-12-18 11:23 UTC] sniper@php.net
Does this happen with latest snapshot from http://snaps.php.net/ ??

--Jani
 [2001-01-30 03:41 UTC] sniper@php.net
No feedback, considered fixed.

--Jani
 
PHP Copyright © 2001-2025 The PHP Group
All rights reserved.
Last updated: Tue Jul 01 02:01:36 2025 UTC