MINOR: server: move send-proxy* incompatibility check in _srv_check_proxy_mode()

This way the check is executed no matter the section where the server
is declared (ie: not only under the "ring" section)
This commit is contained in:
Aurelien DARRAGON 2025-06-27 12:03:30 +02:00
parent 14d68c2ff7
commit c7c6d8d295
2 changed files with 8 additions and 10 deletions

View File

@ -3398,6 +3398,14 @@ static int _srv_check_proxy_mode(struct server *srv, char postparse)
err_code |= ERR_ALERT | ERR_FATAL;
}
}
if (srv->proxy->mode != PR_MODE_TCP && srv->proxy->mode != PR_MODE_HTTP &&
srv->pp_opts) {
srv->pp_opts = 0;
ha_warning("'send-proxy*' server option is unsupported there, ignoring it\n");
err_code |= ERR_WARN;
}
out:
if (srv->conf.file)
reset_usermsgs_ctx();

View File

@ -1092,16 +1092,6 @@ int cfg_parse_ring(const char *file, int linenum, char **args, int kwm)
if (err_code & ERR_CODE)
goto err;
/* FIXME: ideally this check should be performed during server postparsing
* for all proxies where this option is unsupported, but for now we lack
* server postparsing rules for sinks so let's put that here
*/
if (cfg_sink->forward_px->srv && cfg_sink->forward_px->srv->pp_opts) {
cfg_sink->forward_px->srv->pp_opts = 0;
ha_warning("parsing [%s:%d] : 'send-proxy*' server option is unsupported there, ignoring it\n", file, linenum);
err_code |= ERR_WARN;
}
}
else if (strcmp(args[0],"timeout") == 0) {
if (!cfg_sink || !cfg_sink->forward_px) {