Diff for /libaitio/src/Attic/tools.c between versions 1.7 and 1.10

version 1.7, 2011/12/13 02:23:08 version 1.10, 2012/03/29 01:31:34
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, 2005, 2006, 2007, 2008, 2009, 2010, 2011Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
         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 49  SUCH DAMAGE. Line 49  SUCH DAMAGE.
   
 /*  /*
  * io_LTrimStr() Remove left whitespaces from text string   * io_LTrimStr() Remove left whitespaces from text string
    *
  * @psLine = Text string   * @psLine = Text string
  * return: 0 nothing to do; !=0 Removed bytes   * return: 0 nothing to do; !=0 Removed bytes
 */  */
Line 70  io_LTrimStr(u_char * __restrict psLine) Line 71  io_LTrimStr(u_char * __restrict psLine)
   
 /*  /*
  * io_RTrimStr() Remove right whitespaces from text string   * io_RTrimStr() Remove right whitespaces from text string
    *
  * @psLine = Text string   * @psLine = Text string
  * return: 0 nothing to do; !=0 Removed bytes   * return: 0 nothing to do; !=0 Removed bytes
 */  */
Line 90  io_RTrimStr(u_char * __restrict psLine) Line 92  io_RTrimStr(u_char * __restrict psLine)
   
 /*  /*
  * io_TrimStr() Remove left and right whitespaces from text string   * io_TrimStr() Remove left and right whitespaces from text string
    *
  * @psLine = Text string   * @psLine = Text string
  * return: 0 nothing to do; !=0 Removed bytes   * return: 0 nothing to do; !=0 Removed bytes
 */  */
Line 106  io_TrimStr(u_char * __restrict psLine) Line 109  io_TrimStr(u_char * __restrict psLine)
   
 /*  /*
  * io_UnquotStr() Remove quots from input text string    * io_UnquotStr() Remove quots from input text string 
    *
  * @psLine = Text string   * @psLine = Text string
  * return: 0 nothing to do; 1 successful unquoted string   * return: 0 nothing to do; 1 successful unquoted string
 */  */
Line 139  io_UnquotStr(u_char * __restrict psLine) Line 143  io_UnquotStr(u_char * __restrict psLine)
   
 /*  /*
  * io_Ch2Hex() Convert from Char string to Hex string   * io_Ch2Hex() Convert from Char string to Hex string
    *
  * @psLine = Text string   * @psLine = Text string
  * @lineLen = Length of Text string   * @lineLen = Length of Text string
  * return: NULL nothing to do or error; !=0 Allocated new converted data without term\0 (must be free)   * return: NULL nothing to do or error; !=0 Allocated new converted data without term\0 (must be free)
Line 171  io_Ch2Hex(u_char *psLine, int lineLen) Line 176  io_Ch2Hex(u_char *psLine, int lineLen)
   
 /*  /*
  * io_Hex2Ch() Convert from Hex string to Char string   * io_Hex2Ch() Convert from Hex string to Char string
    *
  * @psLine = Text string   * @psLine = Text string
  * @lineLen = Length of Text string   * @lineLen = Length of Text string
  * return: NULL nothing to do or error; !=0 Allocated new converted string(must be free)   * return: NULL nothing to do or error; !=0 Allocated new converted string(must be free)
Line 202  io_Hex2Ch(u_char *psLine, int lineLen) Line 208  io_Hex2Ch(u_char *psLine, int lineLen)
   
 /*  /*
  * io_CopyEnv() Copy environment to new environment array;   * io_CopyEnv() Copy environment to new environment array;
    *
  * @oldenv = Environment array   * @oldenv = Environment array
  * return: NULL error; !=NULL Allocated new environment array(must be free)   * return: NULL error; !=NULL Allocated new environment array(must be free)
 */  */
Line 241  io_CopyEnv(const char **oldenv) Line 248  io_CopyEnv(const char **oldenv)
   
 /*  /*
  * io_ExecArgs() Build exec arguments from other array   * io_ExecArgs() Build exec arguments from other array
    *
  * @psProg = Program name for execute   * @psProg = Program name for execute
  * @oldarg = Arguments array   * @oldarg = Arguments array
  * return: NULL error; !=NULL Allocated execution array(must be free)   * return: NULL error; !=NULL Allocated execution array(must be free)
Line 279  io_ExecArgs(const char *psProg, const char **oldarg) Line 287  io_ExecArgs(const char *psProg, const char **oldarg)
   
 /*  /*
  * io_FreeNullTerm() Free dynamic allocated null terminated array with strings   * io_FreeNullTerm() Free dynamic allocated null terminated array with strings
    *
  * @arr = Pointer to array for free   * @arr = Pointer to array for free
  * return: none   * return: none
 */  */
Line 297  io_FreeNullTerm(char *** __restrict arr) Line 306  io_FreeNullTerm(char *** __restrict arr)
 }  }
   
 /*  /*
    * io_Path2File() - Parse and make path/filename pair
    *
    * @csArgs = Input argument line
    * @psPath = Output Path, if ==NULL path not returned
    * @pathLen = Size of path array
    * @psFile = Output File
    * @fileLen = Size of file array
    * return: 0 error format; -1 error:: can`t read; >0 ok, number of readed items
    */
   inline int
   io_Path2File(const char * __restrict csArgs, char * __restrict psPath, 
                   int pathLen, char * __restrict psFile, int fileLen)
   {
           char *pos, *psBuf;
   
           if (!csArgs || !psFile || !fileLen)
                   return -1;
           if (psPath && !pathLen)
                   return -1;
   
           psBuf = strdup(csArgs);
           if (!psBuf) {
                   LOGERR;
                   return -1;
           }
   
           pos = strrchr(psBuf, '/');
           if (!pos) {
                   strlcpy(psFile, psBuf, fileLen);
   
                   free(psBuf);
                   return 1;
           } else
                   *pos++ = 0;
   
           strlcpy(psFile, pos, fileLen);
           if (psPath)
                   strlcpy(psPath, psBuf, pathLen);
   
           free(psBuf);
           return 2;
   }
   
   /*
  * io_ether_ntoa() Convert ethernet address to string   * io_ether_ntoa() Convert ethernet address to string
    *
  * @n = ethernet address structure, like struct ether_addr   * @n = ethernet address structure, like struct ether_addr
  * @a = string   * @a = string
  * @len = string length   * @len = string length
Line 321  io_ether_ntoa(const struct io_ether_addr *n, char * __ Line 375  io_ether_ntoa(const struct io_ether_addr *n, char * __
   
 /*  /*
  * io_ether_aton() Convert string to ethernet address   * io_ether_aton() Convert string to ethernet address
    *
  * @a = string   * @a = string
  * @e = ethernet address structure, like struct ether_addr   * @e = ethernet address structure, like struct ether_addr
  * return: NULL error or !=NULL ethernet address structure   * return: NULL error or !=NULL ethernet address structure
Line 350  io_ether_aton(const char *a, struct io_ether_addr *e) Line 405  io_ether_aton(const char *a, struct io_ether_addr *e)
   
 /*  /*
  * io_n2port() Extract port from network structure   * io_n2port() Extract port from network structure
    *
  * @addr = Address   * @addr = Address
  * return: 0 not supported family type or port number   * return: 0 not supported family type or port number
  */   */
Line 377  io_n2port(io_sockaddr_t * __restrict addr) Line 433  io_n2port(io_sockaddr_t * __restrict addr)
   
 /*  /*
  * io_n2addr() Extract address from network structure   * io_n2addr() Extract address from network structure
    *
  * @addr = Address   * @addr = Address
  * @val = Value for store string address   * @val = Value for store string address
  * return: NULL error or !=NULL string address from val   * return: NULL error or !=NULL string address from val
Line 411  io_n2addr(io_sockaddr_t * __restrict addr, ait_val_t * Line 468  io_n2addr(io_sockaddr_t * __restrict addr, ait_val_t *
                         return ret;                          return ret;
         }          }
   
        AIT_FREE_VAL(val);        if (!AIT_ISEMPTY(val))
                 AIT_FREE_VAL(val);
         AIT_SET_STR(val, ret);          AIT_SET_STR(val, ret);
        return ret;        return (const char*) AIT_GET_STR(val);
 }  }
   
 /*  /*
  * io_gethostbyname() Get host and port and make network structure   * io_gethostbyname() Get host and port and make network structure
    *
  * @psHost = Hostname   * @psHost = Hostname
  * @port = Port   * @port = Port
  * @addr = Network address structure   * @addr = Network address structure

Removed from v.1.7  
changed lines
  Added in v.1.10


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