You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by jf...@apache.org on 2009/04/30 17:43:34 UTC
svn commit: r770293 - /httpd/httpd/trunk/modules/proxy/mod_proxy.c
Author: jfclere
Date: Thu Apr 30 15:43:34 2009
New Revision: 770293
URL: http://svn.apache.org/viewvc?rev=770293&view=rev
Log:
Prevent key=value being accepted as url.
Modified:
httpd/httpd/trunk/modules/proxy/mod_proxy.c
Modified: httpd/httpd/trunk/modules/proxy/mod_proxy.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/proxy/mod_proxy.c?rev=770293&r1=770292&r2=770293&view=diff
==============================================================================
--- httpd/httpd/trunk/modules/proxy/mod_proxy.c (original)
+++ httpd/httpd/trunk/modules/proxy/mod_proxy.c Thu Apr 30 15:43:34 2009
@@ -1761,22 +1761,26 @@
if (cmd->path)
path = apr_pstrdup(cmd->pool, cmd->path);
+
while (*arg) {
+ char *val;
word = ap_getword_conf(cmd->pool, &arg);
- if (!path)
- path = word;
- else if (!name)
- name = word;
- else {
- char *val = strchr(word, '=');
- if (!val)
+ val = strchr(word, '=');
+
+ if (!val) {
+ if (!path)
+ path = word;
+ else if (!name)
+ name = word;
+ else {
if (cmd->path)
return "BalancerMember can not have a balancer name when defined in a location";
else
return "Invalid BalancerMember parameter. Parameter must "
"be in the form 'key=value'";
- else
- *val++ = '\0';
+ }
+ } else {
+ *val++ = '\0';
apr_table_setn(params, word, val);
}
}
Re: svn commit: r770293 - /httpd/httpd/trunk/modules/proxy/mod_proxy.c
Posted by jean-frederic clere <jf...@gmail.com>.
jfclere@apache.org wrote:
> Author: jfclere
> Date: Thu Apr 30 15:43:34 2009
> New Revision: 770293
>
> URL: http://svn.apache.org/viewvc?rev=770293&view=rev
> Log:
> Prevent key=value being accepted as url.
>
There is still more to do...
Things like:
<Proxy balancer://mycluster>
BalancerMember ajp://neo:8009 route=toto interpolate
</Proxy>
Can't work.... Well also on 2.2.x :-(
Should we change the syntax and use interpolate=true/false and idem for
nocanon? Or try something more clever?
Cheers
Jean-Frederic