+ ParseArguments(argc, argv);
+
+ //Open the system log
+ openlog("mctxserv", LOG_PID | LOG_PERROR, LOG_USER);
+ Log(LOGINFO, "Server started");
+ // signal handler
+ //TODO: Make this work
+ /*
+ int signals[] = {SIGINT, SIGSEGV, SIGTERM};
+ for (int i = 0; i < sizeof(signals)/sizeof(int); ++i)
+ {
+ signal(signals[i], SignalHandler);
+ }
+ */
+ Sensor_Init();
+ Actuator_Init();
+ //Sensor_StartAll("test");
+ //Actuator_StartAll("test");
+ const char *ret;
+ if ((ret = Control_SetMode(CONTROL_START, "test")) != NULL)
+ Fatal("Control_SetMode failed with '%s'", ret);
+
+ // run request thread in the main thread
+ FCGI_RequestLoop(NULL);
+
+ if ((ret = Control_SetMode(CONTROL_STOP, "test")) != NULL)
+ Fatal("Control_SetMode failed with '%s'", ret);
+ //Sensor_StopAll();
+ //Actuator_StopAll();
+
+ Cleanup();