Diff for /libaitcfg/src/queue.c between versions 1.2 and 1.3

version 1.2, 2009/09/09 09:07:31 version 1.3, 2009/10/19 15:00:10
Line 141  int cfg_UnsetAttribute(sl_config * __restrict cfg, con Line 141  int cfg_UnsetAttribute(sl_config * __restrict cfg, con
 int cfg_SetAttribute(sl_config * __restrict cfg, const u_char *csSec, const u_char *csAttr, const u_char *csVal)  int cfg_SetAttribute(sl_config * __restrict cfg, const u_char *csSec, const u_char *csAttr, const u_char *csVal)
 {  {
         struct tagPair *av, *section;          struct tagPair *av, *section;
           int len;
   
         if (!cfg || !csAttr)          if (!cfg || !csAttr)
                 return -1;                  return -1;
Line 168  int cfg_SetAttribute(sl_config * __restrict cfg, const Line 169  int cfg_SetAttribute(sl_config * __restrict cfg, const
                 }                  }
                 // added section name to element                  // added section name to element
                 if (csSec && *csSec) {                  if (csSec && *csSec) {
                        av->psSection = malloc(strlen((char*) csSec) + 1);                        len = strlen((char*) csSec) + 1;
                         av->psSection = malloc(len);
                         if (!av->psSection) {                          if (!av->psSection) {
                                 LOGERR;                                  LOGERR;
                                 free(av);                                  free(av);
                                 return -1;                                  return -1;
                         } else {                          } else {
                                strlcpy((char*) av->psSection, (char*) csSec, strlen((char*) csSec) + 1);                                strlcpy((char*) av->psSection, (char*) csSec, len);
                         }                          }
                 } else                  } else
                         av->psSection = NULL;                          av->psSection = NULL;
   
                 // added attribute to element                  // added attribute to element
                av->psAttribute = malloc(strlen((char*) csAttr) + 1);                len = strlen((char*) csAttr) + 1;
                 av->psAttribute = malloc(len);
                 if (!av->psAttribute) {                  if (!av->psAttribute) {
                         LOGERR;                          LOGERR;
                         free(av->psSection);                          free(av->psSection);
                         free(av);                          free(av);
                         return -1;                          return -1;
                 } else {                  } else {
                        strlcpy((char*) av->psAttribute, (char*) csAttr, strlen((char*) csAttr) + 1);                        strlcpy((char*) av->psAttribute, (char*) csAttr, len);
                 }                  }
                 // added value to element                  // added value to element
                 if (csVal && *csVal) {                  if (csVal && *csVal) {
                        av->psValue = malloc(strlen((char*) csVal) + 1);                        len = strlen((char*) csVal) + 1;
                         av->psValue = malloc(len);
                         if (!av->psValue) {                          if (!av->psValue) {
                                 LOGERR;                                  LOGERR;
                                 free(av->psAttribute);                                  free(av->psAttribute);
Line 199  int cfg_SetAttribute(sl_config * __restrict cfg, const Line 203  int cfg_SetAttribute(sl_config * __restrict cfg, const
                                 free(av);                                  free(av);
                                 return -1;                                  return -1;
                         } else {                          } else {
                                strlcpy((char*) av->psValue, (char*) csVal, strlen((char*) csVal) + 1);                                strlcpy((char*) av->psValue, (char*) csVal, len);
                         }                          }
                 } else {                  } else {
                         av->psValue = malloc(1);                          av->psValue = malloc(1);
Line 211  int cfg_SetAttribute(sl_config * __restrict cfg, const Line 215  int cfg_SetAttribute(sl_config * __restrict cfg, const
         }          }
   
         if (strcmp((char*) csVal, (char*) av->psValue)) {          if (strcmp((char*) csVal, (char*) av->psValue)) {
                av->psValue = realloc(av->psValue, strlen((char*) csVal) + 1);                len = strlen((char*) csVal) + 1;
                strlcpy((char*) av->psValue, (char*) csVal, strlen((char*) csVal) + 1);                av->psValue = realloc(av->psValue, len);
                 strlcpy((char*) av->psValue, (char*) csVal, len);
   
                 // Update element                  // Update element
                 return 1;                  return 1;

Removed from v.1.2  
changed lines
  Added in v.1.3


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