}
-int php3_mshutdown_browscap(void)
+int php3_mshutdown_browscap(SHUTDOWN_FUNC_ARGS)
{
TLS_VARS;
GLOBAL(initialized) &= ~INIT_ENVIRONMENT; /* does not require any special shutdown */
- zend_ini_rshutdown();
+ php_ini_rshutdown();
shutdown_scanner(CLS_C);
zend_startup(&zuf, &zuv, NULL);
- zend_ini_mstartup();
+ php_ini_mstartup();
#if HAVE_SETLOCALE
setlocale(LC_CTYPE, "");
CLS_FETCH();
ELS_FETCH();
- zend_ini_mshutdown();
-
#if !USE_SAPI
/* close down the ini config */
php3_config_ini_shutdown(_INLINE_TLS_VOID);
#endif
zend_shutdown();
+ php_ini_mshutdown();
shutdown_memory_manager(0, 1);
}
/*
* hash_apply functions
*/
-static int zend_remove_ini_entries(zend_ini_entry *ini_entry, int *module_number)
+static int php_remove_ini_entries(php_ini_entry *ini_entry, int *module_number)
{
if (ini_entry->module_number == *module_number) {
return 1;
}
-static int zend_restore_ini_entry(zend_ini_entry *ini_entry)
+static int php_restore_ini_entry(php_ini_entry *ini_entry)
{
if (ini_entry->modified) {
efree(ini_entry->value);
/*
* Startup / shutdown
*/
-int zend_ini_mstartup()
+int php_ini_mstartup()
{
if (_php3_hash_init(&known_directives, 100, NULL, NULL, 1)==FAILURE) {
return FAILURE;
}
-int zend_ini_mshutdown()
+int php_ini_mshutdown()
{
_php3_hash_destroy(&known_directives);
return SUCCESS;
}
-int zend_ini_rshutdown()
+int php_ini_rshutdown()
{
- _php3_hash_apply(&known_directives, (int (*)(void *)) zend_restore_ini_entry);
+ _php3_hash_apply(&known_directives, (int (*)(void *)) php_restore_ini_entry);
return SUCCESS;
}
* Registration / unregistration
*/
-int zend_register_ini_entries(zend_ini_entry *ini_entry, int module_number)
+int php_register_ini_entries(php_ini_entry *ini_entry, int module_number)
{
- zend_ini_entry *p = ini_entry;
- zend_ini_entry *hashed_ini_entry;
+ php_ini_entry *p = ini_entry;
+ php_ini_entry *hashed_ini_entry;
pval *default_value;
while (p->name) {
p->module_number = module_number;
- if (_php3_hash_add(&known_directives, p->name, p->name_length, p, sizeof(zend_ini_entry), (void **) &hashed_ini_entry)==FAILURE) {
- zend_unregister_ini_entries(module_number);
+ if (_php3_hash_add(&known_directives, p->name, p->name_length, p, sizeof(php_ini_entry), (void **) &hashed_ini_entry)==FAILURE) {
+ php_unregister_ini_entries(module_number);
return FAILURE;
}
if ((default_value=cfg_get_entry(p->name, p->name_length))) {
}
-void zend_unregister_ini_entries(int module_number)
+void php_unregister_ini_entries(int module_number)
{
- _php3_hash_apply_with_argument(&known_directives, (int (*)(void *, void *)) zend_remove_ini_entries, (void *) &module_number);
+ _php3_hash_apply_with_argument(&known_directives, (int (*)(void *, void *)) php_remove_ini_entries, (void *) &module_number);
}
-int zend_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type)
+int php_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type)
{
- zend_ini_entry *ini_entry;
+ php_ini_entry *ini_entry;
if (_php3_hash_find(&known_directives, name, name_length, (void **) &ini_entry)==FAILURE) {
return FAILURE;
* Data retrieval
*/
-long zend_ini_long(char *name, uint name_length)
+long php_ini_long(char *name, uint name_length)
{
- zend_ini_entry *ini_entry;
+ php_ini_entry *ini_entry;
if (_php3_hash_find(&known_directives, name, name_length, (void **) &ini_entry)==SUCCESS) {
return (long) atoi(ini_entry->value);
}
-double zend_ini_double(char *name, uint name_length)
+double php_ini_double(char *name, uint name_length)
{
- zend_ini_entry *ini_entry;
+ php_ini_entry *ini_entry;
if (_php3_hash_find(&known_directives, name, name_length, (void **) &ini_entry)==SUCCESS) {
return (double) strtod(ini_entry->value, NULL);
}
-char *zend_ini_string(char *name, uint name_length)
+char *php_ini_string(char *name, uint name_length)
{
- zend_ini_entry *ini_entry;
+ php_ini_entry *ini_entry;
if (_php3_hash_find(&known_directives, name, name_length, (void **) &ini_entry)==SUCCESS) {
return ini_entry->value;
-#ifndef _ZEND_INI_H
-#define _ZEND_INI_H
+#ifndef _PHP_INI_H
+#define _PHP_INI_H
-#define ZEND_INI_USER (1<<0)
-#define ZEND_INI_PERDIR (1<<1)
-#define ZEND_INI_SYSTEM (1<<2)
+#define PHP_INI_USER (1<<0)
+#define PHP_INI_PERDIR (1<<1)
+#define PHP_INI_SYSTEM (1<<2)
-#define ZEND_INI_ALL (ZEND_INI_USER|ZEND_INI_PERDIR|ZEND_INI_SYSTEM)
+#define PHP_INI_ALL (PHP_INI_USER|PHP_INI_PERDIR|PHP_INI_SYSTEM)
-typedef struct {
+typedef struct _php_ini_entry php_ini_entry;
+
+struct _php_ini_entry {
int module_number;
int modifyable;
char *name;
uint name_length;
+ int (*on_modify)(php_ini_entry *entry, pval *new_value);
char *value;
uint value_length;
char *orig_value;
uint orig_value_length;
int modified;
-} zend_ini_entry;
+};
+
+
+int php_ini_mstartup();
+int php_ini_mshutdown();
+int php_ini_rshutdown();
+
+int php_register_ini_entries(php_ini_entry *ini_entry, int module_number);
+void php_unregister_ini_entries(int module_number);
+int php_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type);
+
+long php_ini_long(char *name, uint name_length);
+double php_ini_double(char *name, uint name_length);
+char *php_ini_string(char *name, uint name_length);
+#define PHP_INI_BEGIN() static php_ini_entry ini_entries[] = {
-int zend_ini_mstartup();
-int zend_ini_mshutdown();
-int zend_ini_rshutdown();
+#define PHP_INI_ENTRY(name, default_value, modifyable, on_modify) \
+ { 0, modifyable, name, sizeof(name), on_modify, default_value, sizeof(default_value)-1, NULL, 0, 0 },
-int zend_register_ini_entries(zend_ini_entry *ini_entry, int module_number);
-void zend_unregister_ini_entries(int module_number);
-int zend_alter_ini_entry(char *name, uint name_length, char *new_value, uint new_value_length, int modify_type);
+#define PHP_INI_END() \
+ { 0, 0, NULL, 0, NULL, NULL, 0, NULL, 0, 0 } };
-long zend_ini_long(char *name, uint name_length);
-double zend_ini_double(char *name, uint name_length);
-char *zend_ini_string(char *name, uint name_length);
+#define INI_INT(name) php_ini_long((name), sizeof(name))
+#define INI_FLT(name) php_ini_double((name), sizeof(name))
+#define INI_STR(name) php_ini_string((name), sizeof(name))
-#define ZEND_INI_BEGIN() static zend_ini_entry ini_entries[] = {
-#define ZEND_INI_ENTRY(name, default_value, modifyable) { 0, modifyable, name, sizeof(name), default_value, sizeof(default_value)-1, NULL, 0, 0 },
-#define ZEND_INI_END() { 0, 0, NULL, 0, NULL, 0, NULL, 0, 0 } };
-#define INI_INT(name) zend_ini_long((name), sizeof(name))
-#define INI_FLT(name) zend_ini_double((name), sizeof(name))
-#define INI_STR(name) zend_ini_string((name), sizeof(name))
+#define REGISTER_INI_ENTRIES() php_register_ini_entries(ini_entries, module_number)
+#define UNREGISTER_INI_ENTRIES() php_unregister_ini_entries(module_number)
pval *cfg_get_entry(char *name, uint name_length);
-#endif /* _ZEND_INI_H */
+#endif /* _PHP_INI_H */