From d070b1077091ef67a400feebfb2a82fd43152868 Mon Sep 17 00:00:00 2001 From: Tobias Stoeckmann Date: Fri, 27 Sep 2024 22:17:11 +0200 Subject: [PATCH] depmod: Check memdup return value If memdup fails, handle out of memory condition. Signed-off-by: Tobias Stoeckmann Reviewed-by: Emil Velikov Link: https://github.com/kmod-project/kmod/pull/158 Signed-off-by: Lucas De Marchi --- tools/depmod.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tools/depmod.c b/tools/depmod.c index 61999730..7d1f3feb 100644 --- a/tools/depmod.c +++ b/tools/depmod.c @@ -1066,6 +1066,11 @@ static int depmod_module_add(struct depmod *depmod, struct kmod_module *kmod) size_t uncrelpathlen = lastslash - mod->relpath + modnamesz + strlen(KMOD_EXTENSION_UNCOMPRESSED); mod->uncrelpath = memdup(mod->relpath, uncrelpathlen + 1); + if (mod->uncrelpath == NULL) { + err = -ENOMEM; + hash_del(depmod->modules_by_name, mod->modname); + goto fail; + } mod->uncrelpath[uncrelpathlen] = '\0'; err = hash_add_unique(depmod->modules_by_uncrelpath, mod->uncrelpath, mod); if (err < 0) { -- 2.47.3