/** * Show running configuration. */ static int cmd_show_configuration(struct lldpctl_conn_t *conn, struct writer *w, struct cmd_env *env, void *arg) { log_debug("lldpctl", "show running configuration"); display_configuration(conn, w); return 1; }
int main(int argc, char *argv[]) { int fd = -1; pid_t pgid = -1; server_conf_t *conf; int log_priority = LOG_INFO; #ifndef NDEBUG log_priority = LOG_DEBUG; #endif /* NDEBUG */ log_set_file(stderr, log_priority, 0); conf = create_server_conf(); tp_global = conf->tp; process_cmdline(conf, argc, argv); if (!conf->enableForeground) { begin_daemonize(&fd, &pgid); } process_config(conf); setup_coredump(conf); setup_signals(conf); if (!(environ = get_sane_env())) { log_err(ENOMEM, "Unable to create sanitized environment"); } if (conf->enableVerbose) { display_configuration(conf); } if (list_is_empty(conf->objs)) { log_err(0, "Configuration \"%s\" has no consoles defined", conf->confFileName); } if (conf->tStampMinutes > 0) { schedule_timestamp(conf); } create_listen_socket(conf); if (!conf->enableForeground) { if (conf->syslogFacility > 0) { log_set_syslog(argv[0], conf->syslogFacility); } if (conf->logFileName) { open_daemon_logfile(conf); } else { log_set_file(NULL, 0, 0); } end_daemonize(fd); } log_msg(LOG_NOTICE, "Starting ConMan daemon %s (pid %d)", VERSION, (int) getpid()); #if WITH_FREEIPMI ipmi_init(conf->numIpmiObjs); #endif /* WITH_FREEIPMI */ open_objs(conf); mux_io(conf); #if WITH_FREEIPMI ipmi_fini(); #endif /* WITH_FREEIPMI */ destroy_server_conf(conf); if (pgid > 0) { if (kill(-pgid, SIGTERM) < 0) { log_msg(LOG_WARNING, "Unable to terminate process group ID %d: %s", pgid, strerror(errno)); } } log_msg(LOG_NOTICE, "Stopping ConMan daemon %s (pid %d)", VERSION, (int) getpid()); exit(0); }