cvs: php4 / php.ini-dist php.ini-optimized /ext/mysql php_mysql.c php_mysql.h /main main.c

From: Date: Fri, 16 Jun 2000 01:53:35 +0000
Subject: cvs: php4 / php.ini-dist php.ini-optimized /ext/mysql php_mysql.c php_mysql.h /main main.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-304@lists.php.net to get a copy of this message
zeev Thu Jun 15 18:53:35 2000 EDT Modified files: /php4 php.ini-dist php.ini-optimized /php4/ext/mysql php_mysql.c php_mysql.h /php4/main main.c Log: Move timeout code to Zend, allow Win32 timeouts @- Implemented max_execution_time under Win32 (Zeev) Index: php4/php.ini-dist diff -u php4/php.ini-dist:1.36 php4/php.ini-dist:1.37 --- php4/php.ini-dist:1.36 Mon May 29 10:22:35 2000 +++ php4/php.ini-dist Thu Jun 15 18:53:35 2000 @@ -300,6 +300,8 @@ ; mysql_connect() will use the $MYSQL_TCP_PORT, or the mysql-tcp ; entry in /etc/services, or the compile-time defined MYSQL_PORT ; (in that order). Win32 will only look at MYSQL_PORT. +mysql.default_socket = ; default socket name for local MySQL connects. If empty, uses the built-in + ; MySQL defaults mysql.default_host = ; default host for mysql_connect() (doesn't apply in safe mode) mysql.default_user = ; default user for mysql_connect() (doesn't apply in safe mode) mysql.default_password = ; default password for mysql_connect() (doesn't apply in safe mode) Index: php4/php.ini-optimized diff -u php4/php.ini-optimized:1.5 php4/php.ini-optimized:1.6 --- php4/php.ini-optimized:1.5 Mon May 29 10:22:35 2000 +++ php4/php.ini-optimized Thu Jun 15 18:53:35 2000 @@ -288,6 +288,8 @@ ; mysql_connect() will use the $MYSQL_TCP_PORT, or the mysql-tcp ; entry in /etc/services, or the compile-time defined MYSQL_PORT ; (in that order). Win32 will only look at MYSQL_PORT. +mysql.default_socket = ; default socket name for local MySQL connects. If empty, uses the built-in + ; MySQL defaults mysql.default_host = ; default host for mysql_connect() (doesn't apply in safe mode) mysql.default_user = ; default user for mysql_connect() (doesn't apply in safe mode) mysql.default_password = ; default password for mysql_connect() (doesn't apply in safe mode) Index: php4/ext/mysql/php_mysql.c diff -u php4/ext/mysql/php_mysql.c:1.48 php4/ext/mysql/php_mysql.c:1.49 --- php4/ext/mysql/php_mysql.c:1.48 Sun Jun 11 12:23:21 2000 +++ php4/ext/mysql/php_mysql.c Thu Jun 15 18:53:35 2000 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_mysql.c,v 1.48 2000/06/11 19:23:21 zeev Exp $ */ +/* $Id: php_mysql.c,v 1.49 2000/06/16 01:53:35 zeev Exp $ */ /* TODO: @@ -210,7 +210,7 @@ static PHP_INI_MH(OnMySQLPort) { MySLS_FETCH(); - + if (new_value==NULL) { /* default port */ #ifndef PHP_WIN32 struct servent *serv_ptr; @@ -236,11 +236,12 @@ PHP_INI_BEGIN() STD_PHP_INI_BOOLEAN("mysql.allow_persistent", "1", PHP_INI_SYSTEM, OnUpdateInt, allow_persistent, zend_mysql_globals, mysql_globals) STD_PHP_INI_ENTRY_EX("mysql.max_persistent", "-1", PHP_INI_SYSTEM, OnUpdateInt, max_persistent, zend_mysql_globals, mysql_globals, display_link_numbers) - STD_PHP_INI_ENTRY_EX("mysql.max_links", "-1", PHP_INI_SYSTEM, OnUpdateInt, max_links, zend_mysql_globals, mysql_globals, display_link_numbers) - STD_PHP_INI_ENTRY("mysql.default_host", NULL, PHP_INI_ALL, OnUpdateString, default_host, zend_mysql_globals, mysql_globals) - STD_PHP_INI_ENTRY("mysql.default_user", NULL, PHP_INI_ALL, OnUpdateString, default_user, zend_mysql_globals, mysql_globals) - STD_PHP_INI_ENTRY("mysql.default_password", NULL, PHP_INI_ALL, OnUpdateString, default_password, zend_mysql_globals, mysql_globals) - PHP_INI_ENTRY("mysql.default_port", NULL, PHP_INI_ALL, OnMySQLPort) + STD_PHP_INI_ENTRY_EX("mysql.max_links", "-1", PHP_INI_SYSTEM, OnUpdateInt, max_links, zend_mysql_globals, mysql_globals, display_link_numbers) + STD_PHP_INI_ENTRY("mysql.default_host", NULL, PHP_INI_ALL, OnUpdateString, default_host, zend_mysql_globals, mysql_globals) + STD_PHP_INI_ENTRY("mysql.default_user", NULL, PHP_INI_ALL, OnUpdateString, default_user, zend_mysql_globals, mysql_globals) + STD_PHP_INI_ENTRY("mysql.default_password", NULL, PHP_INI_ALL, OnUpdateString, default_password, zend_mysql_globals, mysql_globals) + PHP_INI_ENTRY("mysql.default_port", NULL, PHP_INI_ALL, OnMySQLPort) + STD_PHP_INI_ENTRY("mysql.default_socket", NULL, PHP_INI_ALL, OnUpdateStringUnempty, default_socket, zend_mysql_globals, mysql_globals) PHP_INI_END() @@ -311,13 +312,15 @@ static void php_mysql_do_connect(INTERNAL_FUNCTION_PARAMETERS,int persistent) { - char *user,*passwd,*host,*socket=NULL,*tmp; + char *user,*passwd,*host,*socket,*tmp; char *hashed_details; int hashed_details_length,port = MYSQL_PORT; MYSQL *mysql; void (*handler) (int); MySLS_FETCH(); PLS_FETCH(); + + socket = MySG(default_socket); if (PG(sql_safe_mode)) { if (ZEND_NUM_ARGS()>0) { Index: php4/ext/mysql/php_mysql.h diff -u php4/ext/mysql/php_mysql.h:1.11 php4/ext/mysql/php_mysql.h:1.12 --- php4/ext/mysql/php_mysql.h:1.11 Sat Jun 10 01:47:57 2000 +++ php4/ext/mysql/php_mysql.h Thu Jun 15 18:53:35 2000 @@ -17,7 +17,7 @@ */ -/* $Id: php_mysql.h,v 1.11 2000/06/10 08:47:57 andi Exp $ */ +/* $Id: php_mysql.h,v 1.12 2000/06/16 01:53:35 zeev Exp $ */ #ifndef _PHP_MYSQL_H #define _PHP_MYSQL_H @@ -82,6 +82,7 @@ long allow_persistent; long default_port; char *default_host, *default_user, *default_password; + char *default_socket; ZEND_END_MODULE_GLOBALS(mysql); #ifdef ZTS Index: php4/main/main.c diff -u php4/main/main.c:1.269 php4/main/main.c:1.270 --- php4/main/main.c:1.269 Tue Jun 13 13:59:23 2000 +++ php4/main/main.c Thu Jun 15 18:53:35 2000 @@ -19,7 +19,7 @@ */ -/* $Id: main.c,v 1.269 2000/06/13 20:59:23 andrei Exp $ */ +/* $Id: main.c,v 1.270 2000/06/16 01:53:35 zeev Exp $ */ #include <stdio.h> @@ -96,8 +96,6 @@ static void php_build_argv(char *s, zval *track_vars_array ELS_DC PLS_DC); -static void php_timeout(int dummy); -static void php_set_timeout(long seconds); void *gLock; /*mutex variable */ @@ -441,56 +439,7 @@ } -static long php_timeout_seconds; -#ifdef HAVE_SETITIMER -static void php_timeout(int dummy) -{ - PLS_FETCH(); - - PG(connection_status) |= PHP_CONNECTION_TIMEOUT; - php_error(E_ERROR, "Maximum execution time of %d second%s exceeded", - php_timeout_seconds, php_timeout_seconds == 1 ? "" : "s"); -} -#endif - -/* This one doesn't exists on QNX */ -#ifndef SIGPROF -#define SIGPROF 27 -#endif - -static void php_set_timeout(long seconds) -{ -#ifdef PHP_WIN32 -#else -# ifdef HAVE_SETITIMER - struct itimerval t_r; /* timeout requested */ - - t_r.it_value.tv_sec = seconds; - t_r.it_value.tv_usec = t_r.it_interval.tv_sec = t_r.it_interval.tv_usec = 0; - - php_timeout_seconds = seconds; - setitimer(ITIMER_PROF, &t_r, NULL); - signal(SIGPROF, php_timeout); -# endif -#endif -} - - -static void php_unset_timeout(void) -{ -#ifdef PHP_WIN32 -#else -# ifdef HAVE_SETITIMER - struct itimerval no_timeout; - - no_timeout.it_value.tv_sec = no_timeout.it_value.tv_usec = no_timeout.it_interval.tv_sec = no_timeout.it_interval.tv_usec = 0; - - setitimer(ITIMER_PROF, &no_timeout, NULL); -# endif -#endif -} - /* {{{ proto void set_time_limit(int seconds) Sets the maximum time a script can run */ PHP_FUNCTION(set_time_limit) @@ -518,8 +467,8 @@ should work fine. Is this FIXME a WIN32 problem? Is there no way to do per-thread timers on WIN32? */ - php_unset_timeout(); - php_set_timeout(Z_LVAL_PP(new_timeout)); + zend_unset_timeout(); + zend_set_timeout(Z_LVAL_PP(new_timeout)); } /* }}} */ @@ -654,7 +603,7 @@ virtual_cwd_activate(SG(request_info).path_translated); #endif - php_set_timeout(PG(max_execution_time)); + zend_set_timeout(PG(max_execution_time)); if (PG(expose_php)) { sapi_add_header(SAPI_PHP_VERSION_HEADER, sizeof(SAPI_PHP_VERSION_HEADER)-1, 1); @@ -703,7 +652,7 @@ sapi_deactivate(SLS_C); shutdown_memory_manager(CG(unclean_shutdown), 0); - php_unset_timeout(); + zend_unset_timeout(); global_unlock(); }

« previous php.cvs (#304) next »