[master] 61d43f58a resp: Don't hard-code the package branch in Via header

Dridi Boukelmoune dridi.boukelmoune at gmail.com
Fri Aug 5 09:24:07 UTC 2022


commit 61d43f58a73ec02e0770389e92ddd0152b262c56
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date:   Tue Jul 26 10:02:31 2022 +0200

    resp: Don't hard-code the package branch in Via header
    
    This should remove one error-prone step in the release process.
    
    Better diff with the --word-diff --word-diff-regex='\w+' options.
    
    Refs #3794

diff --git a/bin/varnishd/cache/cache_req_fsm.c b/bin/varnishd/cache/cache_req_fsm.c
index 857b29cf8..0b6141bbf 100644
--- a/bin/varnishd/cache/cache_req_fsm.c
+++ b/bin/varnishd/cache/cache_req_fsm.c
@@ -167,7 +167,7 @@ Resp_Setup_Deliver(struct req *req)
 	http_PrintfHeader(h, "Age: %.0f",
 	    floor(fmax(0., req->t_prev - oc->t_origin)));
 
-	http_SetHeader(h, "Via: 1.1 varnish (Varnish/7.1)");
+	http_SetHeader(h, "Via: 1.1 varnish (Varnish/" PACKAGE_BRANCH ")");
 
 	if (cache_param->http_gzip_support &&
 	    ObjCheckFlag(req->wrk, oc, OF_GZIPED) &&
diff --git a/bin/varnishtest/tests/b00000.vtc b/bin/varnishtest/tests/b00000.vtc
index 59cb4c119..958bdc22c 100644
--- a/bin/varnishtest/tests/b00000.vtc
+++ b/bin/varnishtest/tests/b00000.vtc
@@ -24,6 +24,10 @@ varnish v1 -vcl+backend {
 	sub vcl_backend_response {
 		set beresp.do_stream = false;
 	}
+	sub vcl_deliver {
+		# make s_resp_hdrbytes deterministic
+		unset resp.http.via;
+	}
 } -start
 
 varnish v1 -cliok "param.set debug +workspace"
@@ -48,7 +52,7 @@ varnish v1 -expect client_req == 1
 varnish v1 -expect cache_miss == 1
 varnish v1 -expect s_sess == 1
 varnish v1 -expect s_resp_bodybytes == 7
-varnish v1 -expect s_resp_hdrbytes == 178
+varnish v1 -expect s_resp_hdrbytes == 146
 
 client c1 {
 	txreq -url "/2"
@@ -63,4 +67,4 @@ varnish v1 -expect client_req == 2
 varnish v1 -expect cache_miss == 2
 varnish v1 -expect s_sess == 2
 varnish v1 -expect s_resp_bodybytes == 14
-varnish v1 -expect s_resp_hdrbytes == 356
+varnish v1 -expect s_resp_hdrbytes == 292
diff --git a/bin/varnishtest/tests/b00053.vtc b/bin/varnishtest/tests/b00053.vtc
index 1c9bf152b..0759d10b7 100644
--- a/bin/varnishtest/tests/b00053.vtc
+++ b/bin/varnishtest/tests/b00053.vtc
@@ -9,6 +9,10 @@ varnish v1 -arg "-a ${tmpdir}/v1.sock -a ${listen_addr}" -vcl+backend {
 	sub vcl_backend_response {
 		set beresp.do_stream = false;
 	}
+	sub vcl_deliver {
+		# make s_resp_hdrbytes deterministic
+		unset resp.http.via;
+	}
 } -start
 
 varnish v1 -cliok "param.set debug +workspace"
@@ -31,7 +35,7 @@ varnish v1 -expect client_req == 1
 varnish v1 -expect cache_miss == 1
 varnish v1 -expect s_sess == 1
 varnish v1 -expect s_resp_bodybytes == 7
-varnish v1 -expect s_resp_hdrbytes == 178
+varnish v1 -expect s_resp_hdrbytes == 146
 
 # varnishtest "vtc v_* macros when the listen address is UDS" (a00019)
 
diff --git a/bin/varnishtest/tests/e00003.vtc b/bin/varnishtest/tests/e00003.vtc
index e9906163e..c03d9f487 100644
--- a/bin/varnishtest/tests/e00003.vtc
+++ b/bin/varnishtest/tests/e00003.vtc
@@ -35,12 +35,15 @@ varnish v1 -vcl+backend {
 	}
 	sub vcl_deliver {
 		set resp.http.can_esi = obj.can_esi;
+
+		# make ReqAcct deterministic
+		unset resp.http.via;
 	}
 } -start
 
 logexpect l1 -v v1 -g request {
 	expect 0 1001   Begin   "^req .* rxreq"
-	expect * =	ReqAcct	"^29 0 29 202 75 277$"
+	expect * =	ReqAcct	"^29 0 29 170 75 245$"
 	expect 0 =      End
 } -start
 
@@ -63,7 +66,7 @@ logexpect l4 -v v1 -g request {
 logexpect l5 -v v1 -g request {
 	expect * 1005   Begin   "^req .* rxreq"
 	# Header bytes is 5 larger than in l1 due to two item X-Varnish hdr
-	expect * =	ReqAcct	"^29 0 29 207 75 282$"
+	expect * =	ReqAcct	"^29 0 29 175 75 250$"
 	expect 0 =      End
 } -start
 
diff --git a/bin/varnishtest/tests/t02005.vtc b/bin/varnishtest/tests/t02005.vtc
index 6412f23c6..19f862ac9 100644
--- a/bin/varnishtest/tests/t02005.vtc
+++ b/bin/varnishtest/tests/t02005.vtc
@@ -22,11 +22,16 @@ varnish v1 -vcl+backend {
 			return (fail);
 		}
 	}
+
+	sub vcl_deliver {
+		# make ReqAcct deterministic
+		unset resp.http.via;
+	}
 } -cliok "param.set feature +http2" -start
 varnish v1 -cliok "param.set debug +syncvsl"
 
 logexpect l1 -v v1 -g raw {
-	expect	* 1001 ReqAcct	"80 7 87 106 8 114"
+	expect	* 1001 ReqAcct	"80 7 87 78 8 86"
 	expect	* 1000 ReqAcct	"45 8 53 54 20 74"
 } -start
 
diff --git a/bin/varnishtest/tests/t02015.vtc b/bin/varnishtest/tests/t02015.vtc
index 829873acd..6190d8d9a 100644
--- a/bin/varnishtest/tests/t02015.vtc
+++ b/bin/varnishtest/tests/t02015.vtc
@@ -6,11 +6,16 @@ server s1 {
 } -start
 
 varnish v1 -cliok "param.set feature +http2"
-varnish v1 -vcl+backend "" -start
+varnish v1 -vcl+backend {
+	sub vcl_deliver {
+		# make ReqAcct deterministic
+		unset resp.http.via;
+	}
+} -start
 
 logexpect l1 -v v1 -g raw -q ReqAcct {
-	expect ? 1001	ReqAcct "46 0 46 97 12345 12442"
-	expect ? 1003	ReqAcct "46 0 46 102 1000 1102"
+	expect ? 1001	ReqAcct "46 0 46 69 12345 12414"
+	expect ? 1003	ReqAcct "46 0 46 74 1000 1074"
 } -start
 
 client c1 {


More information about the varnish-commit mailing list