[MINOR] http: rely on proxy->acl_requires to allocate hdr_idx

Right now only HTTP proxies may use HTTP headers in ACLs, but
when this evolves, we'll need to be able to allocate the hdr_idx
on demand. The solution consists in allocating it only when it is
certain that at least one ACL requires HTTP parsing, regardless
of the mode the proxy is in. This is what is achieved by this
patch.
This commit is contained in:
Willy Tarreau 2009-07-10 23:52:51 +02:00
parent a9fb08317f
commit bf2886274c

View File

@ -281,8 +281,13 @@ int event_accept(int fd) {
memset(txn->rsp.cap, 0, p->nb_rsp_cap*sizeof(char *));
}
}
if (p->acl_requires & ACL_USE_L7_ANY) {
/* we have to allocate header indexes only if we know
* that we may make use of them. This of course includes
* (mode == PR_MODE_HTTP).
*/
txn->hdr_idx.size = MAX_HTTP_HDR;
if ((txn->hdr_idx.v = pool_alloc2(p->hdr_idx_pool)) == NULL)