MEDIUM: acl: use temp_pattern to store any integer-type information

All ACL fetches which return integer value now store the result into
the temporary pattern struct. All ACL matches which rely on integer
also get their value there.

Note: the pattern data types are not set right now.
diff --git a/src/proto_http.c b/src/proto_http.c
index f45c514..133d916 100644
--- a/src/proto_http.c
+++ b/src/proto_http.c
@@ -7919,7 +7919,7 @@
 	len = txn->rsp.sl.st.c_l;
 	ptr = txn->rsp.sol + txn->rsp.sl.st.c;
 
-	test->i = __strl2ui(ptr, len);
+	temp_pattern.data.integer = __strl2ui(ptr, len);
 	test->flags = ACL_TEST_F_VOL_1ST;
 	return 1;
 }
@@ -7999,7 +7999,7 @@
 
 	/* Same optimization as url_ip */
 	url2sa(txn->req.sol + txn->req.sl.rq.u, txn->req.sl.rq.u_l, &l4->req->cons->addr.to);
-	test->i = ntohs(((struct sockaddr_in *)&l4->req->cons->addr.to)->sin_port);
+	temp_pattern.data.integer = ntohs(((struct sockaddr_in *)&l4->req->cons->addr.to)->sin_port);
 
 	if (px->options & PR_O_HTTP_PROXY)
 		l4->flags |= SN_ADDR_SET;
@@ -8093,7 +8093,7 @@
 	while (http_find_header2(expr->arg.str, expr->arg_len, sol, idx, &ctx))
 		cnt++;
 
-	test->i = cnt;
+	temp_pattern.data.integer = cnt;
 	test->flags = ACL_TEST_F_VOL_HDR;
 	return 1;
 }
@@ -8154,7 +8154,7 @@
 	if (http_find_header2(expr->arg.str, expr->arg_len, sol, idx, ctx)) {
 		test->flags |= ACL_TEST_F_FETCH_MORE;
 		test->flags |= ACL_TEST_F_VOL_HDR;
-		test->i = strl2ic((char *)ctx->line + ctx->val, ctx->vlen);
+		temp_pattern.data.integer = strl2ic((char *)ctx->line + ctx->val, ctx->vlen);
 		return 1;
 	}