summaryrefslogtreecommitdiff
path: root/main/php_ini.h
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>1999-04-09 19:09:29 +0000
committerZeev Suraski <zeev@php.net>1999-04-09 19:09:29 +0000
commit3e584505132e6cb161bfdd1d86d75609ebee7564 (patch)
treefcee61763fa7c575bf84ba31525c9f2868b02de2 /main/php_ini.h
parent5cb576d81a53da011b76b0b0e376dc7dafa1a529 (diff)
downloadphp-git-3e584505132e6cb161bfdd1d86d75609ebee7564.tar.gz
* A lot of work on php_ini stuff
* A lot of work on getting rid from php3_ini
Diffstat (limited to 'main/php_ini.h')
-rw-r--r--main/php_ini.h35
1 files changed, 25 insertions, 10 deletions
diff --git a/main/php_ini.h b/main/php_ini.h
index d4cf1eada2..b5afb69004 100644
--- a/main/php_ini.h
+++ b/main/php_ini.h
@@ -10,12 +10,15 @@
typedef struct _php_ini_entry php_ini_entry;
+#define PHP_INI_MH(name) int name(php_ini_entry *entry, char *new_value, uint new_value_length, void *mh_arg)
+
struct _php_ini_entry {
int module_number;
int modifyable;
char *name;
uint name_length;
- int (*on_modify)(php_ini_entry *entry, char *new_value, uint new_value_length);
+ PHP_INI_MH((*on_modify));
+ void *mh_arg;
char *value;
uint value_length;
@@ -33,22 +36,28 @@ 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);
+int php_restore_ini_entry(char *name, uint name_length);
-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);
+long php_ini_long(char *name, uint name_length, int orig);
+double php_ini_double(char *name, uint name_length, int orig);
+char *php_ini_string(char *name, uint name_length, int orig);
#define PHP_INI_BEGIN() static php_ini_entry ini_entries[] = {
-#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 },
+#define PHP_INI_ENTRY(name, default_value, modifyable, on_modify, ptr) \
+ { 0, modifyable, name, sizeof(name), on_modify, ptr, default_value, sizeof(default_value)-1, NULL, 0, 0 },
#define PHP_INI_END() \
- { 0, 0, NULL, 0, NULL, NULL, 0, NULL, 0, 0 } };
+ { 0, 0, NULL, 0, NULL, NULL, NULL, 0, NULL, 0, 0 } };
+
+#define INI_INT(name) php_ini_long((name), sizeof(name), 0)
+#define INI_FLT(name) php_ini_double((name), sizeof(name), 0)
+#define INI_STR(name) php_ini_string((name), sizeof(name), 0)
+
-#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 INI_ORIG_INT(name) php_ini_long((name), sizeof(name), 1)
+#define INI_ORIG_FLT(name) php_ini_double((name), sizeof(name), 1)
+#define INI_ORIG_STR(name) php_ini_string((name), sizeof(name), 1)
#define REGISTER_INI_ENTRIES() php_register_ini_entries(ini_entries, module_number)
@@ -56,4 +65,10 @@ char *php_ini_string(char *name, uint name_length);
pval *cfg_get_entry(char *name, uint name_length);
+
+/* Standard message handlers */
+PHP_INI_MH(OnUpdateInt);
+PHP_INI_MH(OnUpdateReal);
+PHP_INI_MH(OnUpdateString);
+
#endif /* _PHP_INI_H */