From a0300b15a3afffe02c737d263c3d6dd31ac307b7 Mon Sep 17 00:00:00 2001 From: xXx-caillou-xXx Date: Tue, 28 Aug 2018 18:16:11 +0200 Subject: Fix some compilation warnings --- src/sp_config_keywords.c | 20 ++++++++++---------- src/sp_disabled_functions.c | 2 +- src/sp_pcre_compat.c | 2 +- src/sp_session.c | 2 +- src/sp_sloppy.c | 3 ++- src/sp_utils.c | 7 ++++--- src/sp_utils.h | 1 + 7 files changed, 20 insertions(+), 17 deletions(-) (limited to 'src') diff --git a/src/sp_config_keywords.c b/src/sp_config_keywords.c index 13a2f89..93077c6 100644 --- a/src/sp_config_keywords.c +++ b/src/sp_config_keywords.c @@ -10,7 +10,7 @@ static int parse_enable(char *line, bool *restrict retval, {parse_empty, SP_TOKEN_ENABLE, &(enable)}, {parse_empty, SP_TOKEN_DISABLE, &(disable)}, {parse_empty, SP_TOKEN_SIMULATION, simulation}, - {0}}; + {0, 0, 0}}; int ret = parse_keywords(sp_config_funcs, line); @@ -35,7 +35,7 @@ int parse_session(char *line) { sp_config_functions sp_config_funcs_session_encryption[] = { {parse_empty, SP_TOKEN_ENCRYPT, &(session->encrypt)}, {parse_empty, SP_TOKEN_SIMULATION, &(session->simulation)}, - {0}}; + {0, 0, 0}}; int ret = parse_keywords(sp_config_funcs_session_encryption, line); if (0 != ret) { return ret; @@ -104,7 +104,7 @@ int parse_unserialize(char *line) { {parse_empty, SP_TOKEN_DISABLE, &(disable)}, {parse_empty, SP_TOKEN_SIMULATION, &(unserialize->simulation)}, {parse_str, SP_TOKEN_DUMP, &(unserialize->dump)}, - {0}}; + {0, 0, 0}}; unserialize->textual_representation = zend_string_init(line, strlen(line), 1); @@ -134,7 +134,7 @@ int parse_readonly_exec(char *line) { {parse_empty, SP_TOKEN_DISABLE, &(disable)}, {parse_empty, SP_TOKEN_SIMULATION, &(readonly_exec->simulation)}, {parse_str, SP_TOKEN_DUMP, &(readonly_exec->dump)}, - {0}}; + {0, 0, 0}}; readonly_exec->textual_representation = zend_string_init(line, strlen(line), 1); @@ -161,7 +161,7 @@ int parse_global(char *line) { &(SNUFFLEUPAGUS_G(config).config_snuffleupagus->encryption_key)}, {parse_str, SP_TOKEN_ENV_VAR, &(SNUFFLEUPAGUS_G(config).config_snuffleupagus->cookies_env_var)}, - {0}}; + {0, 0, 0}}; return parse_keywords(sp_config_funcs_global, line); } @@ -174,7 +174,7 @@ static int parse_eval_filter_conf(char *line, sp_list_node **list) { {parse_empty, SP_TOKEN_SIMULATION, &(SNUFFLEUPAGUS_G(config).config_eval->simulation)}, {parse_str, SP_TOKEN_DUMP, &(SNUFFLEUPAGUS_G(config).config_eval->dump)}, - {0}}; + {0, 0, 0}}; eval->textual_representation = zend_string_init(line, strlen(line), 1); @@ -194,7 +194,7 @@ int parse_wrapper_whitelist(char *line) { sp_config_functions sp_config_funcs[] = { {parse_list, SP_TOKEN_LIST, &SNUFFLEUPAGUS_G(config).config_wrapper->whitelist}, - {0}}; + {0, 0, 0}}; int ret = parse_keywords(sp_config_funcs, line); if (0 != ret) { return ret; @@ -223,7 +223,7 @@ int parse_cookie(char *line) { {parse_str, SP_TOKEN_SAMESITE, &samesite}, {parse_empty, SP_TOKEN_ENCRYPT, &cookie->encrypt}, {parse_empty, SP_TOKEN_SIMULATION, &cookie->simulation}, - {0}}; + {0, 0, 0}}; ret = parse_keywords(sp_config_funcs_cookie_encryption, line); if (0 != ret) { @@ -338,7 +338,7 @@ int parse_disabled_functions(char *line) { {parse_str, SP_TOKEN_LOCAL_VAR, &(var)}, {parse_str, SP_TOKEN_VALUE_ARG_POS, &(pos)}, {parse_str, SP_TOKEN_LINE_NUMBER, &(line_number)}, - {0}}; + {0, 0, 0}}; ret = parse_keywords(sp_config_funcs_disabled_functions, line); @@ -525,7 +525,7 @@ int parse_upload_validation(char *line) { &(SNUFFLEUPAGUS_G(config).config_upload_validation->simulation)}, {parse_empty, SP_TOKEN_ENABLE, &(enable)}, {parse_empty, SP_TOKEN_DISABLE, &(disable)}, - {0}}; + {0, 0, 0}}; int ret = parse_keywords(sp_config_funcs_upload_validation, line); diff --git a/src/sp_disabled_functions.c b/src/sp_disabled_functions.c index 3a30d55..842b15c 100644 --- a/src/sp_disabled_functions.c +++ b/src/sp_disabled_functions.c @@ -208,7 +208,7 @@ static zend_execute_data* is_file_matching( zend_execute_data* ex = execute_data; if (config_node->filename) { - if (zend_string_equals(current_filename, config_node->filename)) { + if (sp_zend_string_equals(current_filename, config_node->filename)) { return ex; } ITERATE(ex); diff --git a/src/sp_pcre_compat.c b/src/sp_pcre_compat.c index 3b3b7f5..d58d0c4 100644 --- a/src/sp_pcre_compat.c +++ b/src/sp_pcre_compat.c @@ -5,7 +5,7 @@ sp_pcre* sp_pcre_compile(const char* const pattern) { sp_pcre* ret = NULL; #ifdef SP_HAS_PCRE2 - char pcre_error[128] = {0}; + unsigned char pcre_error[128] = {0}; int errornumber; PCRE2_SIZE erroroffset; ret = pcre2_compile((PCRE2_SPTR)pattern, PCRE2_ZERO_TERMINATED, diff --git a/src/sp_session.c b/src/sp_session.c index d23b8b2..35866a1 100644 --- a/src/sp_session.c +++ b/src/sp_session.c @@ -10,10 +10,10 @@ static ts_rsrc_id session_globals_id = 0; ZEND_TSRMLS_CACHE_EXTERN(); #endif #else +static php_ps_globals *session_globals = NULL; #define SESSION_G(v) (ps_globals.v) #endif -static php_ps_globals *session_globals = NULL; static ps_module *s_module; static ps_module *s_original_mod; static int (*old_s_read)(PS_READ_ARGS); diff --git a/src/sp_sloppy.c b/src/sp_sloppy.c index e7396fd..5b36026 100644 --- a/src/sp_sloppy.c +++ b/src/sp_sloppy.c @@ -41,10 +41,11 @@ static void array_handler(INTERNAL_FUNCTION_PARAMETERS, void (*orig_handler)(INTERNAL_FUNCTION_PARAMETERS)) { void (*handler)(INTERNAL_FUNCTION_PARAMETERS); zval func_name; - zval params[3] = {{{0}}}; + zval params[3]; zval *value, *array; zend_bool strict; + memset(¶ms, 0, sizeof(params)); zend_parse_parameters(ZEND_NUM_ARGS(), "zz|b", &value, &array, &strict); ZVAL_COPY(¶ms[0], value); diff --git a/src/sp_utils.c b/src/sp_utils.c index cb6b4a7..41d817e 100644 --- a/src/sp_utils.c +++ b/src/sp_utils.c @@ -9,8 +9,8 @@ ZEND_DECLARE_MODULE_GLOBALS(snuffleupagus) -static bool sp_zend_string_equals(const zend_string* s1, - const zend_string* s2) { +bool sp_zend_string_equals(const zend_string* s1, + const zend_string* s2) { // We can't use `zend_string_equals` here because it doesn't work on // `const` zend_string. return ZSTR_LEN(s1) == ZSTR_LEN(s2) && @@ -113,8 +113,9 @@ int sp_log_request(const zend_string* folder, const zend_string* text_repr, HashTable* ht = Z_ARRVAL(PG(http_globals)[zones[i].key]); fprintf(file, "%s:", zones[i].str); ZEND_HASH_FOREACH_STR_KEY_VAL(ht, variable_key, variable_value) { - smart_str a = {0}; + smart_str a; + memset(&a, 0, sizeof(a)); php_var_export_ex(variable_value, 1, &a); ZSTR_VAL(a.s)[ZSTR_LEN(a.s)] = '\0'; fprintf(file, "%s=%s ", ZSTR_VAL(variable_key), ZSTR_VAL(a.s)); diff --git a/src/sp_utils.h b/src/sp_utils.h index 62040e7..97c97fd 100644 --- a/src/sp_utils.h +++ b/src/sp_utils.h @@ -61,5 +61,6 @@ int hook_regexp(const sp_pcre *, HashTable *, bool check_is_in_eval_whitelist(const zend_string *const function_name); int sp_log_request(const zend_string *folder, const zend_string *text_repr, char *from); +bool sp_zend_string_equals(const zend_string* s1, const zend_string* s2); #endif /* SP_UTILS_H */ -- cgit v1.3