Diff for /libaitcfg/example/testcfg.c between versions 1.1.2.1 and 1.1.2.2

version 1.1.2.1, 2021/11/25 22:31:10 version 1.1.2.2, 2021/11/25 23:44:52
Line 1 Line 1
 #include <stdio.h>  #include <stdio.h>
   #include <unistd.h>
 #include <string.h>  #include <string.h>
 #include <elwix.h>  #include <elwix.h>
 #include <aitcfg.h>  #include <aitcfg.h>
Line 8  int Line 9  int
 main(int argc, char **argv)  main(int argc, char **argv)
 {  {
         cfg_root_t cfg;          cfg_root_t cfg;
        char *str, *sec, *attr;        char ch, *str, *sec, *attr;
         array_t *arr;          array_t *arr;
        int i;        int i, mode = 0;
         struct tagCfg *av;          struct tagCfg *av;
   
        if (argc < 2) {        while ((ch = getopt(argc, argv, "r")) != -1)
                printf("Error:: missing config.\n\ntestcfg <config> [section/attribute]\n");                switch (ch) {
                         case 'r':
                                 mode = 42;
                                 break;
                         default:
                                 printf("Error:: missing config.\n\ntestcfg [-r] <config> [section/attribute]\n");
                                 return 1;
                 }
         argc -= optind;
         argv += optind;
         if (!argc) {
                 printf("Error:: missing config.\n\ntestcfg [-r] <config> [section/attribute]\n");
                 return 1;                  return 1;
         } else          } else
                str = argv[2];                str = argv[1];
   
        if (cfgLoadConfig(argv[1], &cfg)) {        if (cfgLoadConfig(argv[0], &cfg)) {
                 ELIBERR(cfg);                  ELIBERR(cfg);
                 return 1;                  return 1;
         } else          } else
                 printf("Opened config\n");                  printf("Opened config\n");
   
         if (str) {          if (str) {
                attr = strchr(argv[2], '/');                attr = strchr(argv[1], '/');
                 if (!attr) {                  if (!attr) {
                         attr = str;                          attr = str;
                         sec = NULL;                          sec = NULL;
Line 48  main(int argc, char **argv) Line 60  main(int argc, char **argv)
                                         av = array(arr, i, struct tagCfg*);                                          av = array(arr, i, struct tagCfg*);
                                         if (av)                                          if (av)
                                                 printf("%s = %s\n",                                                   printf("%s = %s\n", 
                                                                AIT_GET_STR(&av->cfg_attr),                                                                 AIT_ADDR(&av->cfg_attr), 
                                                                 AIT_GET_STR(&av->cfg_val));                                                                  AIT_GET_STR(&av->cfg_val));
                                 }                                  }
                                 array_Destroy(&arr);                                  array_Destroy(&arr);
                         }                          }
                 }                  }
        } else        } else if (!mode)
                 cfgWriteConfig(stdout, &cfg, 1);                  cfgWriteConfig(stdout, &cfg, 1);
           else
                   cfgWriteConfigRaw(stdout, &cfg, 1);
   
         cfgUnloadConfig(&cfg);          cfgUnloadConfig(&cfg);
         printf("Closed config\n");          printf("Closed config\n");

Removed from v.1.1.2.1  
changed lines
  Added in v.1.1.2.2


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