[prev in list] [next in list] [prev in thread] [next in thread]
List: pecl-cvs
Subject: [PECL-CVS] com pecl/php/runkit: 5.7 Fixes: =?UTF-8?Q?php=5Frunkit=2Eh=20runkit=5Fsan?= =?UTF-8?Q?dbo
From: Sara Golemon <pollita () php ! net>
Date: 2013-12-22 22:38:32
Message-ID: php-mail-920ee19e17cca7a2923fb76e6c37676070545564 () git ! php ! net
[Download RAW message or body]
Commit: 1fde29c8a6ebdda8166a0f21e17e7291a5b94adc
Author: Sara Golemon <pollita@php.net> Sun, 22 Dec 2013 14:01:22 -0800
Parents: ad9298c0a536f6fa1654e6af3530b09c781f67d3
Branches: master
Link: http://git.php.net/?p=pecl/php/runkit.git;a=commitdiff;h=1fde29c8a6ebdda8166a0f21e17e7291a5b94adc
Log:
5.7 Fixes
zend_is_true() now takes a TSRMLS_CC parameter
sapi_flush() now takes a TSRMLS_CC parameter
Changed paths:
M php_runkit.h
M runkit_sandbox.c
Diff:
diff --git a/php_runkit.h b/php_runkit.h
index 1c1f774..b227a47 100644
--- a/php_runkit.h
+++ b/php_runkit.h
@@ -42,6 +42,12 @@
#define PHP_RUNKIT_IMPORT_CLASSES (PHP_RUNKIT_IMPORT_CLASS_METHODS|PHP_RUNKIT_IMPORT \
_CLASS_CONSTS|PHP_RUNKIT_IMPORT_CLASS_PROPS|PHP_RUNKIT_IMPORT_CLASS_STATIC_PROPS) \
#define PHP_RUNKIT_IMPORT_OVERRIDE 0x1000
+#if ZEND_MODULE_API_NO > 20131217
+#define ZEND_ENGINE_2_7
+#endif
+#if ZEND_MODULE_API_NO > 20131105
+#define ZEND_ENGINE_2_6
+#endif
#if ZEND_MODULE_API_NO > 20121211
#define ZEND_ENGINE_2_5
#endif
diff --git a/runkit_sandbox.c b/runkit_sandbox.c
index b88495f..8d7a316 100644
--- a/runkit_sandbox.c
+++ b/runkit_sandbox.c
@@ -48,6 +48,12 @@ static zend_class_entry *php_runkit_sandbox_class_entry;
#define PHP_RUNKIT_SANDBOX_FETCHBOX(zval_p) \
(php_runkit_sandbox_object*)zend_objects_get_address(zval_p TSRMLS_CC)
+#ifdef ZEND_ENGINE_2_7
+# define ISTRUE_CC TSRMLS_CC
+#else
+# define ISTRUE_CC
+#endif
+
int php_runkit_sandbox_array_deep_copy(zval **value ZEND_HASH_APPLY_ARGS_TSRMLS_DC, \
int num_args, va_list args, zend_hash_key *hash_key) {
HashTable *target_hashtable = va_arg(args, HashTable*);
@@ -257,14 +263,14 @@ inline void \
php_runkit_sandbox_ini_override(php_runkit_sandbox_object *objval, H /* safe_mode \
only goes on */ if (!safe_mode &&
(zend_hash_find(options, "safe_mode", sizeof("safe_mode"), (void**)&tmpzval) == \
SUCCESS) &&
- zend_is_true(*tmpzval)) {
+ zend_is_true(*tmpzval ISTRUE_CC)) {
zend_alter_ini_entry("safe_mode", sizeof("safe_mode"), "1", 1, PHP_INI_SYSTEM, \
PHP_INI_STAGE_ACTIVATE); }
/* safe_mode_gid only goes off */
if (safe_mode_gid &&
(zend_hash_find(options, "safe_mode_gid", sizeof("safe_mode_gid"), \
(void**)&tmpzval) == SUCCESS) &&
- !zend_is_true(*tmpzval)) {
+ !zend_is_true(*tmpzval ISTRUE_CC)) {
zend_alter_ini_entry("safe_mode_gid", sizeof("safe_mode_gid"), "0", 1, \
PHP_INI_SYSTEM, PHP_INI_STAGE_ACTIVATE); }
@@ -327,7 +333,7 @@ child_open_basedir_set:
/* allow_url_fopen goes off only */
if (allow_url_fopen &&
(zend_hash_find(options, "allow_url_fopen", sizeof("allow_url_fopen"), \
(void**)&tmpzval) == SUCCESS) &&
- !zend_is_true(*tmpzval)) {
+ !zend_is_true(*tmpzval ISTRUE_CC)) {
zend_alter_ini_entry("allow_url_fopen", sizeof("allow_url_fopen"), "0", 1, \
PHP_INI_SYSTEM, PHP_INI_STAGE_ACTIVATE); }
@@ -400,7 +406,7 @@ child_open_basedir_set:
/* May only turn off */
if ((zend_hash_find(options, "runkit.internal_override", \
sizeof("runkit.internal_override"), (void**)&tmpzval) == SUCCESS) &&
- !zend_is_true(*tmpzval)) {
+ !zend_is_true(*tmpzval ISTRUE_CC)) {
zend_alter_ini_entry("runkit.internal_override", \
sizeof("runkit.internal_override"), "0", 1, PHP_INI_SYSTEM, PHP_INI_STAGE_ACTIVATE); \
}
@@ -408,7 +414,7 @@ child_open_basedir_set:
/* May only turn off */
if (allow_url_include &&
(zend_hash_find(options, "allow_url_include", sizeof("allow_url_include"), \
(void**)&tmpzval) == SUCCESS) &&
- !zend_is_true(*tmpzval)) {
+ !zend_is_true(*tmpzval ISTRUE_CC)) {
zend_alter_ini_entry("allow_url_include", sizeof("allow_url_include"), "0", 1, \
PHP_INI_SYSTEM, PHP_INI_STAGE_ACTIVATE); }
#endif
@@ -1111,19 +1117,29 @@ static int php_runkit_sandbox_sapi_ub_write(const char *str, \
uint str_length TSR }
/* }}} */
+#ifdef ZEND_ENGINE_2_7
+# define FLUSH_CC TSRMLS_CC
+# define FLUSH_DC TSRMLS_DC
+#else
+# define FLUSH_CC
+# define FLUSH_DC
+#endif
+
/* {{{ php_runkit_sandbox_sapi_flush
*/
-static void php_runkit_sandbox_sapi_flush(void *server_context)
+static void php_runkit_sandbox_sapi_flush(void *server_context FLUSH_DC)
{
php_runkit_sandbox_object *objval;
+#ifndef ZEND_ENGINE_2_7
TSRMLS_FETCH();
+#endif
objval = RUNKIT_G(current_sandbox);
if (!objval) {
/* Not in a sandbox -- Use genuine sapi.flush handler */
if (php_runkit_sandbox_original_sapi.flush) {
- php_runkit_sandbox_original_sapi.flush(server_context);
+ php_runkit_sandbox_original_sapi.flush(server_context FLUSH_CC);
}
return;
}
@@ -1137,7 +1153,7 @@ static void php_runkit_sandbox_sapi_flush(void *server_context)
!zend_is_callable(objval->output_handler, IS_CALLABLE_CHECK_NO_ACCESS, NULL \
ISCALLABLE_TSRMLS_CC)) { /* No hander, or invalid handler, pass up the line... */
if (php_runkit_sandbox_original_sapi.flush) {
- php_runkit_sandbox_original_sapi.flush(server_context);
+ php_runkit_sandbox_original_sapi.flush(server_context FLUSH_CC);
}
tsrm_set_interpreter_context(objval->context);
return;
@@ -1565,7 +1581,7 @@ PHP_FUNCTION(runkit_sandbox_output_handler)
}
if (callback) {
- callback_is_true = zend_is_true(callback);
+ callback_is_true = zend_is_true(callback ISTRUE_CC);
}
if (callback && callback_is_true &&
--
PECL CVS Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic