提交 6c3c5b26 编写于 作者: T Thomas Jarosch 提交者: Arnaldo Carvalho de Melo

perf buildid: Fix possible unterminated readlink() result buffer

The readlink function doesn't guarantee that a '\0' will be put at the
end of the provided buffer if there is no space left.

No need to do "buf[len] = '\0';" since the buffer is allocated with
zalloc().

Link: http://lkml.kernel.org/r/4E986ABF.9040706@intra2net.comSigned-off-by: NThomas Jarosch <thomas.jarosch@intra2net.com>
Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
上级 0361fc25
......@@ -1289,7 +1289,7 @@ int build_id_cache__remove_s(const char *sbuild_id, const char *debugdir)
if (access(linkname, F_OK))
goto out_free;
if (readlink(linkname, filename, size) < 0)
if (readlink(linkname, filename, size - 1) < 0)
goto out_free;
if (unlink(linkname))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册