static void watchdog_init(void) { // Initialize watchdog_table if neccessary if (watchdog_table.sht_ht == NULL) { if(sht_init(&watchdog_table, 256, free)) { log_error("watchdog: sht_init failed"); } } return; }
int server_init() { server_function_t *func; /* * Don't start the server if server_socket is empty */ if (!cf_control_socket) { log_debug("server_init: server_socket is empty: exit"); return 0; } /* * Load function table */ if (sht_init(&server_function_table, FUNC_BUCKETS, NULL)) { log_die(EX_SOFTWARE, "server_init: sht_init failed"); } for (func = server_functions; func->sf_name; ++func) { if (sht_insert(&server_function_table, func->sf_name, func)) { log_die(EX_SOFTWARE, "server_init: sht_insert failed"); } } /* * Create server socket */ server_socket = sock_listen(cf_control_socket, BACKLOG); if (server_socket == -1) { log_die(EX_SOFTWARE, "server_init: sock_listen failed"); } /* * Start server thread */ if (util_thread_create(&server_thread, server_main, NULL)) { log_error("server_init: util_thread_create failed"); return -1; } return 0; }