aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/support/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/lib/support/string.c')
-rw-r--r--src/core/lib/support/string.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/lib/support/string.c b/src/core/lib/support/string.c
index dc243bf0bf..f10a30f0fd 100644
--- a/src/core/lib/support/string.c
+++ b/src/core/lib/support/string.c
@@ -34,7 +34,9 @@
#include "src/core/lib/support/string.h"
#include <ctype.h>
+#include <limits.h>
#include <stddef.h>
+#include <stdlib.h>
#include <string.h>
#include <grpc/support/alloc.h>
@@ -189,6 +191,13 @@ int int64_ttoa(int64_t value, char *string) {
return i;
}
+int gpr_parse_nonnegative_int(const char *value) {
+ char *end;
+ long result = strtol(value, &end, 0);
+ if (*end != '\0' || result < 0 || result > INT_MAX) return -1;
+ return (int)result;
+}
+
char *gpr_leftpad(const char *str, char flag, size_t length) {
const size_t str_length = strlen(str);
const size_t out_length = str_length > length ? str_length : length;