]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Lib: Fix endptr in bstrtoul16() master
authorOndrej Zajicek <santiago@crfreenet.org>
Fri, 31 Jul 2026 12:15:10 +0000 (14:15 +0200)
committerOndrej Zajicek <santiago@crfreenet.org>
Fri, 31 Jul 2026 12:27:55 +0000 (14:27 +0200)
The endptr in bstrtoul16() should be always defined on return to avoid
bad usage by callers. Otherwise, dereferencing undefined ptr may lead
to crash on parsing long numbers.

Reported-By: Benedikt Neuffer <benedikt.neuffer@kit.edu>
lib/strtoul.c

index 420931a40d9baa5a28cb35b55bdae3d7e441bbe8..15d2c78bc9a189f36ac5dd2fa60edbb89d2826b7 100644 (file)
@@ -56,6 +56,7 @@ bstrtoul16(const char *str, char **end)
     }
   }
 
+  *end = (char *) &(str[16]);  /* Overflow position */
   errno = ERANGE;
   return UINT64_MAX;
 }