--- libaitio/inc/aitio.h 2010/03/22 15:21:20 1.3 +++ libaitio/inc/aitio.h 2010/04/06 14:26:55 1.3.2.6 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: aitio.h,v 1.3 2010/03/22 15:21:20 misho Exp $ +* $Id: aitio.h,v 1.3.2.6 2010/04/06 14:26:55 misho Exp $ * *************************************************************************/ #ifndef __AITIO_H @@ -138,6 +138,45 @@ inline int io_MakeArray(char * __restrict psArgs, cons char *** __restrict args, int nargs); /* + * io_UnquotStr() Remove quots from input text string + * @psLine = Text string + * return: 0 nothing to do; 1 successful unquoted string +*/ +inline int io_UnquotStr(unsigned char *psLine); +/* + * io_LTrimStr() Remove left whitespaces from text string + * @psLine = Text string + * return: 0 nothing to do; !=0 Removed bytes +*/ +inline int io_LTrimStr(unsigned char *psLine); +/* + * io_RTrimStr() Remove right whitespaces from text string + * @psLine = Text string + * return: 0 nothing to do; !=0 Removed bytes +*/ +inline int io_RTrimStr(unsigned char *psLine); +/* + * io_TrimStr() Remove left and right whitespaces from text string + * @psLine = Text string + * return: 0 nothing to do; !=0 Removed bytes +*/ +inline int io_TrimStr(unsigned char *psLine); +/* + * io_Char2Hex() Convert from Char string to Hex 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_Char2Hex(unsigned char *psLine, int lineLen); +/* + * 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(unsigned char *psLine, int lineLen); + +/* * ioURLGet() Parse and get data from input URL * @csURL = Input URL line * @url = Output parsed URL @@ -218,6 +257,17 @@ int io_Cmd_Exit(void *cmds, FILE *out, char ** __restr !strncmp(CMDS[i].cmd_name, text, len)) \ return strdup(CMDS[i].cmd_name); \ } \ + return NULL; \ + } + +/* + * io_Make_Comp_Args - Declare helper function for Arguments completion +*/ +#define IO_MAKE_COMP_ARGS(FUNC, ARGS) \ + char *FUNC(const char *text __attribute__((unused)), int state) \ + { \ + while (ARGS[state]) \ + return strdup(ARGS[state]); \ return NULL; \ }