summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--wsutil/strtoi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/wsutil/strtoi.c b/wsutil/strtoi.c
index 574743d6b5..85897af026 100644
--- a/wsutil/strtoi.c
+++ b/wsutil/strtoi.c
@@ -53,6 +53,13 @@ gboolean ws_strtou64(const gchar* str, guint64* cint)
gchar* endptr;
guint64 val;
+ if (str[0] == '-' || str[0] == '+') {
+ /*
+ * Unsigned numbers don't have a sign.
+ */
+ errno = EINVAL;
+ return FALSE;
+ }
errno = 0;
val = g_ascii_strtoull(str, &endptr, 10);
if ((val == 0 && endptr == str) || (*endptr != 0)) {