diff options
-rw-r--r-- | README.input_filter | 10 | ||||
-rw-r--r-- | ext/mbstring/mb_gpc.c | 2 | ||||
-rw-r--r-- | main/SAPI.c | 2 | ||||
-rw-r--r-- | main/SAPI.h | 6 | ||||
-rw-r--r-- | main/php_variables.c | 4 | ||||
-rw-r--r-- | main/rfc1867.c | 2 |
6 files changed, 13 insertions, 13 deletions
diff --git a/README.input_filter b/README.input_filter index 011b167725..60a88ed9c2 100644 --- a/README.input_filter +++ b/README.input_filter @@ -89,14 +89,14 @@ PHP_MINFO_FUNCTION(my_input_filter) php_info_print_table_end(); } -unsigned int my_sapi_input_filter(int arg, char *var, char *val, unsigned int val_len) +unsigned int my_sapi_input_filter(int arg, char *var, char **val, unsigned int val_len) { zval new_var; zval *array_ptr = NULL; char *raw_var; int var_len; - assert(val != NULL); + assert(*val != NULL); switch(arg) { case PARSE_GET: @@ -125,7 +125,7 @@ unsigned int my_sapi_input_filter(int arg, char *var, char *val, unsigned int v break; } Z_STRLEN(new_var) = val_len; - Z_STRVAL(new_var) = estrndup(val, val_len); + Z_STRVAL(new_var) = estrndup(*val, val_len); Z_TYPE(new_var) = IS_STRING; var_len = strlen(var); @@ -135,9 +135,9 @@ unsigned int my_sapi_input_filter(int arg, char *var, char *val, unsigned int v php_register_variable_ex(raw_var, &new_var, array_ptr TSRMLS_DC); - php_strip_tags(val, val_len, NULL, NULL, 0); + php_strip_tags(*val, val_len, NULL, NULL, 0); - return strlen(val); + return strlen(*val); } PHP_FUNCTION(my_get_raw) diff --git a/ext/mbstring/mb_gpc.c b/ext/mbstring/mb_gpc.c index 9003150537..74402ebbfd 100644 --- a/ext/mbstring/mb_gpc.c +++ b/ext/mbstring/mb_gpc.c @@ -342,7 +342,7 @@ int _php_mb_encoding_handler_ex(int data_type, zval *arg, char *res, char *separ val_len = len_list[n]; } n++; - val_len = sapi_module.input_filter(data_type, var, val, val_len TSRMLS_CC); + val_len = sapi_module.input_filter(data_type, var, &val, val_len TSRMLS_CC); /* add variable to symbol table */ php_register_variable_safe(var, val, val_len, array_ptr TSRMLS_CC); if (convd != NULL){ diff --git a/main/SAPI.c b/main/SAPI.c index 117d868fc8..94a333c967 100644 --- a/main/SAPI.c +++ b/main/SAPI.c @@ -823,7 +823,7 @@ SAPI_API int sapi_register_treat_data(void (*treat_data)(int arg, char *str, zva return SUCCESS; } -SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, char *var, char *val, unsigned int val_len TSRMLS_DC)) +SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, char *var, char **val, unsigned int val_len TSRMLS_DC)) { sapi_module.input_filter = input_filter; return SUCCESS; diff --git a/main/SAPI.h b/main/SAPI.h index 1bc31b26cb..88692d255b 100644 --- a/main/SAPI.h +++ b/main/SAPI.h @@ -178,7 +178,7 @@ SAPI_API int sapi_register_post_entry(sapi_post_entry *post_entry); SAPI_API void sapi_unregister_post_entry(sapi_post_entry *post_entry); SAPI_API int sapi_register_default_post_reader(void (*default_post_reader)(TSRMLS_D)); SAPI_API int sapi_register_treat_data(void (*treat_data)(int arg, char *str, zval *destArray TSRMLS_DC)); -SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, char *var, char *val, unsigned int val_len TSRMLS_DC)); +SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, char *var, char **val, unsigned int val_len TSRMLS_DC)); SAPI_API int sapi_flush(TSRMLS_D); SAPI_API struct stat *sapi_get_stat(TSRMLS_D); @@ -240,7 +240,7 @@ struct _sapi_module_struct { int (*get_target_uid)(uid_t * TSRMLS_DC); int (*get_target_gid)(gid_t * TSRMLS_DC); - unsigned int (*input_filter)(int arg, char *var, char *val, unsigned int val_len TSRMLS_DC); + unsigned int (*input_filter)(int arg, char *var, char **val, unsigned int val_len TSRMLS_DC); }; @@ -269,7 +269,7 @@ struct _sapi_post_entry { #define SAPI_POST_HANDLER_FUNC(post_handler) void post_handler(char *content_type_dup, void *arg TSRMLS_DC) #define SAPI_TREAT_DATA_FUNC(treat_data) void treat_data(int arg, char *str, zval* destArray TSRMLS_DC) -#define SAPI_INPUT_FILTER_FUNC(input_filter) unsigned int input_filter(int arg, char *var, char *val, unsigned int val_len TSRMLS_DC) +#define SAPI_INPUT_FILTER_FUNC(input_filter) unsigned int input_filter(int arg, char *var, char **val, unsigned int val_len TSRMLS_DC) SAPI_API SAPI_POST_READER_FUNC(sapi_read_standard_form_data); SAPI_API SAPI_POST_READER_FUNC(php_default_post_reader); diff --git a/main/php_variables.c b/main/php_variables.c index a82c966ef8..cb354c7dcd 100644 --- a/main/php_variables.c +++ b/main/php_variables.c @@ -226,7 +226,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(php_std_post_handler) *val++ = '\0'; php_url_decode(var, strlen(var)); val_len = php_url_decode(val, strlen(val)); - val_len = sapi_module.input_filter(PARSE_POST, var, val, val_len TSRMLS_CC); + val_len = sapi_module.input_filter(PARSE_POST, var, &val, val_len TSRMLS_CC); php_register_variable_safe(var, val, val_len, array_ptr TSRMLS_CC); } var = php_strtok_r(NULL, "&", &strtok_buf); @@ -321,7 +321,7 @@ SAPI_API SAPI_TREAT_DATA_FUNC(php_default_treat_data) *val++ = '\0'; php_url_decode(var, strlen(var)); val_len = php_url_decode(val, strlen(val)); - val_len = sapi_module.input_filter(arg, var, val, val_len TSRMLS_CC); + val_len = sapi_module.input_filter(arg, var, &val, val_len TSRMLS_CC); php_register_variable_safe(var, val, val_len, array_ptr TSRMLS_CC); } else { php_url_decode(var, strlen(var)); diff --git a/main/rfc1867.c b/main/rfc1867.c index eea22ce6a8..202dc8ee8d 100644 --- a/main/rfc1867.c +++ b/main/rfc1867.c @@ -805,7 +805,7 @@ SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler) value = estrdup(""); } - sapi_module.input_filter(PARSE_POST, param, value, strlen(value) TSRMLS_CC); + sapi_module.input_filter(PARSE_POST, param, &value, strlen(value) TSRMLS_CC); safe_php_register_variable(param, value, array_ptr, 0 TSRMLS_CC); if (!strcmp(param, "MAX_FILE_SIZE")) { max_file_size = atol(value); |