Commit Graph

72 Commits

Author SHA1 Message Date
Lucas De Marchi
b418a82097 Use fstat() instead of stat() when possible 2011-12-01 23:13:27 -02:00
Lucas De Marchi
0835fc3bf9 Add fucntion to API to get dependencies 2011-12-01 20:06:08 -02:00
Lucas De Marchi
c11e62bfd4 Use strtok_r insteat of strtok
strtok is not thread-safe because it uses a static pointer to keep track
of position in the string. Using strtok_r solves the problem.
2011-12-01 18:59:54 -02:00
Lucas De Marchi
bf89f76eaa Add TODO file with a few items 2011-12-01 18:23:47 -02:00
Lucas De Marchi
4a3eb3a4cc Add dependencies when module is create by name lookup
We already have the data needed to add the dependencies, so call
fucntion to transform it in a list and save in kmod_module structure.
2011-12-01 17:57:07 -02:00
Lucas De Marchi
7636e72b15 Add dependency list to kmod_module
Dependency list is created from line as defined in modules.dep.
2011-12-01 17:56:03 -02:00
Lucas De Marchi
e915f92ad3 Add missing newlines 2011-12-01 17:47:49 -02:00
Lucas De Marchi
9eaad1f63a Allow path_to_modname to operate locally withou alloc 2011-12-01 17:19:24 -02:00
Lucas De Marchi
49e61ca347 Lookup for alias in modules.alias.bin 2011-12-01 16:27:04 -02:00
Lucas De Marchi
7b30f4f4ff Generalize function to be used by other lookups 2011-12-01 16:25:37 -02:00
Lucas De Marchi
64700e4747 Lookup modules from modules.dep.bin file 2011-12-01 15:58:12 -02:00
Lucas De Marchi
23fc91c642 Make lookup functions return number of elements found 2011-12-01 15:35:31 -02:00
Lucas De Marchi
62be799554 Add kmod_list_remove_n_latest() 2011-12-01 15:34:12 -02:00
Lucas De Marchi
79d77111dc Add kmod_list_prev to exported functions 2011-12-01 14:47:44 -02:00
Lucas De Marchi
9ba6f57b5b Lookup modules.symbols.bin
Test in my system:

./test/test-lookup symbol:sas_slave_destroy
libkmod version 0.1
Alias: 'symbol:sas_slave_destroy'
Modules matching:
	libsas
2011-11-30 20:32:53 -02:00
Lucas De Marchi
839d7dadf6 Remove dangling comment 2011-11-30 20:30:39 -02:00
Lucas De Marchi
b14dcfdab3 Prepare lookup function for more files to look after 2011-11-30 20:29:51 -02:00
Lucas De Marchi
904c63aa96 Fix initialization of kernel modules dir 2011-11-30 20:27:50 -02:00
Lucas De Marchi
7e317da3c9 Add startswith() helper function 2011-11-30 19:20:19 -02:00
Lucas De Marchi
aed94cd72a Add test for lookup function 2011-11-30 19:10:48 -02:00
Lucas De Marchi
7f3eb0cced Add lookup to create modules list from alias
We return a kmod_list when searching for an alias. Right now, it only
search for aliases in config files.

To use it, we create a list:
	list = NULL;
	kmod_module_new_from_lookup(..., &list);

And iterate over it to get the modules and their details:

	kmod_list_foreach(l, list) {
		struct kmod_mod *mod = kmod_module_get_module(l);
		...
		... kmod_module_get_name(mod);
		... kmod_module_get_path(mod);
	}

Aliases might contain globs and are match by using fnmatch().
2011-11-30 19:03:41 -02:00
Lucas De Marchi
6e869df73d Add name() and path() getters for kmod_module 2011-11-30 19:01:01 -02:00
Lucas De Marchi
60aa4d8b48 Organize functions in private header 2011-11-30 18:57:38 -02:00
Lucas De Marchi
b0ef19f7f5 Add getters for aliases 2011-11-30 18:18:13 -02:00
Lucas De Marchi
2043369e7e Fix misspellings by use of codespell 2011-11-30 16:02:08 -02:00
Lucas De Marchi
a7be73b917 Remove trailing whitespaces 2011-11-30 15:59:47 -02:00
Lucas De Marchi
e8847fd2fc Import index handling from module-init-tools
This effectively makes the combined work be GPL. All other parts of this
library are still LGPL and if this part in future becomes
double-licensed, we can switch back to LGPL.
2011-11-30 15:23:49 -02:00
Lucas De Marchi
44a5460fea Add streq() to prettify code
It's needed for importing index handling from module-init-tools, and may
be useful for the project, too.
2011-11-30 14:36:46 -02:00
Lucas De Marchi
a507d803b4 Define temporary macros for importing index 2011-11-30 14:35:39 -02:00
Lucas De Marchi
30be7513c0 Use underscores() in module names and aliases 2011-11-30 02:14:57 -02:00
Lucas De Marchi
8185fc91e2 Add underscores() helper to replace - with _ 2011-11-30 02:14:33 -02:00
Lucas De Marchi
81cf2060e0 Parse blacklists in config files 2011-11-29 18:48:02 -02:00
Lucas De Marchi
7c2ab358fd Add support for parsing config files
Right now only alias keyword is treated.
2011-11-29 18:07:43 -02:00
Lucas De Marchi
4462c4ac60 Add getline_wrapped() to parse config files
Basically copied from module-init-tools
2011-11-29 18:05:43 -02:00
Lucas De Marchi
aa1c3521de Add macro to safely derive the size of an array 2011-11-29 17:59:58 -02:00
Lucas De Marchi
191ab4b9e0 Fix wrong copyright
I'm the author, not the copyright owner.
2011-11-28 16:59:06 -02:00
Lucas De Marchi
2bd6299d2b Move down the ifdef for c++ 2011-11-28 12:03:17 -02:00
Lucas De Marchi
1b2e26a1e2 Back to logging without \n
It possibly breaks when not logging to stderr
2011-11-28 11:28:18 -02:00
Lucas De Marchi
a5494f831f Add test-insmod to insert modules
Insmod is supported only with file names yet.
2011-11-25 01:25:18 -02:00
Lucas De Marchi
b84a206085 Add test-rmmod2
Remove module without dealing with the loaded modules first.
2011-11-25 01:24:16 -02:00
Lucas De Marchi
8f788d58c3 Add functions to operate on modules 2011-11-25 01:22:56 -02:00
Lucas De Marchi
46cfa8dc45 Fix check_PROGRAMS in autofoo 2011-11-25 01:21:47 -02:00
Lucas De Marchi
9df4bda566 When logging to stderr, put a \n by default 2011-11-25 01:07:04 -02:00
Lucas De Marchi
ae6df84a3c Make log function uppercase
The worst case is the err() macro. Usually err is used as a variable,
which clashes with this macro.
2011-11-25 01:05:30 -02:00
Lucas De Marchi
8f5d86fd08 Add cscope.out and .swp files to gitignore 2011-11-25 00:32:28 -02:00
Lucas De Marchi
221631d511 Accept dir where we should lookup for modules 2011-11-24 23:20:42 -02:00
Lucas De Marchi
423f856ad9 Format enum 2011-11-24 23:09:40 -02:00
Lucas De Marchi
4d1e689ada Format refcount handling 2011-11-24 23:09:39 -02:00
Lucas De Marchi
853b5fc52e Ref and unref ctx when kmod_loaded is created/destroyed 2011-11-24 23:09:39 -02:00
Lucas De Marchi
cf9aadeb25 Fix refcount of loaded modules 2011-11-24 15:41:15 -02:00