[-]
[+]
|
Changed |
varnish.spec
|
|
[-]
[+]
|
Added |
varnish-2.0-acl_compile.patch
^
|
@@ -0,0 +1,11 @@
+--- lib/libvcl/vcc_acl.c.orig 2008-10-17 16:30:13.000000000 +0200
++++ lib/libvcl/vcc_acl.c 2008-10-17 16:30:31.000000000 +0200
+@@ -397,7 +397,7 @@
+ Fh(tl, 0, "\t%*s%sif ((a[%d] & 0x%x) == %d) {\n",
+ -i, "",
+ oc,
+- i, (0xff00 >> m) & 0xff,
++ i - 1, (0xff00 >> m) & 0xff,
+ ae->data[i] & ((0xff00 >> m) & 0xff));
+ at[i] = 256;
+ depth = i;
|
[-]
[+]
|
Added |
varnish-2.0-coredump_http_protocol_input.patch
^
|
@@ -0,0 +1,53 @@
+--- bin/varnishd/cache_center.c.orig 2008-10-17 16:33:36.000000000 +0200
++++ bin/varnishd/cache_center.c 2008-10-17 16:34:19.000000000 +0200
+@@ -308,6 +308,7 @@
+
+ /* We always close when we take this path */
+ sp->doclose = "error";
++ sp->wantbody = 1;
+
+ w = sp->wrk;
+ if (sp->obj == NULL) {
+--- bin/varnishd/cache_http.c.orig 2008-10-17 16:33:45.000000000 +0200
++++ bin/varnishd/cache_http.c 2008-10-17 16:36:01.000000000 +0200
+@@ -496,16 +496,17 @@
+
+ i = http_splitline(sp->wrk, sp->fd, hp, htc,
+ HTTP_HDR_REQ, HTTP_HDR_URL, HTTP_HDR_PROTO);
+- hp->protover = 0.9;
++ if (i != 0) {
++ WSPR(sp, SLT_HttpGarbage, htc->rxbuf);
++ return (i);
++ }
++
+ if (!strcmp(hp->hd[HTTP_HDR_PROTO].b, "HTTP/1.0"))
+ hp->protover = 1.0;
+ else if (!strcmp(hp->hd[HTTP_HDR_PROTO].b, "HTTP/1.1"))
+ hp->protover = 1.1;
+ else
+ hp->protover = 0.9;
+-
+- if (i != 0)
+- WSPR(sp, SLT_HttpGarbage, htc->rxbuf);
+ return (i);
+ }
+
+--- bin/varnishtest/tests/r00354.vtc.orig 2008-10-17 16:38:25.000000000 +0200
++++ bin/varnishtest/tests/r00354.vtc 2008-10-17 16:38:19.000000000 +0200
+@@ -0,0 +1,16 @@
++# $Id$
++
++test "#354 Segfault in strcmp in http_DissectRequest()"
++
++server s1 {
++ rxreq
++ txresp
++}
++
++varnish v1 -vcl+backend {} -start
++
++client c1 {
++ send "FOO\r\n\r\n"
++ rxresp
++ expect resp status == 400
++} -run
|
|
Deleted |
varnish-2.0-rc1.tar.gz
^
|