diff options
author | Stefan Fritsch <sf@apache.org> | 2011-12-18 18:52:59 +0100 |
---|---|---|
committer | Stefan Fritsch <sf@apache.org> | 2011-12-18 18:52:59 +0100 |
commit | 76f782e188d21d329d242cf3660315e95a68043b (patch) | |
tree | 99d3eb019f81282d5b6b93337349973467262b4b | |
parent | Avoid segfault if url->hostname is NULL and filter->hostname is "*" or ".". (diff) | |
download | apache2-76f782e188d21d329d242cf3660315e95a68043b.tar.xz apache2-76f782e188d21d329d242cf3660315e95a68043b.zip |
Various code cleanup to avoid compiler, cppcheck, or clang warnings:
modules/debugging/mod_firehose.c: Make some internal functions static
(to do: logs_cleanup() is unused)
modules/filters/mod_charset_lite.c: Remove dead assignments
modules/filters/mod_include.c: likewise
modules/metadata/mod_usertrack.c: likewise
modules/proxy/mod_proxy_ftp.c: likewise
modules/ssl/ssl_engine_pphrase.c: likewise
modules/proxy/mod_proxy_balancer.c: likewise;
Remove NULL check that can never happen
modules/proxy/proxy_util.c: Axe NULL-check that can never happen and if it
would, it would just mask another bug
os/unix/unixd.c: likewise
modules/http/http_filters.c: Remove sub-condition that is always true
modules/lua/mod_lua.c: Add default cases to switch statements
modules/generators/mod_autoindex.c: Unsigned value can never be < 0
server/util_expr_eval.c: Fix compiler warnings with VC and on OS2
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1220493 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | modules/debugging/mod_firehose.c | 8 | ||||
-rw-r--r-- | modules/filters/mod_charset_lite.c | 3 | ||||
-rw-r--r-- | modules/filters/mod_include.c | 2 | ||||
-rw-r--r-- | modules/generators/mod_autoindex.c | 2 | ||||
-rw-r--r-- | modules/http/http_filters.c | 2 | ||||
-rw-r--r-- | modules/lua/mod_lua.c | 4 | ||||
-rw-r--r-- | modules/metadata/mod_usertrack.c | 1 | ||||
-rw-r--r-- | modules/proxy/mod_proxy_balancer.c | 4 | ||||
-rw-r--r-- | modules/proxy/mod_proxy_ftp.c | 7 | ||||
-rw-r--r-- | modules/proxy/proxy_util.c | 2 | ||||
-rw-r--r-- | modules/ssl/ssl_engine_pphrase.c | 1 | ||||
-rw-r--r-- | os/unix/unixd.c | 7 | ||||
-rw-r--r-- | server/util_expr_eval.c | 4 |
13 files changed, 22 insertions, 25 deletions
diff --git a/modules/debugging/mod_firehose.c b/modules/debugging/mod_firehose.c index 4548e7ea27..719cabc752 100644 --- a/modules/debugging/mod_firehose.c +++ b/modules/debugging/mod_firehose.c @@ -104,21 +104,21 @@ typedef struct firehose_ctx_t #define BODY_LEN (PIPE_BUF - HEADER_LEN - 2) #define HEADER_FMT "%" APR_UINT64_T_HEX_FMT " %" APR_UINT64_T_HEX_FMT " %c %s %" APR_UINT64_T_HEX_FMT CRLF -apr_status_t logs_cleanup(void *dummy) +static apr_status_t logs_cleanup(void *dummy) { apr_file_t *file = (apr_file_t *) dummy; apr_file_close(file); return APR_SUCCESS; } -apr_status_t filter_output_cleanup(void *dummy) +static apr_status_t filter_output_cleanup(void *dummy) { ap_filter_t *f = (ap_filter_t *) dummy; ap_remove_output_filter(f); return APR_SUCCESS; } -apr_status_t filter_input_cleanup(void *dummy) +static apr_status_t filter_input_cleanup(void *dummy) { ap_filter_t *f = (ap_filter_t *) dummy; ap_remove_input_filter(f); @@ -128,7 +128,7 @@ apr_status_t filter_input_cleanup(void *dummy) /** * Add the terminating empty fragment to indicate end-of-connection. */ -apr_status_t pumpit_cleanup(void *dummy) +static apr_status_t pumpit_cleanup(void *dummy) { firehose_ctx_t *ctx = (firehose_ctx_t *) dummy; apr_status_t rv; diff --git a/modules/filters/mod_charset_lite.c b/modules/filters/mod_charset_lite.c index 25f1ecb2ff..526f73c26b 100644 --- a/modules/filters/mod_charset_lite.c +++ b/modules/filters/mod_charset_lite.c @@ -864,11 +864,9 @@ static apr_status_t xlate_out_filter(ap_filter_t *f, apr_bucket_brigade *bb) consumed_bucket = NULL; } if (dptr == APR_BRIGADE_SENTINEL(bb)) { - done = 1; break; } if (APR_BUCKET_IS_EOS(dptr)) { - done = 1; cur_len = -1; /* XXX yuck, but that tells us to send * eos down; when we minimize our bb construction * we'll fix this crap */ @@ -894,7 +892,6 @@ static apr_status_t xlate_out_filter(ap_filter_t *f, apr_bucket_brigade *bb) } rv = apr_bucket_read(dptr, &cur_str, &cur_len, APR_BLOCK_READ); if (rv != APR_SUCCESS) { - done = 1; ctx->ees = EES_BUCKET_READ; break; } diff --git a/modules/filters/mod_include.c b/modules/filters/mod_include.c index ffca232877..3d6e8e61d7 100644 --- a/modules/filters/mod_include.c +++ b/modules/filters/mod_include.c @@ -3809,7 +3809,6 @@ static int includes_setup(ap_filter_t *f) static apr_status_t includes_filter(ap_filter_t *f, apr_bucket_brigade *b) { request_rec *r = f->r; - include_ctx_t *ctx = f->ctx; request_rec *parent; include_dir_config *conf = ap_get_module_config(r->per_dir_config, &include_module); @@ -3827,6 +3826,7 @@ static apr_status_t includes_filter(ap_filter_t *f, apr_bucket_brigade *b) if (!f->ctx) { struct ssi_internal_ctx *intern; + include_ctx_t *ctx; /* create context for this filter */ f->ctx = ctx = apr_palloc(r->pool, sizeof(*ctx)); diff --git a/modules/generators/mod_autoindex.c b/modules/generators/mod_autoindex.c index bf8005ed54..926f8c83a5 100644 --- a/modules/generators/mod_autoindex.c +++ b/modules/generators/mod_autoindex.c @@ -1209,7 +1209,7 @@ static char *find_title(request_rec *r) } n = sizeof(char) * (MAX_STRING_LEN - 1); apr_file_read(thefile, titlebuf, &n); - if (n <= 0) { + if (n == 0) { apr_file_close(thefile); return NULL; } diff --git a/modules/http/http_filters.c b/modules/http/http_filters.c index 500b5cf24a..c04e97d7cd 100644 --- a/modules/http/http_filters.c +++ b/modules/http/http_filters.c @@ -631,7 +631,7 @@ static long get_chunk_size(char *b) chunkbits -= 4; ++b; } - if (apr_isxdigit(*b) && (chunkbits <= 0)) { + if (apr_isxdigit(*b)) { /* overflow */ return -1; } diff --git a/modules/lua/mod_lua.c b/modules/lua/mod_lua.c index 128dde1bc6..095e54fd86 100644 --- a/modules/lua/mod_lua.c +++ b/modules/lua/mod_lua.c @@ -131,6 +131,8 @@ static int lua_handler(request_rec *r) pool = apr_thread_pool_get(r->connection->current_thread); break; #endif + default: + ap_assert(0); } L = ap_lua_get_lua_state(pool, @@ -225,6 +227,8 @@ static int lua_request_rec_hook_harness(request_rec *r, const char *name, int ap pool = apr_thread_pool_get(r->connection->current_thread); break; #endif + default: + ap_assert(0); } L = ap_lua_get_lua_state(pool, spec); diff --git a/modules/metadata/mod_usertrack.c b/modules/metadata/mod_usertrack.c index 390adb99e4..61752b7d5b 100644 --- a/modules/metadata/mod_usertrack.c +++ b/modules/metadata/mod_usertrack.c @@ -326,7 +326,6 @@ static const char *set_cookie_exp(cmd_parms *parms, void *dummy, if (!word[0]) return "bad expires code, missing <type>"; - factor = 0; if (!strncasecmp(word, "years", 1)) factor = 60 * 60 * 24 * 365; else if (!strncasecmp(word, "months", 2)) diff --git a/modules/proxy/mod_proxy_balancer.c b/modules/proxy/mod_proxy_balancer.c index eb15f08791..0fb22edd1a 100644 --- a/modules/proxy/mod_proxy_balancer.c +++ b/modules/proxy/mod_proxy_balancer.c @@ -217,7 +217,7 @@ static proxy_worker *find_route_worker(proxy_balancer *balancer, if ( (checking_standby ? !PROXY_WORKER_IS_STANDBY(worker) : PROXY_WORKER_IS_STANDBY(worker)) ) continue; if (*(worker->s->route) && strcmp(worker->s->route, route) == 0) { - if (worker && PROXY_WORKER_IS_USABLE(worker)) { + if (PROXY_WORKER_IS_USABLE(worker)) { return worker; } else { /* @@ -693,7 +693,7 @@ static int balancer_post_config(apr_pool_t *pconf, apr_pool_t *plog, { apr_status_t rv; void *sconf = s->module_config; - proxy_server_conf *conf = (proxy_server_conf *) ap_get_module_config(sconf, &proxy_module); + proxy_server_conf *conf; ap_slotmem_instance_t *new = NULL; apr_time_t tstamp; diff --git a/modules/proxy/mod_proxy_ftp.c b/modules/proxy/mod_proxy_ftp.c index 9b4f36d3f0..d5aabd6950 100644 --- a/modules/proxy/mod_proxy_ftp.c +++ b/modules/proxy/mod_proxy_ftp.c @@ -1327,7 +1327,7 @@ static int proxy_ftp_handler(request_rec *r, proxy_worker *worker, break; *strp = '\0'; - len = decodeenc(path); /* Note! This decodes a %2f -> "/" */ + decodeenc(path); /* Note! This decodes a %2f -> "/" */ if (strchr(path, '/')) { /* are there now any '/' characters? */ return ftp_proxyerror(r, backend, HTTP_BAD_REQUEST, @@ -2050,7 +2050,7 @@ static int proxy_ftp_handler(request_rec *r, proxy_worker *worker, } /* Retrieve the final response for the RETR or LIST commands */ - rc = proxy_ftp_command(NULL, r, origin, bb, &ftpmessage); + proxy_ftp_command(NULL, r, origin, bb, &ftpmessage); apr_brigade_cleanup(bb); /* @@ -2061,8 +2061,7 @@ static int proxy_ftp_handler(request_rec *r, proxy_worker *worker, */ /* finish */ - rc = proxy_ftp_command("QUIT" CRLF, - r, origin, bb, &ftpmessage); + proxy_ftp_command("QUIT" CRLF, r, origin, bb, &ftpmessage); /* responses: 221, 500 */ /* 221 Service closing control connection. */ /* 500 Syntax error, command unrecognized. */ diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index 43d5d5a15b..e40b569498 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -768,7 +768,7 @@ PROXY_DECLARE(int) ap_proxy_checkproxyblock(request_rec *r, proxy_server_conf *c ap_log_rerror(APLOG_MARK, APLOG_TRACE2, 0, r, "checking remote machine [%s] against [%s]", uri_addr->hostname, npent[j].name); - if ((npent[j].name && ap_strstr_c(uri_addr->hostname, npent[j].name)) + if (ap_strstr_c(uri_addr->hostname, npent[j].name) || npent[j].name[0] == '*') { ap_log_rerror(APLOG_MARK, APLOG_WARNING, 0, r, APLOGNO(00916) "connect to remote machine %s blocked: name %s " diff --git a/modules/ssl/ssl_engine_pphrase.c b/modules/ssl/ssl_engine_pphrase.c index b12cdacd7b..1fa4a2ef7a 100644 --- a/modules/ssl/ssl_engine_pphrase.c +++ b/modules/ssl/ssl_engine_pphrase.c @@ -556,7 +556,6 @@ void ssl_pphrase_Handle(server_rec *s, apr_pool_t *p) * Let the user know when we're successful. */ if (nPassPhraseDialog > 0) { - sc = mySrvConfig(s); if (writetty) { apr_file_printf(writetty, "\n" "OK: Pass Phrase Dialog successful.\n"); diff --git a/os/unix/unixd.c b/os/unix/unixd.c index 360b935686..2a953f0f38 100644 --- a/os/unix/unixd.c +++ b/os/unix/unixd.c @@ -165,11 +165,8 @@ static apr_status_t ap_unix_create_privileged_process( } i = 0; - if (args) { - while (args[i]) { - i++; - } - } + while (args[i]) + i++; /* allocate space for 4 new args, the input args, and a null terminator */ newargs = apr_palloc(p, sizeof(char *) * (i + 4)); newprogname = SUEXEC_BIN; diff --git a/server/util_expr_eval.c b/server/util_expr_eval.c index 6c543f54ae..699593108c 100644 --- a/server/util_expr_eval.c +++ b/server/util_expr_eval.c @@ -922,6 +922,8 @@ AP_DECLARE(const char *) ap_expr_str_exec_re(request_rec *r, return NULL; else ap_assert(0); + /* Not reached */ + return NULL; } AP_DECLARE(const char *) ap_expr_str_exec(request_rec *r, @@ -1117,8 +1119,8 @@ static int op_file_min(ap_expr_eval_ctx_t *ctx, const void *data, const char *ar static int op_file_link(ap_expr_eval_ctx_t *ctx, const void *data, const char *arg) { - apr_finfo_t sb; #if !defined(OS2) + apr_finfo_t sb; if (apr_stat(&sb, arg, APR_FINFO_MIN | APR_FINFO_LINK, ctx->p) == APR_SUCCESS && sb.filetype == APR_LNK) { return TRUE; |