cvs: /php4 php_ini.c php_ini.h /php4/ext/mssql php_mssql.c /php4/ext/mysql php_mysql.c /php4/ext/pgsql pgsql.c php_pgsql.h
| From: | Zeev Suraski | Date: | Sat, 05 Feb 2000 17:26:36 +0000 |
| Subject: | cvs: /php4 php_ini.c php_ini.h /php4/ext/mssql php_mssql.c /php4/ext/mysql php_mysql.c /php4/ext/pgsql pgsql.c php_pgsql.h | ||
| Groups: | php.version4 | ||
| Request: | Send a blank email to php-version4+get-9853@lists.php.net to get a copy of this message | ||
zeev Sat Feb 5 09:26:36 2000 EDT
Modified files:
/php4 php_ini.c php_ini.h
/php4/ext/mssql php_mssql.c
/php4/ext/mysql php_mysql.c
/php4/ext/pgsql pgsql.c php_pgsql.h
Log:
Fix PostgreSQL startup routine in thread-safe mode
Index: php4/php_ini.c
diff -u php4/php_ini.c:1.29 php4/php_ini.c:1.30
--- php4/php_ini.c:1.29 Fri Dec 31 17:31:27 1999
+++ php4/php_ini.c Sat Feb 5 09:26:34 2000
@@ -331,6 +331,28 @@
}
+PHP_INI_DISP(display_link_numbers)
+{
+ char *value;
+
+ if (type==PHP_INI_DISPLAY_ORIG && ini_entry->modified) {
+ value = ini_entry->orig_value;
+ } else if (ini_entry->value) {
+ value = ini_entry->value;
+ } else {
+ value = NULL;
+ }
+
+ if (value) {
+ if (atoi(value)==-1) {
+ PUTS("Unlimited");
+ } else {
+ php_printf("%s", value);
+ }
+ }
+}
+
+
static int php_ini_displayer(php_ini_entry *ini_entry, int module_number)
{
if (ini_entry->module_number != module_number) {
Index: php4/php_ini.h
diff -u php4/php_ini.h:1.18 php4/php_ini.h:1.19
--- php4/php_ini.h:1.18 Fri Dec 31 17:31:27 1999
+++ php4/php_ini.h Sat Feb 5 09:26:34 2000
@@ -70,6 +70,7 @@
PHPAPI int php_ini_register_displayer(char *name, uint name_length, void (*displayer)(php_ini_entry
*ini_entry, int type));
PHPAPI PHP_INI_DISP(php_ini_boolean_displayer_cb);
PHPAPI PHP_INI_DISP(php_ini_color_displayer_cb);
+PHPAPI PHP_INI_DISP(display_link_numbers);
#define PHP_INI_BEGIN() static php_ini_entry ini_entries[] = {
#define PHP_INI_END() { 0, 0, NULL, 0, NULL, NULL, NULL, NULL, NULL, 0, NULL, 0, 0, NULL } };
Index: php4/ext/mssql/php_mssql.c
diff -u php4/ext/mssql/php_mssql.c:1.7 php4/ext/mssql/php_mssql.c:1.8
--- php4/ext/mssql/php_mssql.c:1.7 Mon Jan 17 14:41:59 2000
+++ php4/ext/mssql/php_mssql.c Sat Feb 5 09:26:35 2000
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_mssql.c,v 1.7 2000/01/17 22:41:59 zeev Exp $ */
+/* $Id: php_mssql.c,v 1.8 2000/02/05 17:26:35 zeev Exp $ */
#if COMPILE_DL
#include "dl/phpdl.h"
@@ -83,26 +83,6 @@
#define CHECK_LINK(link) { if (link==-1) { php_error(E_WARNING,"MS SQL: A link to the server
could not be established"); RETURN_FALSE; } }
-static PHP_INI_DISP(display_link_numbers)
-{
- char *value;
-
- if (type==PHP_INI_DISPLAY_ORIG && ini_entry->modified) {
- value = ini_entry->orig_value;
- } else if (ini_entry->value) {
- value = ini_entry->value;
- } else {
- value = NULL;
- }
-
- if (value) {
- if (atoi(value)==-1) {
- PUTS("Unlimited");
- } else {
- php_printf("%s", value);
- }
- }
-}
PHP_INI_BEGIN()
STD_PHP_INI_BOOLEAN("mssql.allow_persistent", "1", PHP_INI_SYSTEM, OnUpdateBool, allow_persistent, php_mssql_globals, mssql_globals)
Index: php4/ext/mysql/php_mysql.c
diff -u php4/ext/mysql/php_mysql.c:1.25 php4/ext/mysql/php_mysql.c:1.26
--- php4/ext/mysql/php_mysql.c:1.25 Sat Feb 5 07:44:17 2000
+++ php4/ext/mysql/php_mysql.c Sat Feb 5 09:26:35 2000
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_mysql.c,v 1.25 2000/02/05 15:44:17 zeev Exp $ */
+/* $Id: php_mysql.c,v 1.26 2000/02/05 17:26:35 zeev Exp $ */
/* TODO:
@@ -252,28 +252,6 @@
MySG(default_port) = atoi(new_value);
}
return SUCCESS;
-}
-
-
-static PHP_INI_DISP(display_link_numbers)
-{
- char *value;
-
- if (type==PHP_INI_DISPLAY_ORIG && ini_entry->modified) {
- value = ini_entry->orig_value;
- } else if (ini_entry->value) {
- value = ini_entry->value;
- } else {
- value = NULL;
- }
-
- if (value) {
- if (atoi(value)==-1) {
- PUTS("Unlimited");
- } else {
- php_printf("%s", value);
- }
- }
}
Index: php4/ext/pgsql/pgsql.c
diff -u php4/ext/pgsql/pgsql.c:1.38 php4/ext/pgsql/pgsql.c:1.39
--- php4/ext/pgsql/pgsql.c:1.38 Sat Feb 5 08:12:23 2000
+++ php4/ext/pgsql/pgsql.c Sat Feb 5 09:26:35 2000
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql.c,v 1.38 2000/02/05 16:12:23 zeev Exp $ */
+/* $Id: pgsql.c,v 1.39 2000/02/05 17:26:35 zeev Exp $ */
#include <stdlib.h>
@@ -26,6 +26,7 @@
#endif
#include "php.h"
+#include "php_ini.h"
#include "ext/standard/php_standard.h"
#include "php_pgsql.h"
#include "php_globals.h"
@@ -75,7 +76,7 @@
};
zend_module_entry pgsql_module_entry = {
- "PostgreSQL", pgsql_functions, PHP_MINIT(pgsql), NULL, PHP_RINIT(pgsql), NULL, NULL,
STANDARD_MODULE_PROPERTIES
+ "PostgreSQL", pgsql_functions, PHP_MINIT(pgsql), PHP_MSHUTDOWN(pgsql), PHP_RINIT(pgsql),
NULL, NULL, STANDARD_MODULE_PROPERTIES
};
#if COMPILE_DL
@@ -121,18 +122,16 @@
efree(pg_result);
}
+PHP_INI_BEGIN()
+ STD_PHP_INI_BOOLEAN("pgsql.allow_persistent", "1", PHP_INI_SYSTEM, OnUpdateInt, allow_persistent, php_pgsql_globals, pgsql_globals)
+ STD_PHP_INI_ENTRY_EX("pgsql.max_persistent", "-1", PHP_INI_SYSTEM, OnUpdateInt, max_persistent, php_pgsql_globals, pgsql_globals, display_link_numbers)
+ STD_PHP_INI_ENTRY_EX("pgsql.max_links", "-1", PHP_INI_SYSTEM, OnUpdateInt, max_links, php_pgsql_globals, pgsql_globals, display_link_numbers)
+PHP_INI_END()
+
+
static void php_pgsql_init_globals(PGLS_D)
{
PGG(num_persistent) = 0;
- if (cfg_get_long("pgsql.allow_persistent",&PGG(allow_persistent))==FAILURE) {
- PGG(allow_persistent)=1;
- }
- if (cfg_get_long("pgsql.max_persistent",&PGG(max_persistent))==FAILURE) {
- PGG(max_persistent)=-1;
- }
- if (cfg_get_long("pgsql.max_links",&PGG(max_links))==FAILURE) {
- PGG(max_links)=-1;
- }
}
PHP_MINIT_FUNCTION(pgsql)
@@ -142,6 +141,8 @@
#else
php_pgsql_init_globals(PGLS_C);
#endif
+
+ REGISTER_INI_ENTRIES();
le_link = register_list_destructors(_close_pgsql_link,NULL);
le_plink = register_list_destructors(NULL,_close_pgsql_plink);
@@ -154,6 +155,13 @@
REGISTER_LONG_CONSTANT("PGSQL_NUM", PGSQL_NUM, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("PGSQL_BOTH", PGSQL_BOTH, CONST_CS | CONST_PERSISTENT);
+ return SUCCESS;
+}
+
+
+PHP_MSHUTDOWN_FUNCTION(pgsql)
+{
+ UNREGISTER_INI_ENTRIES();
return SUCCESS;
}
Index: php4/ext/pgsql/php_pgsql.h
diff -u php4/ext/pgsql/php_pgsql.h:1.5 php4/ext/pgsql/php_pgsql.h:1.6
--- php4/ext/pgsql/php_pgsql.h:1.5 Mon Dec 20 21:22:43 1999
+++ php4/ext/pgsql/php_pgsql.h Sat Feb 5 09:26:35 2000
@@ -27,7 +27,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_pgsql.h,v 1.5 1999/12/21 05:22:43 zeev Exp $ */
+/* $Id: php_pgsql.h,v 1.6 2000/02/05 17:26:35 zeev Exp $ */
#ifndef _PHP_PGSQL_H
#define _PHP_PGSQL_H
@@ -59,6 +59,7 @@
#endif
PHP_MINIT_FUNCTION(pgsql);
+PHP_MSHUTDOWN_FUNCTION(pgsql);
PHP_RINIT_FUNCTION(pgsql);
PHP_FUNCTION(pg_connect);
PHP_FUNCTION(pg_pconnect);