]> git.ipfire.org Git - thirdparty/kmod.git/blobdiff - NEWS
Fix return value doc for kmod_module_get_info()
[thirdparty/kmod.git] / NEWS
diff --git a/NEWS b/NEWS
index 8bf8346db723afac2c7a381e88ba7a53d5fbbc58..ae56657ad935636b8ce857d94ef299c5cdb12cee 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,182 @@
+kmod 28
+=======
+
+- Improvements
+       - Add Zstandard to the supported compression formats using libzstd
+         (pass --with-zstd to configure)
+
+- Bug fixes
+       - Ignore ill-formed kernel command line, e.g. with "ivrs_acpihid[00:14.5]=AMD0020:0"
+         option in it
+       - Fix some memory leaks
+       - Fix 0-length builtin.alias.bin: it needs at least the index header
+
+kmod 27
+=======
+
+- Improvements
+       - Link to libcrypto rather than requiring openssl
+
+       - Print a better error message when kernel doesn't support module unload
+
+       - Use PKCS#7 instead of CMS for parsing module signature to be
+         compatible with LibreSSL and OpenSSL < 1.1.0
+
+       - Teach modinfo to parse modules.builtin.modinfo. When using Linux kernel
+         >= v5.2-rc1 it's possible to get module information from this new file. Now
+         modinfo is able to show it instead of an error message that the module is
+         built-in:
+
+         Before:
+         $ modinfo ext4
+         modinfo: ERROR: Module ext4 not found.
+
+         After:
+         $ modinfo ext4
+         name:           ext4
+         filename:       (builtin)
+         softdep:        pre: crc32c
+         license:        GPL
+         description:    Fourth Extended Filesystem
+         author:         Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others
+         alias:          fs-ext4
+         alias:          ext3
+         alias:          fs-ext3
+         alias:          ext2
+         alias:          fs-ext2
+
+- Bug fixes
+       - Do not link python bindings with libpython to be compatible with
+         python3.8
+
+       - Fix module removal with `modprobe -r` when a dependency is built-in.
+         Now it properly ignores them and proceed with removal of other
+         dependencies
+
+       - Fix propagation of return code from install/remove commands to the
+         the probe function. The return values of kmod_module_probe_insert_module()
+         have very specific meanings, do not confuse the caller by return codes
+         from system()
+
+       - Fix softdep config parsing leading to buffer overflow
+
+kmod 26
+=======
+
+- Improvements
+       - Add more error-checking in library functions and remove warnings on newer
+         toolchains
+
+       - Depmod now handles parallel invoctions better by protecting the temporary
+         files being used
+
+       - Improvements to testsuite and added tests to check the our behavior
+         regardless of the features enabled in the kernel, or libraries we link to
+
+       - Teach the --show-exports option to modprobe. This works similarly to
+         --show-modversions, but it reports the exported symbols from that module.
+         Under the hood this reads the .symtab and .strtab section rather than
+         __versions so it shows useful data even if kernel is configured without
+         modversions (CONFIG_MODVERSIONS)
+
+       - Teach pkcs7 parsing to modinfo by using openssl. This allows modinfo to
+         correctly parse the signature appended to a module by the kernel build
+         system when configured with CONFIG_MODULE_SIG_ALL, or when externally
+         signed by the distro. Traditionally modules were signed and a struct
+         was appended together with the signature to the end of the module.
+         This has changed on the kernel for pkcs#7 and now the structure isn't
+         filled out with useful information.  So we have to parse the signature
+         block in order to return useful data to the user.
+
+         If kmod is linked with openssl we parse the signature and return the
+         fields as we do for other signatures. An example of the relevant part
+         on the output of modinfo is below:
+
+         Before:
+                 sig_id:         PKCS#7
+                 signer:
+                 sig_key:
+                 sig_hashalgo:   md4
+         After:
+                 sig_id:         PKCS#7
+                 signer:         Fedora kernel signing key
+                 sig_key:        51:C4:0C:6D:7E:A5:6C:D8:8F:B4:3A:DF:91:78:4F:18:BC:D5:E4:C5
+                 sig_hashalgo:   sha256
+
+         If kmod is not linked to openssl we just start printing "unknonwn" in the
+         sig_hashalgo field rather than the bogus value.
+
+
+kmod 25
+=======
+
+- Improvements
+       - Add module signature to modinfo output
+
+       - Add support for external directories in depmod: now there's a new
+         "external" keyword parsed by depmod when calculating the dependencies.
+         It allows to add modules to other directories which are not relative
+         to where the modules are commonly installed.  This results in
+         modules.dep and friends now understanding absolute paths rather than
+         relative paths only. For more information see depmod.d(1).
+
+       - Add support for CONFIG_MODULE_REL_CRCS
+
+       - Add missing documentation references in man pages
+
+       - Handle the case in which module has a .TOC symbol already while
+         calculating dependencies
+
+       - Improve testsuite and allow to use mkosi to run testsuite in different
+         distros
+
+kmod 24
+=======
+
+- Improvements:
+       - Add more information on dependency loop
+
+       - Sanitize use of strcpy and allow to grow from small strings on stack
+         (common case) to bigger strings on heap when needed
+
+- Bug fixes
+       - Fix wrong dependency loops being reported by depmod
+
+       - Fix crashes when reporting dependency loops
+
+       - Fix parsing kernel command line containing quotes
+
+       - Fix leaks on error paths
+
+kmod 23
+=======
+
+- Improvements:
+       - Don't add comment to modules.devname if it would otherwise be empty
+         to play nice with tools detecting empty files
+
+       - Allow building with BSD sed, that doesn't have -E flag
+
+       - Ignore .TOC. symbols in depmod parsing as it's for PPC64 the
+         equivalent of _GLOBAL_OFFSET_TABLE_
+
+       - Teach modinfo about PKCS#7 module signatures: it doesn't add any
+         other info besides telling the user the module is signed since
+         kernel doesn't add other info on the module section
+
+- Bug fixes
+
+       - Fix -s and -p compat options to insmod triggering force flag
+
+       - Fix long lines from /proc/modules not being handled correctly by
+         kmod_module_new_from_loaded() and kmod_module_get_size() and several
+         other library functions that use them
+
+       - Fix crash on modinfo while checking for available signature of
+         unknown type
+
+       - Fix documentation generation with gtk-doc
+
 kmod 22
 =======
 
@@ -249,7 +428,7 @@ kmod 11
 - New features:
        - libkmod now keeps a file opened after the first call to
          kmod_module_get_{info,versions,symbols,dependency_symbols}. This
-         reduces signficantly the amount of time depmod tool takes to
+         reduces significantly the amount of time depmod tool takes to
          execute. Particularly if compressed modules are used.
        - Remove --with-rootprefix from build system. It was not a great idea
          after all and should not be use since it causes more harm then