X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fmain.c;h=cee559694041e0399cad0dacab47321126ac83c4;hb=9fe2dfd3c4df334607083f989346090e1051a565;hp=9c2f3c56483d3a0c7fa09c8ee60b218577ccd5f8;hpb=89c44a872117fb8f64d38cbccf8f36776f2623f6;p=src%2Fapp-framework-binder.git diff --git a/src/main.c b/src/main.c index 9c2f3c56..cee55969 100644 --- a/src/main.c +++ b/src/main.c @@ -41,7 +41,6 @@ #include "afb-hsrv.h" #include "afb-context.h" #include "afb-hreq.h" -#include "sig-monitor.h" #include "jobs.h" #include "afb-session.h" #include "verbose.h" @@ -100,11 +99,10 @@ static void start_list(struct afb_config_list *list, +--------------------------------------------------------- */ static void exit_handler() { - /* TODO: check whether using SIGHUP isn't better */ if (SELF_PGROUP) - killpg(0, SIGKILL); + killpg(0, SIGHUP); else if (childpid > 0) - killpg(childpid, SIGKILL); + killpg(childpid, SIGHUP); } /*---------------------------------------------------------- @@ -397,7 +395,7 @@ static int execute_command() | job for starting the daemon +--------------------------------------------------------- */ -static void start(int signum) +static void start() { struct afb_hsrv *hsrv; @@ -413,7 +411,7 @@ static void start(int signum) goto error; } - afb_api_so_set_timeout(config->apiTimeout); + afb_apis_set_timeout(config->apiTimeout); start_list(config->dbus_clients, afb_api_dbus_add_client, "the afb-dbus client"); start_list(config->ws_clients, afb_api_ws_add_client, "the afb-websocket client"); start_list(config->ldpaths, afb_api_so_add_pathset, "the binding path set"); @@ -495,27 +493,9 @@ int main(int argc, char *argv[]) /* ignore any SIGPIPE */ signal(SIGPIPE, SIG_IGN); - /* start */ - if (sig_monitor_init() < 0) { - ERROR("failed to initialise signal handlers"); - return 1; - } - - /* init job processing */ - if (jobs_init(3, 1, 20) < 0) { - ERROR("failed to initialise threading"); - return 1; - } - - /* queue the start job */ - if (jobs_queue0(NULL, 0, start) < 0) { - ERROR("failed to start runnning jobs"); - return 1; - } - - /* turn as processing thread */ - jobs_add_me(); - WARNING("hoops returned from jobs_add_me! [report bug]"); - return 0; + /* enter job processing */ + jobs_start(3, 0, 50, start); + WARNING("hoops returned from jobs_enter! [report bug]"); + return 1; }