
mkexynos reads its input file which might be smaller than its read buffer, but always writes the whole buffer out. This does not affect the functionalyty of the output file, but it makes its content unpredictable as the end of the buffer is never initialized. Fix this by zeroing the buffer before reading the input file.
Signed-off-by: Albert ARIBAUD albert.u.boot@aribaud.net --- Changes in v3: - fixed mkexynosspl uninitialized buffer
Changes in v2: None
tools/mkexynosspl.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/tools/mkexynosspl.c b/tools/mkexynosspl.c index ef685b7..8d605fa 100644 --- a/tools/mkexynosspl.c +++ b/tools/mkexynosspl.c @@ -72,6 +72,8 @@ int main(int argc, char **argv)
count = (len < CHECKSUM_OFFSET) ? len : CHECKSUM_OFFSET;
+ memset(buffer, 0, BUFSIZE); + if (read(ifd, buffer, count) != count) { fprintf(stderr, "%s: Can't read %s: %s\n", argv[0], argv[1], strerror(errno));