int init_agent(agent_t *agent) { init_poll(agent); create_listen_sockets(agent); init_controller_listener(&agent->controller); /* add controller socket to POLL set */ agent->listen_fds.event_controller.events = POLLIN; agent->listen_fds.event_controller.data.ptr = &agent->listen_fds.controller_message_event; agent->listen_fds.controller_message_event.type = CONTROLLER_MESSAGE; agent->listen_fds.controller_message_event.fd = agent->controller.port; if( epoll_ctl(agent->event_pool, EPOLL_CTL_ADD, agent->controller.sock, &agent->listen_fds.event_controller)) { perror(""); printf("%s %d\n", __FILE__, __LINE__); exit(1); } init_discovery(&agent->discovery); return EXIT_SUCCESS; }
//----------------------------------------------------------------------------- // initialize the network table and run discovery void init_network() { init_routing(); init_discovery(); }