summaryrefslogtreecommitdiff
path: root/Zend/zend_ini.c
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2006-12-25 23:55:59 +0000
committerIlia Alshanetsky <iliaa@php.net>2006-12-25 23:55:59 +0000
commitb85f1345a65fcfb82f8d033fa8ef9f9de66200f4 (patch)
tree4a519430a235ea87fb9fcd71766c6dcfbde9d2ae /Zend/zend_ini.c
parente2c110bebf1f1a4089a37060714282fabf35d958 (diff)
downloadphp-git-b85f1345a65fcfb82f8d033fa8ef9f9de66200f4.tar.gz
Ensure that OnUpdateLongGEZero is greater or equal to 0.
Added a update wrapper for ensuring >0 values
Diffstat (limited to 'Zend/zend_ini.c')
-rw-r--r--Zend/zend_ini.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/Zend/zend_ini.c b/Zend/zend_ini.c
index c4951acee9..257c0152a2 100644
--- a/Zend/zend_ini.c
+++ b/Zend/zend_ini.c
@@ -530,6 +530,28 @@ ZEND_API ZEND_INI_MH(OnUpdateLong)
return SUCCESS;
}
+ZEND_API ZEND_INI_MH(OnUpdateLongGEZero)
+{
+ long *p, tmp;
+#ifndef ZTS
+ char *base = (char *) mh_arg2;
+#else
+ char *base;
+
+ base = (char *) ts_resource(*((int *) mh_arg2));
+#endif
+
+ tmp = zend_atoi(new_value, new_value_length);
+ if (tmp < 0) {
+ return FAILURE;
+ }
+
+ p = (long *) (base+(size_t) mh_arg1);
+ *p = tmp;
+
+ return SUCCESS;
+}
+
ZEND_API ZEND_INI_MH(OnUpdateReal)
{