From ba817d465caa48b5b814853d8f16602da2d1a8a9 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 9 Nov 2018 15:35:46 +0100 Subject: Move string functions to lstring.[hc] --- lstring.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 lstring.c (limited to 'lstring.c') diff --git a/lstring.c b/lstring.c new file mode 100644 index 0000000..ee8904f --- /dev/null +++ b/lstring.c @@ -0,0 +1,30 @@ +#include "lstring.h" + +BOOL isInt(const struct string *value, int start) +{ + size_t i; + for (i = start; i < value->l; ++i) { + if (value->s[i] < '0' || value->s[i] > '9') return FALSE; + } + return TRUE; +} + +uint32_t parseUInt32(const struct string * const s) +{ + if (s == NULL || s->l > 10) { + return 0; + } + uint32_t ret = 0, last = 0; + for (size_t i = 0; i < s->l; ++i) { + if (s->s[i] < '0' || s->s[i] > '9') { + return 0; + } + ret = ret * 10 + (s->s[i] - '0'); + if (ret < last) { + return 0; + } + last = ret; + } + return ret; +} + -- cgit v1.2.3-55-g7522