diff --git a/client/util.c b/client/util.c index c52dfa28f..e48d482ee 100644 --- a/client/util.c +++ b/client/util.c @@ -274,7 +274,7 @@ void SwapEndian64ex(const uint8_t *src, const size_t len, const uint8_t blockSiz // ------------------------------------------------------------------------- // line - param line -// bg, en - symbol numbers in param line of beginning an ending parameter +// bg, en - symbol numbers in param line of beginning and ending parameter // paramnum - param number (from 0) // ------------------------------------------------------------------------- int param_getptr(const char *line, int *bg, int *en, int paramnum) @@ -306,6 +306,15 @@ int param_getptr(const char *line, int *bg, int *en, int paramnum) return 0; } +int param_getlength(const char *line, int paramnum) +{ + int bg, en; + + if (param_getptr(line, &bg, &en, paramnum)) return 0; + + return en - bg + 1; +} + char param_getchar(const char *line, int paramnum) { int bg, en; diff --git a/client/util.h b/client/util.h index 797fa118d..8b59a9987 100644 --- a/client/util.h +++ b/client/util.h @@ -71,9 +71,6 @@ # define BSWAP_16(x) ((( ((x) & 0xFF00 ) >> 8))| ( (((x) & 0x00FF) << 8))) #endif -// Boolean -#define TRUE 1 -#define FALSE 0 #define EVEN 0 #define ODD 1 @@ -130,6 +127,7 @@ extern void num_to_bytebitsLSBF(uint64_t n, size_t len, uint8_t *dest); extern uint8_t *SwapEndian64(const uint8_t *src, const size_t len, const uint8_t blockSize); extern void SwapEndian64ex(const uint8_t *src, const size_t len, const uint8_t blockSize, uint8_t *dest); +extern int param_getlength(const char *line, int paramnum); extern char param_getchar(const char *line, int paramnum); extern int param_getptr(const char *line, int *bg, int *en, int paramnum); extern uint8_t param_get8(const char *line, int paramnum);