Diff for /libaitio/src/Attic/tools.c between versions 1.1.2.2 and 1.2

version 1.1.2.2, 2010/04/05 08:25:25 version 1.2, 2010/04/16 13:25:27
Line 110  inline char *io_Char2Hex(u_char *psLine, int lineLen) Line 110  inline char *io_Char2Hex(u_char *psLine, int lineLen)
         if (!psLine || !*psLine || !lineLen)          if (!psLine || !*psLine || !lineLen)
                 return NULL;                  return NULL;
   
        str = malloc(lineLen * 2);        str = malloc(lineLen * 2 + 1);
         if (!str) {          if (!str) {
                 LOGERR;                  LOGERR;
                 return NULL;                  return NULL;
         } else          } else
                memset(str, 0, lineLen * 2);                memset(str, 0, lineLen * 2 + 1);
   
         for (i = 0; i < lineLen && psLine[i]; i++) {          for (i = 0; i < lineLen && psLine[i]; i++) {
                 memset(szWork, 0, 3);                  memset(szWork, 0, 3);
                 snprintf(szWork, 3, "%02X", (u_char) psLine[i]);                  snprintf(szWork, 3, "%02X", (u_char) psLine[i]);
                 strncat(str, szWork, 2);                  strncat(str, szWork, 2);
           }
   
           return str;
   }
   
   
   /*
    * io_Hex2Char() Convert from Hex string to Char string
    * @psLine = Text string
    * @lineLen = Length of Text string
    * return: NULL nothing to do or error; !=0 Allocated new converted string(must be free)
   */
   inline char *io_Hex2Char(u_char *psLine, int lineLen)
   {
           register int i;
           char szWork[3], *str;
   
           if (!psLine || !*psLine || !lineLen)
                   return NULL;
   
           str = malloc(lineLen / 2 + 1);
           if (!str) {
                   LOGERR;
                   return NULL;
           } else
                   memset(str, 0, lineLen / 2 + 1);
   
           for (i = 0; i < lineLen && psLine[i * 2]; i++) {
                   strlcpy(szWork, (char*) &psLine[i * 2], 3);
                   str[i] = (char) strtol(szWork, NULL, 16);
         }          }
   
         return str;          return str;

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


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