diff options
author | David Disseldorp <ddiss@suse.de> | 2025-03-04 16:57:46 +1100 |
---|---|---|
committer | Christian Brauner <brauner@kernel.org> | 2025-03-08 12:13:25 +0100 |
commit | fcc155008a20fa31b01569e105250490750f0687 (patch) | |
tree | dea8dd360875da10c7ffced37e7daccafae0adfd /lib | |
parent | 83c0b27266ecfe8366d849be77ff6ff8f702ffed (diff) |
vsprintf: add simple_strntoul
cpio extraction currently does a memcpy to ensure that the archive hex
fields are null terminated for simple_strtoul(). simple_strntoul() will
allow us to avoid the memcpy.
Signed-off-by: David Disseldorp <ddiss@suse.de>
Link: https://lore.kernel.org/r/20250304061020.9815-4-ddiss@suse.de
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/vsprintf.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 56fe96319292..734bd70c8b9b 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -114,6 +114,13 @@ unsigned long simple_strtoul(const char *cp, char **endp, unsigned int base) } EXPORT_SYMBOL(simple_strtoul); +unsigned long simple_strntoul(const char *cp, char **endp, unsigned int base, + size_t max_chars) +{ + return simple_strntoull(cp, endp, base, max_chars); +} +EXPORT_SYMBOL(simple_strntoul); + /** * simple_strtol - convert a string to a signed long * @cp: The start of the string |