BUG/MEDIUM: cache: does not cache if no Content-Length

In the case of Transfer-Encoding: chunked, there is no Content-Length
which causes the cache to allocate a too small shctx row for the data.

It's not possible to allocate a shctx row for the chunks, we need to be
able to allocate on-the-fly the shctx blocks during the data transfer.
diff --git a/src/cache.c b/src/cache.c
index 15e2210..02bb0e0 100644
--- a/src/cache.c
+++ b/src/cache.c
@@ -368,6 +368,10 @@
 	if (!(txn->req.flags & HTTP_MSGF_VER_11))
 		goto out;
 
+	/* does not cache if Content-Length unknown */
+	if (!(msg->flags & HTTP_MSGF_CNT_LEN))
+		goto out;
+
 	/* cache only GET method */
 	if (txn->meth != HTTP_METH_GET)
 		goto out;