--- libelwix/inc/elwix/astr.h 2013/03/07 16:24:32 1.2 +++ libelwix/inc/elwix/astr.h 2014/02/21 13:30:19 1.5 @@ -3,7 +3,7 @@ * by Michael Pounov * * $Author: misho $ -* $Id: astr.h,v 1.2 2013/03/07 16:24:32 misho Exp $ +* $Id: astr.h,v 1.5 2014/02/21 13:30:19 misho Exp $ * ************************************************************************** The ELWIX and AITNET software is distributed under the following @@ -12,7 +12,7 @@ terms: All of the documentation and software included in the ELWIX and AITNET Releases is copyrighted by ELWIX - Sofia/Bulgaria -Copyright 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 +Copyright 2004 - 2014 by Michael Pounov . All rights reserved. Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ SUCH DAMAGE. * @arr = Pointer to array for free * return: none */ -inline void str_FreeNullTerm(char *** __restrict arr); +void str_FreeNullTerm(char *** __restrict arr); /* * str_ArgsNum() - Parse and calculate number of arguments * @@ -61,7 +61,7 @@ inline void str_FreeNullTerm(char *** __restrict arr); * @csDelim = Delimiter(s) for separate * return: 0 error format; -1 error:: can`t read; >0 ok, number of items */ -inline int str_ArgsNum(const char *csArgs, const char *csDelim); +int str_ArgsNum(const char *csArgs, const char *csDelim); /* * str_ExecArgs() - Build exec arguments from other array * @@ -93,42 +93,42 @@ ait_val_t *str_Ast(const char *csString); * @psLine = Text string * return: 0 nothing to do; !=0 Removed bytes */ -inline int str_LTrim(char * __restrict psLine); +int str_LTrim(char * __restrict psLine); /* * str_RTrim() - Remove right whitespaces from text string * * @psLine = Text string * return: 0 nothing to do; !=0 Removed bytes */ -inline int str_RTrim(char * __restrict psLine); +int str_RTrim(char * __restrict psLine); /* * str_Trim() - Remove left and right whitespaces from text string * * @psLine = Text string * return: 0 nothing to do; !=0 Removed bytes */ -inline int str_Trim(char * __restrict psLine); +int str_Trim(char * __restrict psLine); /* * str_Unquot() - Remove quots from input text string * * @psLine = Text string * return: 0 nothing to do; 1 successful unquoted string */ -inline int str_Unquot(char * __restrict psLine); +int str_Unquot(char * __restrict psLine); /* * str_Upper() - Convert all lower characters to upper * * @psLine = Text string * return: 0 nothing to do; !=0 converted chars */ -inline int str_Upper(char * __restrict psLine); +int str_Upper(char * __restrict psLine); /* * str_Lower() - Convert all upper characters to lower * * @psLine = Text string * return: 0 nothing to do; !=0 converted chars */ -inline int str_Lower(char * __restrict psLine); +int str_Lower(char * __restrict psLine); /* * str_Hex2Dig() - Convert from Hex string to digit array @@ -146,6 +146,17 @@ ait_val_t *str_Hex2Dig(const char *psLine); * !=0 Allocated new converted string (must be e_free()) */ char *str_Dig2Hex(ait_val_t *digz); + +/* + * str_getString() - Get string from data buffer + * + * @data = Data buffer + * @dlen = Data length + * @next = Return next position after string if !=NULL + * return: -1 error or size of string + */ +int str_getString(const unsigned char * __restrict data, int dlen, + char ** __restrict next); #endif