[MEDIUM] http request: simplify POST length detection

We can now rely on the pre-parsed content-length and transfer-encoding
to find what the supposed body length will be.
diff --git a/src/proto_http.c b/src/proto_http.c
index a7b2975..c7e9787 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -2649,38 +2649,20 @@
 				goto end_check_maybe_wait_for_body;
 		}
 
-		if (likely(len > s->be->url_param_post_limit)) {
-			/* nothing to do, we got enough */
-		} else {
+		if (likely(len <= s->be->url_param_post_limit)) {
 			/* limit implies we are supposed to need this many bytes
-			 * to find the parameter. Let's see how many bytes we can wait for.
+			 * to find the parameter. Let's see how many bytes we can
+			 * wait for.
 			 */
-			long long hint = len;
-			struct hdr_ctx ctx;
-			ctx.idx = 0;
-			http_find_header2("Transfer-Encoding", 17, msg->sol, &txn->hdr_idx, &ctx);
-			if (ctx.idx && ctx.vlen >= 7 && strncasecmp(ctx.line+ctx.val, "chunked", 7) == 0) {
+			if (txn->flags & TX_REQ_TE_CHNK) {
 				buffer_dont_connect(req);
 				req->analysers |= AN_REQ_HTTP_BODY;
-			}
-			else {
-				ctx.idx = 0;
-				http_find_header2("Content-Length", 14, msg->sol, &txn->hdr_idx, &ctx);
-				/* now if we have a length, we'll take the hint */
-				if (ctx.idx) {
-					/* We have Content-Length */
-					if (strl2llrc(ctx.line+ctx.val,ctx.vlen, &hint))
-						hint = 0;         /* parse failure, untrusted client */
-					else {
-						if (hint > 0)
-							msg->hdr_content_len = hint;
-						else
-							hint = 0; /* bad client, sent negative length */
-					}
-				}
+			} else {
+				long long hint = txn->req.hdr_content_len;
 				/* but limited to what we care about, maybe we don't expect any entity data (hint == 0) */
 				if (s->be->url_param_post_limit < hint)
 					hint = s->be->url_param_post_limit;
+
 				/* now do we really need to buffer more data? */
 				if (len < hint) {
 					buffer_dont_connect(req);