]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
insmod: allows providing option to module.
authorGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Sat, 10 Dec 2011 23:02:39 +0000 (21:02 -0200)
committerGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Sun, 11 Dec 2011 22:58:22 +0000 (20:58 -0200)
libkmod/libkmod-module.c
libkmod/libkmod.h
test/test-insmod.c

index ca25bc74bfd503496a295b4a61331815460c61b2..96be0cb1924bfccc686370d76f9f1925790868a8 100644 (file)
@@ -518,13 +518,14 @@ KMOD_EXPORT int kmod_module_remove_module(struct kmod_module *mod,
 extern long init_module(void *mem, unsigned long len, const char *args);
 
 KMOD_EXPORT int kmod_module_insert_module(struct kmod_module *mod,
-                                                       unsigned int flags)
+                                                       unsigned int flags,
+                                                       const char *options)
 {
        int err;
        void *mmaped_file;
        struct stat st;
        int fd;
-       const char *args = "";
+       const char *args = options ? options : "";
 
        if (mod == NULL)
                return -ENOENT;
index a7fc77646434a611d9755cd3d2108cbe9bb9d3a8..130c703b11a342725f9080e299905ba2f4523e65 100644 (file)
@@ -102,7 +102,7 @@ struct kmod_list *kmod_module_get_dependencies(const struct kmod_module *mod);
 int kmod_module_get_filtered_blacklist(const struct kmod_ctx *ctx, const struct kmod_list *input, struct kmod_list **output);
 
 int kmod_module_remove_module(struct kmod_module *mod, unsigned int flags);
-int kmod_module_insert_module(struct kmod_module *mod, unsigned int flags);
+int kmod_module_insert_module(struct kmod_module *mod, unsigned int flags, const char *options);
 
 const char *kmod_module_get_name(const struct kmod_module *mod);
 const char *kmod_module_get_path(const struct kmod_module *mod);
index aeb735ab5427a69b7eecfba50316f5f08c78461c..6deaf77ec115c98ede1b3a2b888e06396189c762 100644 (file)
@@ -36,7 +36,7 @@ int main(int argc, char *argv[])
 
        printf("Trying insmod '%s' (%s)\n", kmod_module_get_name(mod),
                                                kmod_module_get_path(mod));
-       err = kmod_module_insert_module(mod, 0);
+       err = kmod_module_insert_module(mod, 0, NULL);
        if (err < 0) {
                fprintf(stderr, "%s\n", strerror(-err));