// // Created by xajhu on 2021/6/29 0029. // #include #include "cmdline.h" #include "task_manager.h" #include "init.h" #include "user_info.h" #include "pppoe_session.h" #include "lwip/sys.h" #include "lwip/tcpip.h" static void test_init(void *arg) { /* remove compiler warning */ sys_sem_t *init_sem; init_sem = (sys_sem_t *)arg; srand((unsigned int)time(0)); sys_sem_signal(init_sem); } static void lwip_init_env() { err_t err; sys_sem_t init_sem; err = sys_sem_new(&init_sem, 0); LWIP_UNUSED_ARG(err); tcpip_init(test_init, &init_sem); sys_sem_wait(&init_sem); sys_sem_free(&init_sem); } int main(int argc, char **argv) { uv_setup_args(argc, argv); setvbuf(stdout, NULL, _IONBF, 0); menu_run(argc, argv); lwip_init_env(); user_info_init(); pppoe_session_init(); task_manager_run(); user_uninit(); return 0; }