]> git.ipfire.org Git - thirdparty/kmod.git/blobdiff - TODO
testsuite: do not overrid paths inside build
[thirdparty/kmod.git] / TODO
diff --git a/TODO b/TODO
index d174a877bca8f5b3dc82b3eaae3845fa8f9a7309..800ce79a49f97adcbf8891972a10055e67a39c01 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,44 +1,52 @@
 Features:
 =========
 
-* config: configs that do not need to be matched by fnmatch() could be using a
-  vector instead of a list. This way we could search in it by calling
-  bsearch().
-
-* index: drop the "open(), seek(), read()" implementation and use another one
-  with mmap(). When lookup() is called and the file is not mmaped, mmap it.
+* Add command for signing modules
+   - There is a script to sign modules in kernel tree, but we should be able to
+   sign modules by ourselves
 
-* create test-mock library to be LD_PRELOAD'ed before running the binaries
-  so we're able to create unit tests
+* Remove duplicate symbols in libkmod and tools
+   - Some functions were added both in libkmod and tools like depmod since they
+     couldn't be easily exported. Now we could be sharing there more easily
+     through libkmod-internal, or by creating a shared/ dir in which to put
+     these functions
 
-* provide ELF manipulation to implement modinfo
+* Stop using NOFAIL() and fatal()
 
-* Add functions to dump configuration
+* Protect index against OOM
 
-* Add functions list all modules known by modules.dep
+* Implement actions in kmod tool like 'insert', 'remove', 'info', etc
 
-* provide 1:1 compatibility with module-init-tools's modprobe
-   - show modversions (needs elf manipulation)
-   - dump configuration
-   - install and remove commands may exist when there's no module with that
-     name. Properly handle this case
+* testsuite:
+   - when fake delete_module() succeeds, remove its entry from /sys/module
 
-Known Bugs:
-===========
+* Stop using system() inside the library and use fork + exec instead
 
+* config: configs that do not need to be matched by fnmatch() could be using a
+  vector instead of a list. This way we could search in it by calling
+  bsearch().
 
-Notes for future development:
-=============================
+* review API, maybe unify all of these getters:
+   - kmod_module_version_get_symbol()
+   - kmod_module_version_get_crc()
+   - kmod_module_symbol_get_symbol()
+   - kmod_module_symbol_get_crc()
+   - kmod_module_dependency_symbol_get_symbol()
+   - kmod_module_dependency_symbol_get_crc()
+   - kmod_module_versions_free_list()
+   - kmod_module_symbols_free_list()
+   - kmod_module_dependency_symbols_free_list()
 
-* Kill support for /etc/modprobe.conf
+* index: drop the "open(), seek(), read()" implementation and use another one
+  with mmap(). When lookup() is called and the file is not mmaped, mmap it.
 
-* Kill support for map files
 
-Things to be added removed in kernel (check what is really needed):
+Things to be added/removed in kernel (check what is really needed):
 ===================================================================
 
 * list of currently loaded modules
-
-* module's size should be available under /sys
+       - readdir() in /sys/modules: dir without a 'initstate' file means the
+         module is builtin.
 
 * kill /proc/modules ?
+       - Unlikely, given other tools might depend on it