refactored verbosity
[src/app-framework-binder.git] / src / main.c
index b42f2ab..37183e7 100644 (file)
  * limitations under the License.
  */
 
-#include <syslog.h>
+#define _GNU_SOURCE
+#include <stdio.h>
+#include <string.h>
+#include <getopt.h>
 #include <setjmp.h>
 #include <signal.h>
-#include <getopt.h>
-#include <pwd.h>
-#include <pthread.h>
+#include <syslog.h>
+#include <fcntl.h>
 #include <sys/stat.h>
 #include <sys/types.h>
 
+#include "afb-plugin.h"
+
 #include "local-def.h"
 #include "afb-apis.h"
+#include "session.h"
+#include "verbose.h"
 
 #if !defined(PLUGIN_INSTALL_DIR)
 #error "you should define PLUGIN_INSTALL_DIR"
@@ -250,7 +256,7 @@ static void parse_arguments(int argc, char *argv[], AFB_session *session)
     switch (optc)
     {
      case SET_VERBOSE:
-       verbose = 1;
+       verbosity++;
        break;
 
     case SET_TCP_PORT:
@@ -271,19 +277,19 @@ static void parse_arguments(int argc, char *argv[], AFB_session *session)
     case SET_ROOT_DIR:
        if (optarg == 0) goto needValueForOption;
        session->config->rootdir   = optarg;
-       if (verbose) fprintf(stderr, "Forcing Rootdir=%s\n",session->config->rootdir);
+       if (verbosity) fprintf(stderr, "Forcing Rootdir=%s\n",session->config->rootdir);
        break;       
        
     case SET_ROOT_BASE:
        if (optarg == 0) goto needValueForOption;
        session->config->rootbase   = optarg;
-       if (verbose) fprintf(stderr, "Forcing Rootbase=%s\n",session->config->rootbase);
+       if (verbosity) fprintf(stderr, "Forcing Rootbase=%s\n",session->config->rootbase);
        break;
 
     case SET_ROOT_API:
        if (optarg == 0) goto needValueForOption;
        session->config->rootapi   = optarg;
-       if (verbose) fprintf(stderr, "Forcing Rootapi=%s\n",session->config->rootapi);
+       if (verbosity) fprintf(stderr, "Forcing Rootapi=%s\n",session->config->rootapi);
        break;
        
     case SET_ALIAS:
@@ -295,7 +301,7 @@ static void parse_arguments(int argc, char *argv[], AFB_session *session)
             } else {
               aliasdir[aliascount].path = optarg;
               aliasdir[aliascount].len  = strlen(aliasdir[aliascount].url);
-              if (verbose) fprintf(stderr, "Alias url=%s path=%s\n", aliasdir[aliascount].url, aliasdir[aliascount].path);
+              if (verbosity) fprintf(stderr, "Alias url=%s path=%s\n", aliasdir[aliascount].url, aliasdir[aliascount].path);
               aliascount++;
             }
        } else {
@@ -426,10 +432,10 @@ static void signalError(int signum)
        sigset_t sigset;
 
        // unlock signal to allow a new signal to come
-       sigemptyset(&sigset);
-       sigaddset(&sigset, signum);
-       sigprocmask(SIG_UNBLOCK, &sigset, 0);
        if (error_handler != NULL) {
+               sigemptyset(&sigset);
+               sigaddset(&sigset, signum);
+               sigprocmask(SIG_UNBLOCK, &sigset, 0);
                longjmp(*error_handler, signum);
        }
 }
@@ -548,7 +554,7 @@ int main(int argc, char *argv[])  {
   if (session->config->ldpaths) 
     afb_apis_add_pathset(session->config->ldpaths);
 
-  ctxStoreInit(CTX_NBCLIENTS);
+  ctxStoreInit(CTX_NBCLIENTS, session->config->cntxTimeout, afb_apis_count(), session->config->token);
 
   install_error_handlers();
 
@@ -576,19 +582,19 @@ int main(int argc, char *argv[])  {
        exit (1);
   }
 #endif
-  if (verbose) fprintf (stderr, "AFB: notice Init config done\n");
+  if (verbosity) fprintf (stderr, "AFB: notice Init config done\n");
 
   // ---- run in foreground mode --------------------
   if (session->foreground) {
 
-        if (verbose) fprintf (stderr,"AFB: notice Foreground mode\n");
+        if (verbosity) fprintf (stderr,"AFB: notice Foreground mode\n");
 
   } // end foreground
 
   // --------- run in background mode -----------
   if (session->background) {
 
-      if (verbose) printf ("AFB: Entering background mode\n");
+      if (verbosity) printf ("AFB: Entering background mode\n");
 
       daemonize(session);
 
@@ -600,7 +606,7 @@ int main(int argc, char *argv[])  {
 
 
   listenLoop(session);
-  if (verbose) printf ("\n---- Application Framework Binder Normal End ------\n");
+  if (verbosity) printf ("\n---- Application Framework Binder Normal End ------\n");
   exit(0);
 
 }