--- mqtt/src/mqttd.c 2012/04/11 15:08:27 1.2.2.1 +++ mqtt/src/mqttd.c 2012/04/24 08:06:09 1.2.2.5 @@ -9,6 +9,7 @@ io_enableDEBUG; cfg_root_t cfg; sessions_t Sessions; +pubs_t Pubs; sched_root_task_t *root; sqlite3 *acc, *pub; pthread_mutex_t mtx_sess, mtx_pub; @@ -43,7 +44,7 @@ sigHand(int sig) break; } - syslog(LOG_ERR, "Error:: can't reload #%d - %s", cfg_GetErrno(), cfg_GetError()); + ioLIBERR(cfg); case SIGTERM: ioDEBUG(1, "Terminate MQTT service in progress"); Kill++; @@ -68,6 +69,7 @@ main(int argc, char **argv) ait_val_t v; TAILQ_INIT(&Sessions); + TAILQ_INIT(&Pubs); strlcpy(szCfgName, DEFAULT_CONFIG, sizeof szCfgName); while ((ch = getopt(argc, argv, "hvbc:")) != -1) @@ -155,7 +157,7 @@ main(int argc, char **argv) goto end; } else - ioVERBOSE(1) printf("Start service in batch mode ...\n"); + ioDEBUG(1, "Start service in batch mode ..."); memset(&sa, 0, sizeof sa); sigemptyset(&sa.sa_mask); @@ -164,7 +166,7 @@ main(int argc, char **argv) sigaction(SIGTERM, &sa, NULL); sigaction(SIGCHLD, &sa, NULL); sigaction(SIGPIPE, &sa, NULL); - ioDEBUG(2, "Service is ready for start engine ..."); + ioDEBUG(2, "Service is ready for starting engine ..."); if ((sock = srv_Socket(&cfg)) == -1) { ret = 4; @@ -181,15 +183,16 @@ main(int argc, char **argv) } if (!(root = schedBegin())) { - printf("Error:: scheduler #%d - %s\n", sched_GetErrno(), sched_GetError()); + ioLIBERR(sched); ret = 6; goto end; } + /* go catch the cat ... */ Run(sock); schedEnd(&root); -end: +end: /* free all resources */ srv_Close(sock); call.CloseLOG(logg); call.ClosePUB(pub);