mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-07 15:47:01 +02:00
BUG/MINOR: mworker: section ignored in discovery after a post_section_parser
When a new section is discovered, the post_section_parser of the previous section is called. However in the new master-worker mode the discovery mode will skip the post_section_parser. But instead of trying to parse the current section keyword after that, it would skip completely the current line. This is a minor bug since there isn't a lot of section with post_section_parser, and not a lot of section to parse in discovery mode. But this could be reproduced like this: global expose-deprecated-directives resolvers res parse-resolv-conf program foo command sleep 10 program bar command sleep 10 Ths 'resolvers' section has a post_section_parser which will be ignored in discovery mode with the consequence of ignoring the first program section. This must be backported in 3.1.
This commit is contained in:
parent
731340afbd
commit
2c270a05f0
@ -2578,7 +2578,7 @@ int parse_cfg(const struct cfgfile *cfg)
|
|||||||
|
|
||||||
/* don't call post_section_parser in MODE_DISCOVERY, except program section */
|
/* don't call post_section_parser in MODE_DISCOVERY, except program section */
|
||||||
if ((global.mode & MODE_DISCOVERY) && (strcmp(pcs->section_name, "program") != 0))
|
if ((global.mode & MODE_DISCOVERY) && (strcmp(pcs->section_name, "program") != 0))
|
||||||
continue;
|
goto section_parser;
|
||||||
|
|
||||||
status = pcs->post_section_parser();
|
status = pcs->post_section_parser();
|
||||||
err_code |= status;
|
err_code |= status;
|
||||||
@ -2590,6 +2590,7 @@ int parse_cfg(const struct cfgfile *cfg)
|
|||||||
}
|
}
|
||||||
pcs = NULL;
|
pcs = NULL;
|
||||||
|
|
||||||
|
section_parser:
|
||||||
if (!cs) {
|
if (!cs) {
|
||||||
/* ignore unknown section names during the first read in MODE_DISCOVERY */
|
/* ignore unknown section names during the first read in MODE_DISCOVERY */
|
||||||
if (global.mode & MODE_DISCOVERY)
|
if (global.mode & MODE_DISCOVERY)
|
||||||
|
Loading…
Reference in New Issue
Block a user