ID: 47675 Updated by: [email protected] Reported By: cs at ecn dot purdue dot edu -Status: Open +Status: Feedback Bug Type: Apache2 related Operating System: Solaris 10 PHP Version: 5.2.9 New Comment:
Not enough information was provided for us to be able to handle this bug. Please re-read the instructions at http://bugs.php.net/how-to-report.php If you can provide more information, feel free to add it to this bug and change the status back to "Open". Thank you for your interest in PHP. I run OpenSolaris 2009.06 with Apache 2.2.11 and cannot reproduce this behavior. The old_cwd_fd is closed. ZEND_EXIT calls zend_bailout which jumps back to the end of the try/catch block in php_execute_script where the descriptor is closed. Can you be more specific about the behavior you encountered? Previous Comments: ------------------------------------------------------------------------ [2009-03-16 16:25:21] cs at ecn dot purdue dot edu I am using apache 2.2.11. ------------------------------------------------------------------------ [2009-03-16 16:21:51] [email protected] Apache1 or Apache2 ? ------------------------------------------------------------------------ [2009-03-16 14:07:47] cs at ecn dot purdue dot edu Description: ------------ mod_php contains a potential file descriptor leak on Solaris 10 when script executes "exit()". Reproduce code: --------------- <?php exit(0); ?> The change in behavior is due to the addition of HAVE_BROKEN_GETCWD for Solaris 10. In php_execute_script, a file descriptor is opened to hold the current working directory, but is not closed in the case where php code may not return to this function after executing a script. mod_php isn't aware of the resource that was allocated and not freed. Expected result: ---------------- Normally web server runs for days without resource trouble. In the case where a PHP script does an "exit(0)", the web server will run out of file descriptors and will need restarting. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=47675&edit=1
