Add atonum() - Convert string to natural number, returns -1 on error.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
This commit is contained in:
Joachim Nilsson
2015-07-10 19:00:11 +02:00
parent 4005dd5e2c
commit 41c9caff17
2 changed files with 19 additions and 0 deletions
+5
View File
@@ -13,6 +13,11 @@ traversing lists while deleting/freeing nodes.
Helper Macros
-------------
- `atonum(str)`
Convert string to natural number, works for 32-bit non-negative
integers. Returns -1 on error.
- `blkdev(dev)`
Create block device
+14
View File
@@ -101,6 +101,20 @@ static inline int fisslashdir(char *dir)
return 0;
}
/* Convert string to natural number (0-2147483647), returns -1 on error. */
static inline int atonum(const char *str)
{
int val = -1;
char *errstr;
if (str) {
val = strtonum(str, 0, INT32_MAX, &errstr);
if (errstr)
return -1;
}
return val;
}
/* Validate string, non NULL and not zero length */
static inline int string_valid (const char *s)