summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ifilter.c40
1 files changed, 10 insertions, 30 deletions
diff --git a/ifilter.c b/ifilter.c
index be3067b..d231bc5 100644
--- a/ifilter.c
+++ b/ifilter.c
@@ -33,26 +33,6 @@
33 33
34static void (*orig_register_server_variables)(zval *track_vars_array TSRMLS_DC) = NULL; 34static void (*orig_register_server_variables)(zval *track_vars_array TSRMLS_DC) = NULL;
35 35
36#ifdef ZEND_ENGINE_2
37#define HASH_HTTP_GET_VARS 0x2095733f
38#define HASH_HTTP_POST_VARS 0xbfee1265
39#define HASH_HTTP_COOKIE_VARS 0xaaca9d99
40#define HASH_HTTP_ENV_VARS 0x1fe186a8
41#define HASH_HTTP_SERVER_VARS 0xc987afd6
42#define HASH_HTTP_SESSION_VARS 0x7aba0d43
43#define HASH_HTTP_POST_FILES 0x98eb1ddc
44#define HASH_HTTP_RAW_POST_DATA 0xdd633fec
45#else
46#define HASH_HTTP_GET_VARS 0x8d8645bd
47#define HASH_HTTP_POST_VARS 0x7c699bf3
48#define HASH_HTTP_COOKIE_VARS 0x93ad0d6f
49#define HASH_HTTP_ENV_VARS 0x84da3016
50#define HASH_HTTP_SERVER_VARS 0x6dbf964e
51#define HASH_HTTP_SESSION_VARS 0x322906f5
52#define HASH_HTTP_POST_FILES 0xe4e4ce70
53#define HASH_HTTP_RAW_POST_DATA 0xe6137a0e
54#endif
55
56 36
57/* {{{ normalize_varname 37/* {{{ normalize_varname
58 */ 38 */
@@ -209,26 +189,26 @@ void suhosin_register_server_variables(zval *track_vars_array TSRMLS_DC)
209 HashTable *svars; 189 HashTable *svars;
210 int retval, failure=0; 190 int retval, failure=0;
211 191
212 orig_register_server_variables(track_vars_array TSRMLS_CC); 192 orig_register_server_variables(track_vars_array TSRMLS_CC);
213 193
214 svars = Z_ARRVAL_P(track_vars_array); 194 svars = Z_ARRVAL_P(track_vars_array);
215 195
216 if (!SUHOSIN_G(simulation)) { 196 if (!SUHOSIN_G(simulation)) {
217 retval = zend_hash_del_key_or_index(svars, "HTTP_GET_VARS", sizeof("HTTP_GET_VARS"), HASH_HTTP_GET_VARS, HASH_DEL_INDEX); 197 retval = zend_hash_del(svars, "HTTP_GET_VARS", sizeof("HTTP_GET_VARS"));
198 if (retval == SUCCESS) failure = 1;
199 retval = zend_hash_del(svars, "HTTP_POST_VARS", sizeof("HTTP_POST_VARS"));
218 if (retval == SUCCESS) failure = 1; 200 if (retval == SUCCESS) failure = 1;
219 retval = zend_hash_del_key_or_index(svars, "HTTP_POST_VARS", sizeof("HTTP_POST_VARS"), HASH_HTTP_POST_VARS, HASH_DEL_INDEX); 201 retval = zend_hash_del(svars, "HTTP_COOKIE_VARS", sizeof("HTTP_COOKIE_VARS"));
220 if (retval == SUCCESS) failure = 1; 202 if (retval == SUCCESS) failure = 1;
221 retval = zend_hash_del_key_or_index(svars, "HTTP_COOKIE_VARS", sizeof("HTTP_COOKIE_VARS"), HASH_HTTP_COOKIE_VARS, HASH_DEL_INDEX); 203 retval = zend_hash_del(svars, "HTTP_ENV_VARS", sizeof("HTTP_ENV_VARS"));
222 if (retval == SUCCESS) failure = 1; 204 if (retval == SUCCESS) failure = 1;
223 retval = zend_hash_del_key_or_index(svars, "HTTP_ENV_VARS", sizeof("HTTP_ENV_VARS"), HASH_HTTP_ENV_VARS, HASH_DEL_INDEX); 205 retval = zend_hash_del(svars, "HTTP_SERVER_VARS", sizeof("HTTP_SERVER_VARS"));
224 if (retval == SUCCESS) failure = 1; 206 if (retval == SUCCESS) failure = 1;
225 retval = zend_hash_del_key_or_index(svars, "HTTP_SERVER_VARS", sizeof("HTTP_SERVER_VARS"), HASH_HTTP_SERVER_VARS, HASH_DEL_INDEX); 207 retval = zend_hash_del(svars, "HTTP_SESSION_VARS", sizeof("HTTP_SESSION_VARS"));
226 if (retval == SUCCESS) failure = 1; 208 if (retval == SUCCESS) failure = 1;
227 retval = zend_hash_del_key_or_index(svars, "HTTP_SESSION_VARS", sizeof("HTTP_SESSION_VARS"), HASH_HTTP_SESSION_VARS, HASH_DEL_INDEX); 209 retval = zend_hash_del(svars, "HTTP_POST_FILES", sizeof("HTTP_POST_FILES"));
228 if (retval == SUCCESS) failure = 1; 210 if (retval == SUCCESS) failure = 1;
229 retval = zend_hash_del_key_or_index(svars, "HTTP_POST_FILES", sizeof("HTTP_POST_FILES"), HASH_HTTP_POST_FILES, HASH_DEL_INDEX); 211 retval = zend_hash_del(svars, "HTTP_RAW_POST_DATA", sizeof("HTTP_RAW_POST_DATA"));
230 if (retval == SUCCESS) failure = 1;
231 retval = zend_hash_del_key_or_index(svars, "HTTP_RAW_POST_DATA", sizeof("HTTP_RAW_POST_DATA"), HASH_HTTP_RAW_POST_DATA, HASH_DEL_INDEX);
232 if (retval == SUCCESS) failure = 1; 212 if (retval == SUCCESS) failure = 1;
233 } else { 213 } else {
234 retval = zend_hash_exists(svars, "HTTP_GET_VARS", sizeof("HTTP_GET_VARS")); 214 retval = zend_hash_exists(svars, "HTTP_GET_VARS", sizeof("HTTP_GET_VARS"));