HomeFreeBSD

libefivar: Fix a buffer overread.

Description

libefivar: Fix a buffer overread.

DevPathToTextUsbWWID allocates a separate copy of the SerialNumber
string to append a null terminator if the original string is not
null terminated. However, by using AllocateCopyPool, it tries to
copy 'Length + 1' words from the existing string containing 'Length'
characters into the target string. Split the copy out to only
copy 'Length' characters instead.

Reviewed by: imp, emaste
Reported by: GCC 12 -Wstringop-overread
Differential Revision: https://reviews.freebsd.org/D36826

Details

Provenance
jhbAuthored on Oct 3 2022, 11:10 PM
Reviewer
imp
Differential Revision
D36826: libefivar: Fix a buffer overread.
Parents
rG611cf392672c: libfetch: Use memcpy in place of an odd strncpy.
Branches
Unknown
Tags
Unknown