]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
libkmod: don't use %m on read_str_ulong() failure
authorEmil Velikov <emil.l.velikov@gmail.com>
Wed, 4 Jun 2025 16:16:25 +0000 (17:16 +0100)
committerLucas De Marchi <lucas.de.marchi@gmail.com>
Wed, 11 Jun 2025 13:03:26 +0000 (08:03 -0500)
The function returns the actual error itself, identically to the signed
variant - read_str_long(). Unlike the signed variant, one of ulong's
users incorrectly uses %m instead of strerror(-err).

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://github.com/kmod-project/kmod/pull/368
Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
libkmod/libkmod-module.c

index 229c6bca30c0956b4cd43ddd29d2610cbed6afa4..7bf37bba4b4fea2ac3092853ffbf9071eab69237 100644 (file)
@@ -1673,8 +1673,8 @@ KMOD_EXPORT struct kmod_list *kmod_module_get_sections(const struct kmod_module
                err = read_str_ulong(fd, &address, 16);
                close(fd);
                if (err < 0) {
-                       ERR(mod->ctx, "could not read long from '%s/%s': %m\n", dname,
-                           dent->d_name);
+                       ERR(mod->ctx, "could not read long from '%s/%s': %s\n", dname,
+                           dent->d_name, strerror(-err));
                        goto fail;
                }