basic/parse-util: add helper to parse bounded unsigned values

"parse_range" is already used for stuff like "a-b", so use "bounded" here to
avoid confusion.
This commit is contained in:
Zbigniew Jędrzejewski-Szmek
2023-09-19 09:35:52 +02:00
parent f31fa08057
commit 3b6cabd806
3 changed files with 43 additions and 1 deletions
+15
View File
@@ -425,6 +425,21 @@ int safe_atou_full(const char *s, unsigned base, unsigned *ret_u) {
return 0;
}
int safe_atou_bounded(const char *s, unsigned min, unsigned max, unsigned *ret) {
unsigned v;
int r;
r = safe_atou(s, &v);
if (r < 0)
return r;
if (v < min || v > max)
return -ERANGE;
*ret = v;
return 0;
}
int safe_atoi(const char *s, int *ret_i) {
unsigned base = 0;
char *x = NULL;