From: Seung-Woo Kim Date: Tue, 13 Apr 2021 11:23:15 +0000 (+0900) Subject: libkmod: fix possible double free with wrong modules.builtin.modinfo X-Git-Tag: v29~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=675410c3b3b1cf4523f02ab6e3128c39bd5d5101;p=thirdparty%2Fkmod.git libkmod: fix possible double free with wrong modules.builtin.modinfo Fix double free for *modinfo with non '\0' terminated wrong modules.builtin.modinfo, which is because EOF is minus value. Signed-off-by: Seung-Woo Kim --- diff --git a/libkmod/libkmod-builtin.c b/libkmod/libkmod-builtin.c index a75a542f..a002cb5e 100644 --- a/libkmod/libkmod-builtin.c +++ b/libkmod/libkmod-builtin.c @@ -313,7 +313,7 @@ ssize_t kmod_builtin_get_modinfo(struct kmod_ctx *ctx, const char *modname, while (offset < iter->next) { offset = get_string(iter, pos, &line, &linesz); if (offset <= 0) { - count = (offset) ? -errno : -EOF; + count = (offset) ? -errno : -EINVAL; free(*modinfo); goto fail; }