summaryrefslogtreecommitdiff
path: root/ex_imp.c
diff options
context:
space:
mode:
authorBen Fuhrmannek2014-07-23 23:34:12 +0200
committerBen Fuhrmannek2014-07-24 00:03:48 +0200
commit3d5192e407f88d8a55822c081b22450016b70932 (patch)
treecb52400411e7e530a8b144af4753dce12ec343fc /ex_imp.c
parent238f060a1362b9c6bf93aca2d45da6c2985fc3ca (diff)
re-introduced suhosin_is_protected_varname as extra varname check
Diffstat (limited to 'ex_imp.c')
-rw-r--r--ex_imp.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ex_imp.c b/ex_imp.c
index 2ea2b99..6256f35 100644
--- a/ex_imp.c
+++ b/ex_imp.c
@@ -74,7 +74,7 @@ static int php_valid_var_name(char *var_name, int len) /* {{{ */
74 } 74 }
75 } 75 }
76 76
77 if (php_varname_check(var_name, len, 1 TSRMLS_CC) == FAILURE) { 77 if (suhosin_is_protected_varname(var_name, len)) {
78 return 0; 78 return 0;
79 } 79 }
80 80
@@ -459,7 +459,7 @@ static int copy_request_variable(void *pDest TSRMLS_DC, int num_args, va_list ar
459 zval_dtor(&num); 459 zval_dtor(&num);
460 } 460 }
461 461
462 if (php_varname_check(Z_STRVAL(new_key), Z_STRLEN(new_key), 0 TSRMLS_CC) == FAILURE) { 462 if (php_varname_check(Z_STRVAL(new_key), Z_STRLEN(new_key), 1 TSRMLS_CC) == FAILURE || suhosin_is_protected_varname(Z_STRVAL(new_key), Z_STRLEN(new_key))) {
463 zval_dtor(&new_key); 463 zval_dtor(&new_key);
464 return 0; 464 return 0;
465 } 465 }
@@ -506,8 +506,8 @@ static int copy_request_variable(void *pDest, int num_args, va_list args, zend_h
506 new_key_len++; 506 new_key_len++;
507 } 507 }
508 508
509 if (php_varname_check(new_key, new_key_len-1, 0 TSRMLS_CC) == FAILURE) { 509 if (php_varname_check(new_key, new_key_len-1, 1 TSRMLS_CC) == FAILURE || suhosin_is_protected_varname(new_key, new_key_len-1)) {
510 zval_dtor(&new_key); 510 efree(new_key);
511 return 0; 511 return 0;
512 } 512 }
513 513