This patch is a part of series to reintroduce the program support in the new
master-worker architecture.
Master process launches external programs, so it needs to read program
section. Thus, it should be parsed in MODE_DISCOVERY. Worker does not need
program settings, so let's check the runtime mode in cfg_parse_program. Worker
should always skip this section.
struct mworker_proc *child;
int err_code = 0;
+ if (!(global.mode & MODE_DISCOVERY))
+ return err_code;
+
if (strcmp(args[0], "program") == 0) {
if (alertif_too_many_args(1, file, linenum, args, &err_code)) {
err_code |= ERR_ABORT;
int err_code = 0;
struct mworker_proc *child;
+ if (!(global.mode & MODE_DISCOVERY))
+ return err_code;
+
list_for_each_entry(child, &proc_list, list) {
if (child->reloads == 0 && (child->options & PROC_O_TYPE_PROG)) {
if (child->command == NULL) {