From c4ecd0fee0f0cef485a223d6e638a56bafd5bbda Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sat, 1 Dec 2018 04:20:53 +0100 Subject: [PATCH] webfs: write headers individually so they are not limited in sum to the 8k buffer --- sys/src/cmd/webfs/http.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/src/cmd/webfs/http.c b/sys/src/cmd/webfs/http.c index 668d474f3..c279aeafe 100644 --- a/sys/src/cmd/webfs/http.c +++ b/sys/src/cmd/webfs/http.c @@ -683,7 +683,13 @@ http(char *m, Url *u, Key *shdr, Buq *qbody, Buq *qpost) /* only send proxy headers when establishing tunnel */ if(h->tunnel && cistrncmp(k->key, "Proxy-", 6) != 0) continue; - n += snprint(buf+n, sizeof(buf)-2 - n, "%s: %s\r\n", k->key, k->val); + if(n > 0){ + if(debug) + fprint(2, "-> %.*s", n, buf); + if(hwrite(h, buf, n) != n) + goto Badflush; + } + n = snprint(buf, sizeof(buf)-2, "%s: %s\r\n", k->key, k->val); } n += snprint(buf+n, sizeof(buf)-n, "\r\n"); if(debug)