Cameron Simpson reported an annoying case where haproxy simply reports
"Error(s) found in configuration file" when the file is not found or
not readable.
Fortunately the parsing function still returns -1 in case of open
error, so we're able to detect the issue from the caller and report
the corresponding errno message.
init_default_instance();
for (i = 0; i < cfg_nbcfgfiles; i++) {
- err_code |= readcfgfile(cfg_cfgfile[i]);
+ int ret;
+
+ ret = readcfgfile(cfg_cfgfile[i]);
+ if (ret == -1) {
+ Alert("Could not open configuration file %s : %s\n",
+ cfg_cfgfile[i], strerror(errno));
+ exit(1);
+ }
+ err_code |= ret;
if (err_code & (ERR_ABORT|ERR_FATAL))
Alert("Error(s) found in configuration file : %s\n", cfg_cfgfile[i]);
if (err_code & ERR_ABORT)