From: Wu Zhenyu <[email protected]>
To: [email protected]
Subject: [PATCH] libkmod: use realpath
Date: Wed, 4 Oct 2023 21:04:08 +0800
Message-ID: <[email protected]>
X-Mailer: git-send-email 2.42.0
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
$ modinfo ../Linux-Device-Driver/eg_07_ioctl/ioctl.ko | head -n1
filename:
/home/wzy/Desktop/kmod/../Linux-Device-Driver/eg_07_ioctl/ioctl.ko
$ tools/modinfo ../Linux-Device-Driver/eg_07_ioctl/ioctl.ko | head -n1
filename: /home/wzy/Desktop/Linux-Device-Driver/eg_07_ioctl/ioctl.ko
---
libkmod/libkmod-module.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c
index 585da41..bdc1427 100644
--- a/libkmod/libkmod-module.c
+++ b/libkmod/libkmod-module.c
@@ -794,15 +794,17 @@ KMOD_EXPORT const char *kmod_module_get_name(const struct
kmod_module *mod)
*/
KMOD_EXPORT const char *kmod_module_get_path(const struct kmod_module *mod)
{
- char *line;
+ char *line, *path;
if (mod == NULL)
return NULL;
DBG(mod->ctx, "name='%s' path='%s'\n", mod->name, mod->path);
- if (mod->path != NULL)
- return mod->path;
+ if (mod->path != NULL) {
+ path = malloc(strlen(mod->path));
+ return realpath(mod->path, path);
+ }
if (mod->init.dep)
return NULL;
--
2.42.0