/* Called from the child to send an error message up the pipe to the waiting parent. */ static void send_error_show_help(int fd, int exit_status, const char *file, const char *topic, ...) { va_list ap; orte_odls_pipe_err_msg_t msg; msg.fatal = true; msg.exit_status = exit_status; /* Send it */ va_start(ap, topic); write_help_msg(fd, &msg, file, topic, ap); va_end(ap); exit(exit_status); }
/* Called from the child to send a warning show_help message up the pipe to the waiting parent. */ static int send_warn_show_help(int fd, const char *file, const char *topic, ...) { int ret; va_list ap; pipe_err_msg_t msg; msg.fatal = false; msg.exit_status = 0; /* ignored */ /* Send it */ va_start(ap, topic); ret = write_help_msg(fd, &msg, file, topic, ap); va_end(ap); return ret; }