mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-13 15:04:42 +00:00
BUG/MINOR: config: Be aware of the HTX during the check of mux protocols
Because the HTX is still experimental, we must add special cases during the configuration check to be sure it is not enabled on a proxy with incompatible options. Here, for HTX proxies, when a mux protocol is specified on a bind line or a server line, we must force the HTX mode (PROTO_MODE_HTX). Concretely, H2 is the only mux protocol that can be forced. And it doesn't yet support the HTX. So forcing the H2 on an HTX proxy will always fail.
This commit is contained in:
parent
55dec0dca4
commit
7ff4f14204
@ -3321,6 +3321,10 @@ out_uri_auth_compat:
|
||||
list_for_each_entry(bind_conf, &curproxy->conf.bind, by_fe) {
|
||||
int mode = (1 << (curproxy->mode == PR_MODE_HTTP));
|
||||
|
||||
/* Special case for HTX because it is still experimental */
|
||||
if (curproxy->options2 & PR_O2_USE_HTX)
|
||||
mode = PROTO_MODE_HTX;
|
||||
|
||||
if (!bind_conf->mux_proto)
|
||||
continue;
|
||||
if (!(bind_conf->mux_proto->mode & mode)) {
|
||||
@ -3335,6 +3339,10 @@ out_uri_auth_compat:
|
||||
for (newsrv = curproxy->srv; newsrv; newsrv = newsrv->next) {
|
||||
int mode = (1 << (curproxy->mode == PR_MODE_HTTP));
|
||||
|
||||
/* Special case for HTX because it is still experimental */
|
||||
if (curproxy->options2 & PR_O2_USE_HTX)
|
||||
mode = PROTO_MODE_HTX;
|
||||
|
||||
if (!newsrv->mux_proto)
|
||||
continue;
|
||||
if (!(newsrv->mux_proto->mode & mode)) {
|
||||
|
Loading…
Reference in New Issue
Block a user