[master] 2658f51cf vcl: Check all discard flags before vcl.discard

Nils Goroll nils.goroll at uplex.de
Tue Jan 12 15:34:07 UTC 2021


commit 2658f51cf6fa0a87a4c3b87c421374ed2ed798fa
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date:   Tue Dec 8 18:55:02 2020 +0100

    vcl: Check all discard flags before vcl.discard
    
    Suggested by slink.

diff --git a/bin/varnishd/mgt/mgt_vcl.c b/bin/varnishd/mgt/mgt_vcl.c
index c934c8114..d852ae375 100644
--- a/bin/varnishd/mgt/mgt_vcl.c
+++ b/bin/varnishd/mgt/mgt_vcl.c
@@ -777,10 +777,14 @@ mgt_vcl_discard_clear(void)
 static void v_matchproto_(cli_func_t)
 mcf_vcl_discard(struct cli *cli, const char * const *av, void *priv)
 {
+	const struct vclprog *vp;
 
 	(void)priv;
 
 	assert(VTAILQ_EMPTY(&discardhead));
+	VTAILQ_FOREACH(vp, &vclhead, list)
+		AZ(vp->discard);
+
 	for (av += 2; *av != NULL; av++) {
 		if (mgt_vcl_discard_mark(cli, *av) <= 0) {
 			mgt_vcl_discard_clear();


More information about the varnish-commit mailing list