From: Marcos Mello Date: Sun, 24 Jul 2022 19:51:37 +0000 (-0300) Subject: fix(dracut-install): do not try to copy files from the root directory X-Git-Tag: 058~196 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ebbcf97dc7267f47ae568909305bcb05de2876b4;p=thirdparty%2Fdracut.git fix(dracut-install): do not try to copy files from the root directory HWCAP library path needs at least two parent directories, for example: /lib64/power6x/libc.so.6 /lib64/glibc-hwcaps/power9/libpthread-2.28.so (glibc 2.33+) Before: dracut-install: Lib install: '/lib64/libz.so.1' dracut-install: dracut_install('/lib64/libz.so', '/lib64/libz.so', 0, 0, 1) dracut-install: dracut_install('//libz.so.1', '//libz.so.1', 0, 0, 1) dracut-install: dracut_install('//libz.so', '//libz.so', 0, 0, 1) After: dracut-install: Lib install: '/lib64/libz.so.1' dracut-install: dracut_install('/lib64/libz.so', '/lib64/libz.so', 0, 0, 1) --- diff --git a/src/install/dracut-install.c b/src/install/dracut-install.c index 8daa60884..dbbeb6cd1 100644 --- a/src/install/dracut-install.c +++ b/src/install/dracut-install.c @@ -392,7 +392,8 @@ static int library_install(const char *src, const char *lib) return ret; ppdir = dirname_malloc(pdir); - if (!ppdir) + /* only one parent directory, not HWCAP library */ + if (!ppdir || streq(ppdir, "/")) return ret; pppdir = dirname_malloc(ppdir);