BUG/MINOR: filters: Detect cache+compression config on legacy HTTP streams

On legacy HTTP streams, it is forbidden to use the compression with the
cache. When the compression filter is explicitly specified, the detection works
as expected and such configuration are rejected at startup. But it does not work
when the compression filter is implicitly defined. To fix the bug, the implicit
declaration of the compression filter is checked first, before calling .check()
callback of each filters.

This patch should be backported to 1.9.
This commit is contained in:
Christopher Faulet 2019-01-07 15:03:22 +01:00
parent 1d3613a031
commit ff17b183fe

View File

@ -332,11 +332,11 @@ flt_check(struct proxy *proxy)
struct flt_conf *fconf;
int err = 0;
err += check_implicit_http_comp_flt(proxy);
list_for_each_entry(fconf, &proxy->filter_configs, list) {
if (fconf->ops->check)
err += fconf->ops->check(proxy, fconf);
}
err += check_implicit_http_comp_flt(proxy);
return err;
}