cvs: /php4/sapi/aolserver aolserver.c

From: Date: Fri, 26 Nov 1999 19:01:57 +0000
Subject: cvs: /php4/sapi/aolserver aolserver.c
Groups: php.version4 
Request: Send a blank email to php-version4+get-6943@lists.php.net to get a copy of this message
sas Fri Nov 26 14:01:57 1999 EDT Modified files: /php4/sapi/aolserver aolserver.c Log: Avoid fd leak which appears when using ZEND_HANDLE_FILENAME Index: php4/sapi/aolserver/aolserver.c diff -u php4/sapi/aolserver/aolserver.c:1.16 php4/sapi/aolserver/aolserver.c:1.17 --- php4/sapi/aolserver/aolserver.c:1.16 Fri Nov 26 12:07:41 1999 +++ php4/sapi/aolserver/aolserver.c Fri Nov 26 14:01:26 1999 @@ -22,7 +22,7 @@ * - CGI/1.1 conformance */ -/* $Id: aolserver.c,v 1.16 1999/11/26 17:07:41 sas Exp $ */ +/* $Id: aolserver.c,v 1.17 1999/11/26 19:01:26 sas Exp $ */ /* conflict between PHP and AOLserver headers */ #define Debug php_Debug @@ -196,7 +196,7 @@ int uptime = Ns_InfoUptime(); PUTS("<table border=5 width=600>\n"); - php_info_print_table_row(2, "SAPI module version", "$Id: aolserver.c,v 1.16 1999/11/26 17:07:41 sas Exp $"); + php_info_print_table_row(2, "SAPI module version", "$Id: aolserver.c,v 1.17 1999/11/26 19:01:26 sas Exp $"); php_info_print_table_row(2, "Build date", Ns_InfoBuildDate()); php_info_print_table_row(2, "Config file path", Ns_InfoConfigFile()); php_info_print_table_row(2, "Error Log path", Ns_InfoErrorLog()); @@ -383,19 +383,27 @@ php_ns_module_main(NSLS_D SLS_DC) { zend_file_handle file_handle; + int fd; CLS_FETCH(); ELS_FETCH(); PLS_FETCH(); - file_handle.type = ZEND_HANDLE_FILENAME; + file_handle.type = ZEND_HANDLE_FD; file_handle.filename = SG(request_info).path_translated; + file_handle.handle.fd = fd = open(SG(request_info).path_translated, O_RDONLY); + if (fd == -1) { + return NS_ERROR; + } - if(php_request_startup(CLS_C ELS_CC PLS_CC SLS_CC) == FAILURE) { + if (php_request_startup(CLS_C ELS_CC PLS_CC SLS_CC) == FAILURE) { + close(fd); return NS_ERROR; } php_ns_hash_environment(NSLS_C CLS_CC ELS_CC PLS_CC SLS_CC); php_execute_script(&file_handle CLS_CC ELS_CC PLS_CC); php_request_shutdown(NULL); + + close(fd); return NS_OK; }

« previous php.version4 (#6943) next »