BUG/MEDIUM: mux-h2/htx: Respect the channel's reserve

When data are pushed in the channel's buffer, in h2_rcv_buf(), the mux-h2 must
respect the reserve if the flag CO_RFL_KEEP_RSV is set. In HTX, because the
stream-interface always sees the buffer as full, there is no other way to know
the reserve must be respected.

This patch must be backported to 1.9.
diff --git a/src/mux_h2.c b/src/mux_h2.c
index 20ff988..acc38e8 100644
--- a/src/mux_h2.c
+++ b/src/mux_h2.c
@@ -5051,7 +5051,12 @@
 		}
 
 		buf_htx = htx_from_buf(buf);
-		count = htx_free_space(buf_htx);
+		count = htx_free_data_space(buf_htx);
+		if (flags & CO_RFL_KEEP_RSV) {
+			if (count <= global.tune.maxrewrite)
+				goto end;
+			count -= global.tune.maxrewrite;
+		}
 
 		htx_ret = htx_xfer_blks(buf_htx, h2s_htx, count, HTX_BLK_EOM);