X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fconfig.c;h=bd03b6ff841f0a9479b012db1bf5f59c79ec0930;hb=eaa8c24c7cf95a3cefdae961a0bf935d5a84f61a;hp=e30a687b2d2326f288ee3ca4e8ab6a3e523a1a00;hpb=f51e658a95edeb35b7b3027f7f066d3af0de04c7;p=src%2Fapp-framework-binder.git diff --git a/src/config.c b/src/config.c index e30a687b..bd03b6ff 100644 --- a/src/config.c +++ b/src/config.c @@ -21,13 +21,11 @@ */ - #include "../include/local-def.h" #include #include #include - #define AFB_CONFIG_JTYPE "AFB_config" PUBLIC char *ERROR_LABEL[]=ERROR_LABEL_DEF; @@ -69,13 +67,21 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { else session->config->httpdPort=cliconfig->httpdPort; // default Plugin API timeout - if (cliconfig->apiTimeout == 0) session->config->apiTimeout=0; + if (cliconfig->apiTimeout == 0) session->config->apiTimeout=DEFLT_API_TIMEOUT; else session->config->apiTimeout=cliconfig->apiTimeout; + + // default AUTH_TOKEN + if (cliconfig->token == NULL) session->config->token= DEFLT_AUTH_TOKEN; + else session->config->token=cliconfig->token; // cache timeout default one hour - if (cliconfig->cacheTimeout == 0) session->config->cacheTimeout=3600; + if (cliconfig->cacheTimeout == 0) session->config->cacheTimeout=DEFLT_CACHE_TIMEOUT; else session->config->cacheTimeout=cliconfig->cacheTimeout; + // cache timeout default one hour + if (cliconfig->cntxTimeout == 0) session->config->cntxTimeout=DEFLT_CNTX_TIMEOUT; + else session->config->cntxTimeout=cliconfig->cntxTimeout; + if (cliconfig->rootdir == NULL) { session->config->rootdir = getenv("AFBDIR"); if (session->config->rootdir == NULL) { @@ -102,16 +108,10 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { session->config->rootapi= cliconfig->rootapi; } - if (cliconfig->smack == NULL) { - session->config->smack = "demo"; + if (cliconfig->ldpaths == NULL) { + session->config->ldpaths = PLUGIN_INSTALL_DIR; } else { - session->config->smack= cliconfig->smack; - } - - if (cliconfig->smack == NULL) { - session->config->plugins = "all"; - } else { - session->config->plugins= cliconfig->plugins; + session->config->ldpaths= cliconfig->ldpaths; } // if no session dir create a default path from rootdir @@ -180,14 +180,14 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { session->config->rootapi = strdup (json_object_get_string (value)); } - if (!cliconfig->smack && json_object_object_get_ex (AFBConfig, "smack", &value)) { - session->config->smack = strdup (json_object_get_string (value)); - } - - if (!cliconfig->plugins && json_object_object_get_ex (AFBConfig, "plugins", &value)) { - session->config->plugins = strdup (json_object_get_string (value)); + if (!cliconfig->ldpaths && json_object_object_get_ex (AFBConfig, "plugins", &value)) { + session->config->ldpaths = strdup (json_object_get_string (value)); } + if (!cliconfig->setuid && json_object_object_get_ex (AFBConfig, "setuid", &value)) { + session->config->setuid = strdup (json_object_get_string (value)); + } + if (!cliconfig->sessiondir && json_object_object_get_ex (AFBConfig, "sessiondir", &value)) { session->config->sessiondir = strdup (json_object_get_string (value)); } @@ -200,9 +200,6 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { session->config->httpdPort = json_object_get_int (value); } - if (!cliconfig->setuid && json_object_object_get_ex (AFBConfig, "setuid", &value)) { - session->config->setuid = json_object_get_int (value); - } if (!cliconfig->localhostOnly && json_object_object_get_ex (AFBConfig, "localhostonly", &value)) { session->config->localhostOnly = json_object_get_int (value); @@ -216,6 +213,10 @@ PUBLIC AFB_error configLoadFile (AFB_session * session, AFB_config *cliconfig) { session->config->apiTimeout = json_object_get_int (value); } + if (!cliconfig->cntxTimeout && json_object_object_get_ex (AFBConfig, "cntxtimeout", &value)) { + session->config->cntxTimeout = json_object_get_int (value); + } + // cacheTimeout is an integer but HTTPd wants it as a string snprintf (cacheTimeout, sizeof (cacheTimeout),"%d", session->config->cacheTimeout); session->cacheTimeout = cacheTimeout; // httpd uses cacheTimeout string version @@ -244,15 +245,15 @@ PUBLIC void configStoreFile (AFB_session * session) { json_object_object_add (AFBConfig, "rootdir" , json_object_new_string (session->config->rootdir)); json_object_object_add (AFBConfig, "rootapi" , json_object_new_string (session->config->rootapi)); json_object_object_add (AFBConfig, "rootbase" , json_object_new_string (session->config->rootbase)); - json_object_object_add (AFBConfig, "smack" , json_object_new_string (session->config->smack)); - json_object_object_add (AFBConfig, "plugins" , json_object_new_string (session->config->plugins)); + json_object_object_add (AFBConfig, "plugins" , json_object_new_string (session->config->ldpaths)); json_object_object_add (AFBConfig, "sessiondir" , json_object_new_string (session->config->sessiondir)); json_object_object_add (AFBConfig, "pidfile" , json_object_new_string (session->config->pidfile)); + json_object_object_add (AFBConfig, "setuid" , json_object_new_string (session->config->setuid)); json_object_object_add (AFBConfig, "httpdPort" , json_object_new_int (session->config->httpdPort)); - json_object_object_add (AFBConfig, "setuid" , json_object_new_int (session->config->setuid)); json_object_object_add (AFBConfig, "localhostonly" , json_object_new_int (session->config->localhostOnly)); json_object_object_add (AFBConfig, "cachetimeout" , json_object_new_int (session->config->cacheTimeout)); json_object_object_add (AFBConfig, "apitimeout" , json_object_new_int (session->config->apiTimeout)); + json_object_object_add (AFBConfig, "cntxtimeout" , json_object_new_int (session->config->cntxTimeout)); err = json_object_to_file (session->config->configfile, AFBConfig); json_object_put (AFBConfig); // decrease reference count to free the json object @@ -293,9 +294,6 @@ PUBLIC AFB_session *configInit () { } verbose = verbosesav; - // Load Plugins - initPlugins (session); - return (session); }