kmod_module_get_module: safety against NULL pointers
authorGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Sun, 4 Dec 2011 15:14:11 +0000 (13:14 -0200)
committerLucas De Marchi <lucas.demarchi@profusion.mobi>
Sun, 4 Dec 2011 19:24:08 +0000 (17:24 -0200)
libkmod/libkmod-module.c
libkmod/libkmod.h

index 9c679cb..8bc644f 100644 (file)
@@ -270,10 +270,11 @@ KMOD_EXPORT struct kmod_list *kmod_module_get_dependency(const struct kmod_modul
        return mod->dep;
 }
 
-KMOD_EXPORT struct kmod_module *kmod_module_get_module(const struct kmod_list *l)
+KMOD_EXPORT struct kmod_module *kmod_module_get_module(const struct kmod_list *entry)
 {
-       struct kmod_module *mod = l->data;
-       return kmod_module_ref(mod);
+       if (entry == NULL)
+               return NULL;
+       return kmod_module_ref(entry->data);
 }
 
 KMOD_EXPORT const char *kmod_module_get_name(const struct kmod_module *mod)
index d7687be..fca4107 100644 (file)
@@ -108,7 +108,7 @@ int kmod_module_new_from_lookup(struct kmod_ctx *ctx, const char *alias,
 struct kmod_module *kmod_module_ref(struct kmod_module *mod);
 struct kmod_module *kmod_module_unref(struct kmod_module *mod);
 int kmod_module_unref_list(struct kmod_list *list);
-struct kmod_module *kmod_module_get_module(const struct kmod_list *l);
+struct kmod_module *kmod_module_get_module(const struct kmod_list *entry);
 struct kmod_list *kmod_module_get_dependency(const struct kmod_module *mod);
 
 int kmod_module_remove_module(struct kmod_module *mod, unsigned int flags);