]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
string_utils: always memset buf in lxc_safe_int64_residual()
authorChristian Brauner <christian.brauner@ubuntu.com>
Sat, 27 Mar 2021 06:14:56 +0000 (07:14 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Sat, 27 Mar 2021 06:14:56 +0000 (07:14 +0100)
Link: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=32482
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/string_utils.c

index 793fd2ca1d92f40ff02b0e1e1c5ed9725362092f..1d408b97784f50d221e4f95f64d57a27a3b385bc 100644 (file)
@@ -677,6 +677,8 @@ int lxc_safe_int64_residual(const char *numstr, int64_t *converted, int base, ch
        if (!residual && residual_len != 0)
                return ret_errno(EINVAL);
 
+       memset(residual, 0, residual_len);
+
        while (isspace(*numstr))
                numstr++;
 
@@ -691,10 +693,8 @@ int lxc_safe_int64_residual(const char *numstr, int64_t *converted, int base, ch
        if (residual) {
                size_t len = 0;
 
-               if (*remaining == '\0') {
-                       memset(residual, 0, residual_len);
+               if (*remaining == '\0')
                        goto out;
-               }
 
                len = strlen(remaining);
                if (len >= residual_len)