From: Jim Jagielski Date: Fri, 3 Jul 2009 11:59:12 +0000 (+0000) Subject: Merge r776325 from trunk: X-Git-Tag: 2.2.12~62 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=428721ad40718bd9dba372b0675a6abf5f15ab6a;p=thirdparty%2Fapache%2Fhttpd.git Merge r776325 from trunk: Fix the error string returned by RewriteRule. RewriteRule returned "RewriteCond: bad flag delimiters" when the 3rd argument of RewriteRule was not started with "[" or not ended with "]". PR: 45082 Submitted by: Vitaly Polonetsky Submitted by: takashi Reviewed/backported by: jim git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@790878 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index bf6b31af6c2..4729b64490c 100644 --- a/CHANGES +++ b/CHANGES @@ -16,6 +16,11 @@ Changes with Apache 2.2.12 different security issues which may affect particular configurations and third-party modules. + *) mod_rewrite: Fix the error string returned by RewriteRule. + RewriteRule returned "RewriteCond: bad flag delimiters" when the 3rd + argument of RewriteRule was not started with "[" or not ended with "]". + PR 45082 [Vitaly Polonetsky ] + *) mod_proxy: Complete ProxyPassReverse to handle balancer URL's. Given; BalancerMember balancer://alias http://example.com/foo ProxyPassReverse /bash balancer://alias/bar diff --git a/STATUS b/STATUS index 301f34d20ff..495e5b5f5ff 100644 --- a/STATUS +++ b/STATUS @@ -105,14 +105,6 @@ RELEASE SHOWSTOPPERS: PATCHES ACCEPTED TO BACKPORT FROM TRUNK: [ start all new proposals below, under PATCHES PROPOSED. ] - * mod_rewrite: Fix the error string returned by RewriteRule. - RewriteRule returned "RewriteCond: bad flag delimiters" - when the 3rd argument of RewriteRule was not started with - "[" or not ended with "]". PR: 45082 - Trunk version of patch works: - http://svn.apache.org/viewvc?view=rev&revision=776325 - +1: takashi, rpluem, jim - PATCHES PROPOSED TO BACKPORT FROM TRUNK: [ New proposals should be added at the end of the list ] diff --git a/modules/mappers/mod_rewrite.c b/modules/mappers/mod_rewrite.c index 90da5ed94b1..af7fed74cb7 100644 --- a/modules/mappers/mod_rewrite.c +++ b/modules/mappers/mod_rewrite.c @@ -3064,7 +3064,7 @@ static const char *cmd_parseflagfield(apr_pool_t *p, void *cfg, char *key, endp = key + strlen(key) - 1; if (*key != '[' || *endp != ']') { - return "RewriteCond: bad flag delimiters"; + return "bad flag delimiters"; } *endp = ','; /* for simpler parsing */ @@ -3127,7 +3127,7 @@ static const char *cmd_rewritecond_setflag(apr_pool_t *p, void *_cfg, cfg->flags |= CONDFLAG_NOVARY; } else { - return apr_pstrcat(p, "RewriteCond: unknown flag '", key, "'", NULL); + return apr_pstrcat(p, "unknown flag '", key, "'", NULL); } return NULL; } @@ -3176,7 +3176,7 @@ static const char *cmd_rewritecond(cmd_parms *cmd, void *in_dconf, if (a3 != NULL) { if ((err = cmd_parseflagfield(cmd->pool, newcond, a3, cmd_rewritecond_setflag)) != NULL) { - return err; + return apr_pstrcat(cmd->pool, "RewriteCond: ", err, NULL); } } @@ -3423,7 +3423,7 @@ static const char *cmd_rewriterule_setflag(apr_pool_t *p, void *_cfg, ap_index_of_response(HTTP_INTERNAL_SERVER_ERROR); if (ap_index_of_response(status) == idx) { - return apr_psprintf(p, "RewriteRule: invalid HTTP " + return apr_psprintf(p, "invalid HTTP " "response code '%s' for " "flag 'R'", val); @@ -3466,7 +3466,7 @@ static const char *cmd_rewriterule_setflag(apr_pool_t *p, void *_cfg, } if (error) { - return apr_pstrcat(p, "RewriteRule: unknown flag '", --key, "'", NULL); + return apr_pstrcat(p, "unknown flag '", --key, "'", NULL); } return NULL; @@ -3512,7 +3512,7 @@ static const char *cmd_rewriterule(cmd_parms *cmd, void *in_dconf, if (a3 != NULL) { if ((err = cmd_parseflagfield(cmd->pool, newrule, a3, cmd_rewriterule_setflag)) != NULL) { - return err; + return apr_pstrcat(cmd->pool, "RewriteRule: ", err, NULL); } }