Diff for /mqtt/src/Attic/mqtt.c between versions 1.1.1.1.2.8 and 1.1.1.1.2.21

version 1.1.1.1.2.8, 2011/11/23 08:50:03 version 1.1.1.1.2.21, 2011/12/12 09:45:16
Line 1 Line 1
 #include "global.h"  #include "global.h"
 #include "rtlm.h"  #include "rtlm.h"
   #include "mqtt.h"
   
   
 sl_config cfg;  sl_config cfg;
   sqlite3 *acc, *pub;
   FILE *logg;
   extern char compiled[], compiledby[], compilehost[];
   static char szCfgName[MAXPATHLEN];
   int Verbose, Kill;
   
   struct tagArgs *args;
   
   
   static void
   Usage(void)
   {
           printf( " -= MQTT Client =- Publisher/Subscriber from ELWIX\n"
                   "=== %s@%s === Compiled: %s ===\n\n"
                   " Syntax: mqtt [options] <connect_to_broker[:port]> [value_for_publish]\n\n"
                   "\t-p <topic>\tPublish topic\n"
                   "\t-s <topic[|QoS]>\tSubscribe for this topic, if wish add different |QoS to topic\n"
                   "\t-q <QoS>\tQoS level (0-at most 1, 1-at least 1, 2-explicit 1)\n"
                   "\t-d\t\tSend duplicate message\n"
                   "\t-r\t\tRetain message from broker\n"
                   "\t-c <config>\tService config\n"
                   "\t-f\t\t'value_for_publish' is file instead text\n"
                   "\t-D\t\tDaemon mode\n"
                   "\t-v\t\tVerbose (more -vvv, more verbose)\n"
                   "\t-h\t\tHelp! This screen\n\n", 
                   compiledby, compilehost, compiled);
   }
   
   
 int  int
 main(int argc, char **argv)  main(int argc, char **argv)
 {  {
        sqlite3 *acc = NULL, *pub = NULL;        char ch, batch = 1, szStr[STRSIZ] = { 0 };
   
        if (LoadConfig("/etc/mqtt.conf", &cfg)) {        if (!(args = malloc(sizeof(struct tagArgs)))) {
                printf("Error:: Load config #%d - %s\n", cfg_GetErrno(), cfg_GetError());                printf("Error:: in arguments #%d - %s\n", errno, strerror(errno));
                 return 1;                  return 1;
         }          }
         if (!mqttLoadRTLM(&cfg, 0)) {  
                 printf("Error:: Can't load RTL ACC module\n");  
                 UnloadConfig(&cfg);  
                 return 2;  
         }  
         if (!mqttLoadRTLM(&cfg, 1)) {  
                 printf("Error:: Can't load RTL PUB module\n");  
                 mqttUnloadRTLM(0);  
                 UnloadConfig(&cfg);  
                 return 2;  
         }  
   
        acc = mqttOpenACC(&cfg);        strlcpy(szCfgName, DEFAULT_CONFIG, sizeof szCfgName);
        if (!acc)        while ((ch = getopt(argc, argv, "p:s:q:drc:fDvh")) != -1)
                goto end;                switch (ch) {
        pub = mqttOpenPUB(&cfg);                        case 'p':
        if (!pub)                                break;
                goto end;                        case 's':
                                 break;
                         case 'q':
                                 break;
                         case 'd':
                                 break;
                         case 'r':
                                 break;
                         case 'f':
                                 break;
                         case 'c':
                                 strlcpy(szCfgName, optarg, sizeof szCfgName);
                                 break;
                         case 'D':
                                 batch = 0;
                                 break;
                         case 'v':
                                 Verbose++;
                                 break;
                         case 'h':
                         default:
                                 free(args);
                                 Usage();
                                 return 1;
                 }
         argc -= optind;
         argv += optind;
   
        if (mqttMkDir(&cfg)) {        if (LoadConfig(szCfgName, &cfg)) {
                printf("Error:: in statedir #%d - %s\n", errno, strerror(errno));                printf("Error:: can't load #%d - %s\n", cfg_GetErrno(), cfg_GetError());
                goto end;                free(args);
                 return 1;
         }          }
   
         printf("success!\n");  
   
 end:  
         mqttClosePUB(pub);  
         mqttCloseACC(acc);  
         mqttUnloadRTLM(1);  
         mqttUnloadRTLM(0);  
         UnloadConfig(&cfg);          UnloadConfig(&cfg);
           free(args);
         return 0;          return 0;
 }  }

Removed from v.1.1.1.1.2.8  
changed lines
  Added in v.1.1.1.1.2.21


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>