diff options
author | sumikawa <sumikawa@FreeBSD.org> | 2001-02-13 09:38:48 +0000 |
---|---|---|
committer | sumikawa <sumikawa@FreeBSD.org> | 2001-02-13 09:38:48 +0000 |
commit | d05635395ea68d4932d2fdd81e98a99a5d68860a (patch) | |
tree | 09dfa4a4ee3bfb58e9acc0a753189acf9fa27c88 /www/apache13+ipv6 | |
parent | d84ffa07267e44e2a9aa240b3c4518983701a6a1 (diff) | |
download | FreeBSD-ports-d05635395ea68d4932d2fdd81e98a99a5d68860a.zip FreeBSD-ports-d05635395ea68d4932d2fdd81e98a99a5d68860a.tar.gz |
Add official fix for RewriteMap bug.
Submitted by: Marcin Cieslak <saper@system.pl>
Diffstat (limited to 'www/apache13+ipv6')
-rw-r--r-- | www/apache13+ipv6/Makefile | 1 | ||||
-rw-r--r-- | www/apache13+ipv6/files/patch-rewrite | 25 |
2 files changed, 26 insertions, 0 deletions
diff --git a/www/apache13+ipv6/Makefile b/www/apache13+ipv6/Makefile index 8505ed5..58d0e84 100644 --- a/www/apache13+ipv6/Makefile +++ b/www/apache13+ipv6/Makefile @@ -7,6 +7,7 @@ PORTNAME= apache+ipv6 PORTVERSION= 1.3.17 +PORTREVISION= 1 CATEGORIES= www ipv6 MASTER_SITES= http://www.apache.org/dist/ \ ftp://ftp.ccs.neu.edu/net/mirrors/ftp.apache.org/apache/dist/ \ diff --git a/www/apache13+ipv6/files/patch-rewrite b/www/apache13+ipv6/files/patch-rewrite new file mode 100644 index 0000000..b80dae7 --- /dev/null +++ b/www/apache13+ipv6/files/patch-rewrite @@ -0,0 +1,25 @@ +There's another bug in RewriteMap handling in Apache 1.3.17, which +causes ${} expansions to be completely ignored. This patch fixes it. + +Index: src/modules/standard/mod_rewrite.c +=================================================================== +RCS file: /home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v +retrieving revision 1.169 +retrieving revision 1.170 +diff -u -r1.169 -r1.170 +--- src/modules/standard/mod_rewrite.c 2001/01/18 22:28:34 1.169 ++++ src/modules/standard/mod_rewrite.c 2001/02/01 04:12:26 1.170 +@@ -2287,11 +2287,11 @@ + char *map, *key, *dflt, *result; + char xkey[MAX_STRING_LEN]; + char xdflt[MAX_STRING_LEN]; +- key = find_char_in_brackets(inp, ':', '{', '}'); ++ key = find_char_in_brackets(inp+2, ':', '{', '}'); + if (key == NULL) + goto skip; + map = ap_pstrndup(r->pool, inp+2, key-inp-2); +- dflt = find_char_in_brackets(inp, '|', '{', '}'); ++ dflt = find_char_in_brackets(key+1, '|', '{', '}'); + if (dflt == NULL) { + key = ap_pstrndup(r->pool, key+1, endp-key-1); + dflt = ""; |