From: Nick Kew Date: Fri, 12 Aug 2005 09:38:09 +0000 (+0000) Subject: Fix mess left by incompleteness of previous ProxyPassReverse fix X-Git-Tag: 2.1.7~5^2~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ab0fd007b95fba543ad8d0de3017083fd01997ec;p=thirdparty%2Fapache%2Fhttpd.git Fix mess left by incompleteness of previous ProxyPassReverse fix git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@232247 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/proxy/ajp.h b/modules/proxy/ajp.h index 94246dbaab4..e162fe97dce 100644 --- a/modules/proxy/ajp.h +++ b/modules/proxy/ajp.h @@ -442,7 +442,7 @@ int ajp_parse_type(request_rec *r, ajp_msg_t *msg); * @param msg AJP message * @return APR_SUCCESS or error */ -apr_status_t ajp_parse_header(request_rec *r, proxy_server_conf *conf, +apr_status_t ajp_parse_header(request_rec *r, proxy_dir_conf *conf, ajp_msg_t *msg); /** diff --git a/modules/proxy/ajp_header.c b/modules/proxy/ajp_header.c index b1766f88601..1d719944970 100644 --- a/modules/proxy/ajp_header.c +++ b/modules/proxy/ajp_header.c @@ -447,7 +447,7 @@ body_chunk := static apr_status_t ajp_unmarshal_response(ajp_msg_t *msg, request_rec *r, - proxy_server_conf *conf) + proxy_dir_conf *dconf) { apr_uint16_t status; apr_status_t rc; @@ -532,7 +532,7 @@ static apr_status_t ajp_unmarshal_response(ajp_msg_t *msg, /* Set-Cookie need additional processing */ if (!strcasecmp(stringname, "Set-Cookie")) { - value = ap_proxy_cookie_reverse_map(r, conf, value); + value = ap_proxy_cookie_reverse_map(r, dconf, value); } /* Location, Content-Location, URI and Destination need additional * processing */ @@ -541,7 +541,7 @@ static apr_status_t ajp_unmarshal_response(ajp_msg_t *msg, || !strcasecmp(stringname, "URI") || !strcasecmp(stringname, "Destination")) { - value = ap_proxy_location_reverse_map(r, conf, value); + value = ap_proxy_location_reverse_map(r, dconf, value); } #if defined(AS400) || defined(_OSD_POSIX) @@ -639,7 +639,7 @@ int ajp_parse_type(request_rec *r, ajp_msg_t *msg) } /* parse the header */ -apr_status_t ajp_parse_header(request_rec *r, proxy_server_conf *conf, +apr_status_t ajp_parse_header(request_rec *r, proxy_dir_conf *conf, ajp_msg_t *msg) { apr_byte_t result; diff --git a/modules/proxy/mod_proxy.h b/modules/proxy/mod_proxy.h index 28c71da7a53..55e1eaf7e3f 100644 --- a/modules/proxy/mod_proxy.h +++ b/modules/proxy/mod_proxy.h @@ -424,23 +424,23 @@ PROXY_DECLARE(int) ap_proxy_conn_is_https(conn_rec *c); PROXY_DECLARE(const char *) ap_proxy_ssl_val(apr_pool_t *p, server_rec *s, conn_rec *c, request_rec *r, const char *var); /* Header mapping functions, and a typedef of their signature */ -PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r, proxy_server_conf *conf, const char *url); -PROXY_DECLARE(const char *) ap_proxy_cookie_reverse_map(request_rec *r, proxy_server_conf *conf, const char *str); +PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r, proxy_dir_conf *conf, const char *url); +PROXY_DECLARE(const char *) ap_proxy_cookie_reverse_map(request_rec *r, proxy_dir_conf *conf, const char *str); #if !defined(WIN32) typedef const char *(*ap_proxy_header_reverse_map_fn)(request_rec *, - proxy_server_conf *, const char *); + proxy_dir_conf *, const char *); #elif defined(PROXY_DECLARE_STATIC) typedef const char *(__stdcall *ap_proxy_header_reverse_map_fn)(request_rec *, - proxy_server_conf *, const char *); + proxy_dir_conf *, const char *); #elif defined(PROXY_DECLARE_EXPORT) typedef __declspec(dllexport) const char * (__stdcall *ap_proxy_header_reverse_map_fn)(request_rec *, - proxy_server_conf *, const char *); + proxy_dir_conf *, const char *); #else typedef __declspec(dllimport) const char * (__stdcall *ap_proxy_header_reverse_map_fn)(request_rec *, - proxy_server_conf *, const char *); + proxy_dir_conf *, const char *); #endif diff --git a/modules/proxy/mod_proxy_ajp.c b/modules/proxy/mod_proxy_ajp.c index e0f4ecfbc37..526e31ffda8 100644 --- a/modules/proxy/mod_proxy_ajp.c +++ b/modules/proxy/mod_proxy_ajp.c @@ -88,7 +88,7 @@ static int proxy_ajp_canon(request_rec *r, char *url) static int ap_proxy_ajp_request(apr_pool_t *p, request_rec *r, proxy_conn_rec *conn, conn_rec *origin, - proxy_server_conf *conf, + proxy_dir_conf *conf, apr_uri_t *uri, char *url, char *server_portstr) { @@ -348,6 +348,8 @@ static int proxy_ajp_handler(request_rec *r, proxy_worker *worker, conn_rec *origin = NULL; proxy_conn_rec *backend = NULL; const char *scheme = "AJP"; + proxy_dir_conf *dconf = ap_get_module_config(r->per_dir_config, + &proxy_module); /* Note: Memory pool allocation. * A downstream keepalive connection is always connected to the existence @@ -436,7 +438,7 @@ static int proxy_ajp_handler(request_rec *r, proxy_worker *worker, /* Step Four: Process the Request */ - status = ap_proxy_ajp_request(p, r, backend, origin, conf, uri, url, + status = ap_proxy_ajp_request(p, r, backend, origin, dconf, uri, url, server_portstr); if (status != OK) goto cleanup; diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index 8789cc6fe29..f975dc0ea20 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -1002,7 +1002,7 @@ PROXY_DECLARE(void) ap_proxy_table_unmerge(apr_pool_t *p, apr_table_t *t, char * } PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r, - proxy_server_conf *conf, const char *url) + proxy_dir_conf *conf, const char *url) { struct proxy_alias *ent; int i, l1, l2; @@ -1031,7 +1031,7 @@ PROXY_DECLARE(const char *) ap_proxy_location_reverse_map(request_rec *r, * and stick to plain strings for the config values. */ PROXY_DECLARE(const char *) ap_proxy_cookie_reverse_map(request_rec *r, - proxy_server_conf *conf, const char *str) + proxy_dir_conf *conf, const char *str) { struct proxy_alias *ent; size_t len = strlen(str);