diff options
Diffstat (limited to 'src/ipcpd/udp')
| -rw-r--r-- | src/ipcpd/udp/main.c | 22 | 
1 files changed, 8 insertions, 14 deletions
diff --git a/src/ipcpd/udp/main.c b/src/ipcpd/udp/main.c index 9960f880..522a2b16 100644 --- a/src/ipcpd/udp/main.c +++ b/src/ipcpd/udp/main.c @@ -1137,17 +1137,12 @@ int main(int    argc,                  goto fail_data_init;          } -        if (ipcp_boot() < 0) { -                log_err("Failed to boot IPCP."); -                goto fail_boot; +        if (ipcp_start() < 0) { +                log_err("Failed to start IPCP."); +                goto fail_start;          } -        if (ipcp_create_r(0)) { -                log_err("Failed to notify IRMd we are initialized."); -                goto fail_create_r; -        } - -        ipcp_shutdown(); +        ipcp_sigwait();          if (ipcp_get_state() == IPCP_SHUTDOWN) {                  for (i = 0; i < IPCP_UDP_RD_THR; ++i) @@ -1163,19 +1158,18 @@ int main(int    argc,                  pthread_join(udp_data.mgmt_handler, NULL);          } +        ipcp_stop(); +          ipcp_fini();          udp_data_fini();          exit(EXIT_SUCCESS); - fail_create_r: -        ipcp_set_state(IPCP_NULL); -        ipcp_shutdown(); - fail_boot: + + fail_start:          udp_data_fini();   fail_data_init:          ipcp_fini();   fail_init: -        ipcp_create_r(-1);          exit(EXIT_FAILURE);  }  | 
