Replace duplicate log tags
Check that AsyncRequestWorkerFactor is not negative
PR :54254
Submitted by: Jackie Zhang <jackie qq zhang gmail com>
remove unneeded include statements
Name pool + concat string at compile time when possible
* modules/filters/mod_ratelimit.c (rate_limit_filter): Log the error
code.
Correct typo in error message
Submitted by: sf, jailletc36, jorton, jailletc36
Reviewed/backported by: jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@
1502204 13f79535-47bb-0310-9956-
ffa450edef68
URI that is not configured for DAV will trigger a segfault. [Ben Reser
<ben reser.org>]
+ *) mpm_event: Check that AsyncRequestWorkerFactor is not negative. PR 54254.
+ [Jackie Zhang <jackie qq zhang gmail com>]
+
*) mod_proxy: Ensure we don't attempt to amend a table we are iterating
through, ensuring that all headers listed by Connection are removed.
[Graham Leggett, Co-Advisor <coad measurement-factory.com>]
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- * Some easy votes to keep 2.4 in line with trunk
- - mod_slotmem_shm: Replace duplicate log tags
- - mpm/event: Check that AsyncRequestWorkerFactor is not negative (PR 54254)
- - remove unneeded include statements
- - mod_cache_disk: Name pool + concat string at compile time when possible
- - mod_ratelimit (rate_limit_filter): Log the error code
- - mod_authnz_ldap: fix typo
- trunk patch: https://svn.apache.org/viewvc?view=revision&revision=1406068
- https://svn.apache.org/viewvc?view=revision&revision=1425777
- https://svn.apache.org/viewvc?view=revision&revision=1427546
- https://svn.apache.org/viewvc?view=revision&revision=1462643
- https://svn.apache.org/viewvc?view=revision&revision=1487530
- https://svn.apache.org/viewvc?view=revision&revision=1493330
- 2.4.x patch: trunk patch works
- +1: jailletc36, jj, druggeri
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
*/
#include "apr_strings.h"
-#include "apr_md5.h" /* for apr_password_validate */
#include "apr_lib.h" /* for apr_isspace */
#include "apr_base64.h" /* for apr_base64_decode et al */
#define APR_WANT_STRFUNC /* for strcasecmp */
*/
#include "apr_strings.h"
-#include "apr_md5.h" /* for apr_password_validate */
#include "apr_lib.h" /* for apr_isspace */
#include "apr_base64.h" /* for apr_base64_decode et al */
#define APR_WANT_STRFUNC /* for strcasecmp */
sec->deref = always;
}
else {
- return "Unrecognized value for AuthLDAPAliasDereference directive";
+ return "Unrecognized value for AuthLDAPDereferenceAliases directive";
}
return NULL;
}
}
if (dobj->prefix) {
- return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX, "/",
+ return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX "/",
dobj->hashfile, CACHE_HEADER_SUFFIX, NULL);
}
else {
}
if (dobj->prefix) {
- return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX, "/",
+ return apr_pstrcat(p, dobj->prefix, CACHE_VDIR_SUFFIX "/",
dobj->hashfile, CACHE_DATA_SUFFIX, NULL);
}
else {
dobj->root_len = conf->cache_root_len;
apr_pool_create(&pool, r->pool);
+ apr_pool_tag(pool, "mod_cache (create_entity)");
file_cache_create(conf, &dobj->hdrs, pool);
file_cache_create(conf, &dobj->vary, pool);
dobj->name = key;
apr_pool_create(&pool, r->pool);
+ apr_pool_tag(pool, "mod_cache (open_entity)");
file_cache_create(conf, &dobj->hdrs, pool);
file_cache_create(conf, &dobj->vary, pool);
rv = apr_brigade_partition(bb, ctx->chunk_size, &stop_point);
if (rv != APR_SUCCESS && rv != APR_INCOMPLETE) {
ctx->state = RATE_ERROR;
- ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, f->r, APLOGNO(01456)
+ ap_log_rerror(APLOG_MARK, APLOG_ERR, rv, f->r, APLOGNO(01456)
"rl: partition failed.");
break;
}
}
if (id >= slot->desc.num) {
- ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, ap_server_conf, APLOGNO(02236)
+ ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, ap_server_conf, APLOGNO(02397)
"slotmem(%s) fgrab failed. Num %u/num_free %u",
slot->name, slotmem_num_slots(slot),
slotmem_num_free_slots(slot));
if (*endptr)
return "error parsing value";
+ if (val <= 0)
+ return "AsyncRequestWorkerFactor argument must be a positive number";
+
worker_factor = val * WORKER_FACTOR_SCALE;
if (worker_factor == 0)
worker_factor = 1;