summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_string.h
diff options
context:
space:
mode:
authorAlejandro Colomar <alx@nginx.com>2023-08-24 01:12:27 +0200
committerAlejandro Colomar <alx@kernel.org>2023-10-25 13:38:39 +0200
commite357f665abad29dfdf94103d0ad82774d2ec3d14 (patch)
tree850fc727a1a6f5becd009c6f6050085ec486855a /src/nxt_string.h
parent3630425f826c7334592c7d1f2527082cfe43f79d (diff)
downloadunit-e357f665abad29dfdf94103d0ad82774d2ec3d14.tar.gz
unit-e357f665abad29dfdf94103d0ad82774d2ec3d14.tar.bz2
String: added strto[u]l(3) variants for nxt_str_t.
They're really more inspired in the API of BSD's strto[iu](3), but use long just to keep it simple, instead of intmax_t, and since they wrap strtol(3), I called them like it. Signed-off-by: Alejandro Colomar <alx@nginx.com> Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'src/nxt_string.h')
-rw-r--r--src/nxt_string.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/nxt_string.h b/src/nxt_string.h
index 18ea5490..72e545ce 100644
--- a/src/nxt_string.h
+++ b/src/nxt_string.h
@@ -161,7 +161,18 @@ NXT_EXPORT nxt_bool_t nxt_is_complex_uri_encoded(u_char *s, size_t length);
NXT_EXPORT ssize_t nxt_base64_decode(u_char *dst, u_char *src, size_t length);
+NXT_EXPORT long nxt_ustrtol(const nxt_str_t *s, int *err);
+nxt_inline unsigned long nxt_ustrtoul(const nxt_str_t *s, int *err);
+
+
extern const uint8_t nxt_hex2int[256];
+nxt_inline unsigned long
+nxt_ustrtoul(const nxt_str_t *s, int *err)
+{
+ return nxt_ustrtol(s, err);
+}
+
+
#endif /* _NXT_STRING_H_INCLUDED_ */