Diff for /libaitcfg/src/queue.c between versions 1.16 and 1.18

version 1.16, 2014/04/14 19:58:21 version 1.18, 2019/12/05 14:33:35
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004 - 2014Copyright 2004 - 2019
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 80  _selectAttribute(cfg_root_t * __restrict cfg, const ch Line 80  _selectAttribute(cfg_root_t * __restrict cfg, const ch
 /* --------------------------------------------------------------- */  /* --------------------------------------------------------------- */
   
 /*  /*
    * cfg_dumpCfg() - dump config data
    *
    * @cfg = Config root
    * return: none
    */
   void
   cfg_dumpCfg(cfg_root_t * __restrict cfg)
   {
           struct tagCfg *r, *c, *ctmp, *q, *qtmp;
           int syn;
   
           r = RB_ROOT(cfg);
           printf("ROOT:: KEY=%.8x [%s] %s=%s\n", ((AIT_KEY(&r->cfg_sec) << 15) | AIT_KEY(&r->cfg_attr)), 
                           AIT_ADDR(&r->cfg_sec), AIT_ADDR(&r->cfg_attr), AIT_ADDR(&r->cfg_val));
   
           RB_FOREACH_SAFE(c, tagRC, cfg, ctmp) {
                   syn ^= syn;
                   TAILQ_FOREACH_SAFE(q, cfg, cfg_next, qtmp) {
                           if (c == q) {
                                   syn = 42;
                                   break;
                           }
                   }
   
                   printf("%s KEY=%.8x [%s] %s=%s sync=%d\n", c == r ? "*" : "", 
                                   ((AIT_KEY(&c->cfg_sec) << 15) | AIT_KEY(&c->cfg_attr)), 
                                   AIT_ADDR(&c->cfg_sec), AIT_ADDR(&c->cfg_attr), AIT_ADDR(&c->cfg_val), syn);
           }
   }
   
   /*
  * cfg_getSection() - Get entire section attributes into array   * cfg_getSection() - Get entire section attributes into array
  *   *
  * @cfg = Config root   * @cfg = Config root
Line 104  cfg_getSection(cfg_root_t * __restrict cfg, const char Line 135  cfg_getSection(cfg_root_t * __restrict cfg, const char
                 AIT_KEY(&fav.cfg_sec) = crcFletcher16((u_short*) csSec,                   AIT_KEY(&fav.cfg_sec) = crcFletcher16((u_short*) csSec, 
                                 E_ALIGN(strlen(csSec), 2) / 2);                                  E_ALIGN(strlen(csSec), 2) / 2);
   
        av = RB_NFIND(tagRC, cfg, &fav);        arr = array_Init(0);
        if (!av) 
                return NULL; 
        if (csSec) { 
                if (AIT_ISEMPTY(&av->cfg_sec) || strcmp(AIT_GET_STR(&av->cfg_sec), csSec)) 
                        return NULL; 
        } else { 
                if (!AIT_ISEMPTY(&av->cfg_sec)) 
                        return NULL; 
        } 
 
        arr = array_Init(1); 
         if (!arr) {          if (!arr) {
                 cfg_SetErr(elwix_GetErrno(), "%s", elwix_GetError());                  cfg_SetErr(elwix_GetErrno(), "%s", elwix_GetError());
                 return NULL;                  return NULL;
        } else        }
                array_Push(arr, av, 0); 
   
        while ((av = RB_NEXT(tagRC, cfg, av)) && av) {        TAILQ_FOREACH(av, cfg, cfg_next)
                if (csSec) {                if (AIT_KEY(&av->cfg_sec) == AIT_KEY(&fav.cfg_sec)) {
                        if (AIT_ISEMPTY(&av->cfg_sec) || strcmp(AIT_GET_STR(&av->cfg_sec), csSec))                        if (!csSec) {
                                break;                                if (AIT_ISEMPTY(&av->cfg_sec))
                } else {                                        array_Push(arr, av, 0);
                        if (!AIT_ISEMPTY(&av->cfg_sec))                        } else {
                                break;                                if (!AIT_ISEMPTY(&av->cfg_sec) && 
                                                 !strcmp(AIT_GET_STR(&av->cfg_sec), csSec))
                                         array_Push(arr, av, 0);
                         }
                 }                  }
   
                array_Push(arr, av, 0);        if (!array_Size(arr))
        }                array_Destroy(&arr);
   
         return arr;          return arr;
 }  }

Removed from v.1.16  
changed lines
  Added in v.1.18


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