[7.4] 698ba0500 http2: New H2_ERROR_MATCH() helper macro

Dridi Boukelmoune dridi.boukelmoune at gmail.com
Thu Apr 4 14:30:11 UTC 2024


commit 698ba0500f06e22229c706e63d231d379ffa32fc
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date:   Thu Mar 28 15:56:21 2024 +0100

    http2: New H2_ERROR_MATCH() helper macro

diff --git a/bin/varnishd/http2/cache_http2.h b/bin/varnishd/http2/cache_http2.h
index 5962ddb51..9fbb58443 100644
--- a/bin/varnishd/http2/cache_http2.h
+++ b/bin/varnishd/http2/cache_http2.h
@@ -50,6 +50,9 @@ struct h2_error_s {
 
 typedef const struct h2_error_s *h2_error;
 
+#define H2_ERROR_MATCH(err, target)			\
+	((err) != NULL && (err)->val == (target)->val)
+
 #define H2_CUSTOM_ERRORS
 #define H2EC1(U,v,g,r,d) extern const struct h2_error_s H2CE_##U[1];
 #define H2EC2(U,v,g,r,d) extern const struct h2_error_s H2SE_##U[1];
diff --git a/bin/varnishd/http2/cache_http2_send.c b/bin/varnishd/http2/cache_http2_send.c
index d642e31df..d1418757c 100644
--- a/bin/varnishd/http2/cache_http2_send.c
+++ b/bin/varnishd/http2/cache_http2_send.c
@@ -447,6 +447,6 @@ H2_Send(struct worker *wrk, struct h2_req *r2, h2_frame ftyp, uint8_t flags,
 	h2_send(wrk, r2, ftyp, flags, len, ptr, counter);
 
 	h2e = h2_errcheck(r2, r2->h2sess);
-	if (h2e != NULL && h2e->val == H2SE_CANCEL->val)
+	if (H2_ERROR_MATCH(h2e, H2SE_CANCEL))
 		H2_Send_RST(wrk, r2->h2sess, r2, r2->stream, h2e);
 }


More information about the varnish-commit mailing list