cvs: php4 /ext/mysql php_mysql.c php_mysql.h
| From: | Georg Richter | Date: | Tue, 16 Jul 2002 13:53:54 +0000 |
| Subject: | cvs: php4 /ext/mysql php_mysql.c php_mysql.h | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-12850@lists.php.net to get a copy of this message | ||
georg Tue Jul 16 09:53:54 2002 EDT
Modified files:
/php4/ext/mysql php_mysql.c php_mysql.h
Log:
Added support for php.ini parameter "mysql.connect_timeout"
Index: php4/ext/mysql/php_mysql.c
diff -u php4/ext/mysql/php_mysql.c:1.143 php4/ext/mysql/php_mysql.c:1.144
--- php4/ext/mysql/php_mysql.c:1.143 Mon Jul 15 07:14:18 2002
+++ php4/ext/mysql/php_mysql.c Tue Jul 16 09:53:54 2002
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_mysql.c,v 1.143 2002/07/15 11:14:18 hyanantha Exp $ */
+/* $Id: php_mysql.c,v 1.144 2002/07/16 13:53:54 georg Exp $ */
/* TODO:
*
@@ -334,6 +334,7 @@
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)
+ STD_PHP_INI_ENTRY_EX("mysql.connect_timeout", "0", PHP_INI_SYSTEM, OnUpdateInt, connect_timeout,
zend_mysql_globals, mysql_globals, display_link_numbers)
PHP_INI_END()
/* }}} */
@@ -348,6 +349,7 @@
mysql_globals->default_password = NULL;
mysql_globals->connect_errno = 0;
mysql_globals->connect_error = NULL;
+ mysql_globals->connect_timeout = 0;
}
/* }}} */
@@ -472,7 +474,9 @@
void (*handler) (int);
zval **z_host=NULL, **z_user=NULL, **z_passwd=NULL, **z_new_link=NULL, **z_client_flags=NULL;
zend_bool free_host=0, new_link=0;
+ long connect_timeout;
+ connect_timeout = MySG(connect_timeout);
socket = MySG(default_socket);
if (PG(sql_safe_mode)) {
@@ -625,6 +629,10 @@
mysql->active_result_id = 0;
#if MYSQL_VERSION_ID > 32199 /* this lets us set the port number */
mysql_init(&mysql->conn);
+
+ if (connect_timeout != -1)
+ mysql_options(&mysql->conn, MYSQL_OPT_CONNECT_TIMEOUT, (const char
*)&connect_timeout);
+
if (mysql_real_connect(&mysql->conn, host, user, passwd, NULL, port, socket,
client_flags)==NULL) {
#else
if (mysql_connect(&mysql->conn, host, user, passwd)==NULL) {
@@ -718,6 +726,10 @@
mysql->active_result_id = 0;
#if MYSQL_VERSION_ID > 32199 /* this lets us set the port number */
mysql_init(&mysql->conn);
+
+ if (connect_timeout != -1)
+ mysql_options(&mysql->conn, MYSQL_OPT_CONNECT_TIMEOUT, (const char
*)&connect_timeout);
+
if (mysql_real_connect(&mysql->conn, host, user, passwd, NULL, port, socket,
client_flags)==NULL) {
#else
if (mysql_connect(&mysql->conn, host, user, passwd)==NULL) {
Index: php4/ext/mysql/php_mysql.h
diff -u php4/ext/mysql/php_mysql.h:1.30 php4/ext/mysql/php_mysql.h:1.31
--- php4/ext/mysql/php_mysql.h:1.30 Fri Mar 29 07:47:02 2002
+++ php4/ext/mysql/php_mysql.h Tue Jul 16 09:53:54 2002
@@ -17,7 +17,7 @@
*/
-/* $Id: php_mysql.h,v 1.30 2002/03/29 12:47:02 jan Exp $ */
+/* $Id: php_mysql.h,v 1.31 2002/07/16 13:53:54 georg Exp $ */
#ifndef PHP_MYSQL_H
#define PHP_MYSQL_H
@@ -102,6 +102,7 @@
char *default_socket;
char *connect_error;
long connect_errno;
+ long connect_timeout;
ZEND_END_MODULE_GLOBALS(mysql)
#ifdef ZTS