]> git.ipfire.org Git - thirdparty/kmod.git/commitdiff
improve "const" keyword usage.
authorGustavo Sverzut Barbieri <barbieri@profusion.mobi>
Fri, 2 Dec 2011 22:24:07 +0000 (20:24 -0200)
committerLucas De Marchi <lucas.demarchi@profusion.mobi>
Sat, 3 Dec 2011 05:51:55 +0000 (03:51 -0200)
functions that do not modify their parameters get them as const pointers.

special cases:
 * kmod_get_userdata/kmod_set_userdata: return as void* for user convenience.
 * kmod_list_append/kmod_list_prepend: take const void* for user convenience.

libkmod/libkmod-config.c
libkmod/libkmod-list.c
libkmod/libkmod-loaded.c
libkmod/libkmod-module.c
libkmod/libkmod-private.h
libkmod/libkmod.c
libkmod/libkmod.h

index 66d837248a36c87697ccebf93cd591e961fa2246..656db77c30b742d68609e4ff530a32f3c57d0375 100644 (file)
@@ -44,12 +44,12 @@ struct kmod_alias {
 };
 
 const char *kmod_alias_get_name(const struct kmod_list *l) {
-       struct kmod_alias *alias = l->data;
+       const struct kmod_alias *alias = l->data;
        return alias->name;
 }
 
 const char *kmod_alias_get_modname(const struct kmod_list *l) {
-       struct kmod_alias *alias = l->data;
+       const struct kmod_alias *alias = l->data;
        return alias->modname;
 }
 
@@ -261,7 +261,7 @@ int kmod_parse_config(struct kmod_ctx *ctx, struct kmod_config *config)
 {
 
        size_t i, n = 0;
-       char **files = NULL;
+       const char **files;
        int err = 0;
        struct kmod_list *list = NULL, *l;
 
index d9caba0efc6726c73722c325e3de796d57f54281..333a54c469786bfa63be6c8503de1a7125a0459c 100644 (file)
@@ -30,7 +30,7 @@ static inline struct list_node *list_node_init(struct list_node *node)
        return node;
 }
 
-static inline struct list_node *list_node_next(struct list_node *node)
+static inline struct list_node *list_node_next(const struct list_node *node)
 {
        if (node == NULL)
                return NULL;
@@ -38,7 +38,7 @@ static inline struct list_node *list_node_next(struct list_node *node)
        return node->next;
 }
 
-static inline struct list_node *list_node_prev(struct list_node *node)
+static inline struct list_node *list_node_prev(const struct list_node *node)
 {
        if (node == NULL)
                return NULL;
@@ -71,7 +71,7 @@ static inline struct list_node *list_node_remove(struct list_node *node)
        return node->prev;
 }
 
-struct kmod_list *kmod_list_append(struct kmod_list *list, void *data)
+struct kmod_list *kmod_list_append(struct kmod_list *list, const void *data)
 {
        struct kmod_list *new;
 
@@ -79,13 +79,13 @@ struct kmod_list *kmod_list_append(struct kmod_list *list, void *data)
        if (new == NULL)
                return NULL;
 
-       new->data = data;
+       new->data = (void *)data;
        list_node_append(list ? &list->node : NULL, &new->node);
 
        return list ? list : new;
 }
 
-struct kmod_list *kmod_list_prepend(struct kmod_list *list, void *data)
+struct kmod_list *kmod_list_prepend(struct kmod_list *list, const void *data)
 {
        struct kmod_list *new;
 
@@ -93,7 +93,7 @@ struct kmod_list *kmod_list_prepend(struct kmod_list *list, void *data)
        if (new == NULL)
                return NULL;
 
-       new->data = data;
+       new->data = (void *)data;
        list_node_append(list ? &list->node : NULL, &new->node);
 
        return new;
@@ -166,8 +166,8 @@ struct kmod_list *kmod_list_remove_n_latest(struct kmod_list *list,
        return list;
 }
 
-KMOD_EXPORT struct kmod_list *kmod_list_prev(struct kmod_list *list,
-                                                       struct kmod_list *curr)
+KMOD_EXPORT struct kmod_list *kmod_list_prev(const struct kmod_list *list,
+                                                       const struct kmod_list *curr)
 {
        if (list == NULL || curr == NULL)
                return NULL;
@@ -178,8 +178,8 @@ KMOD_EXPORT struct kmod_list *kmod_list_prev(struct kmod_list *list,
        return container_of(curr->node.prev, struct kmod_list, node);
 }
 
-KMOD_EXPORT struct kmod_list *kmod_list_next(struct kmod_list *list,
-                                                       struct kmod_list *curr)
+KMOD_EXPORT struct kmod_list *kmod_list_next(const struct kmod_list *list,
+                                                       const struct kmod_list *curr)
 {
        if (list == NULL || curr == NULL)
                return NULL;
index b14976595cfc120912fe13d61e7195d4c007506a..cda90126293a75845699c24bd0c0b6742041a329 100644 (file)
@@ -210,7 +210,7 @@ KMOD_EXPORT int kmod_loaded_get_module_info(const struct kmod_list *entry,
                                                const char **deps,
                                                uintptr_t *addr)
 {
-       struct kmod_loaded_module *m;
+       const struct kmod_loaded_module *m;
 
        if (entry == NULL)
                return -ENOENT;
index 552d9ea1dafbe77a3b2feaf31a80f64174da24bb..969d3049fcc52a846d62eab9c138212f8b7fcb5e 100644 (file)
@@ -263,25 +263,25 @@ KMOD_EXPORT int kmod_module_unref_list(struct kmod_list *list)
 /*
  * We don't increase the refcount. Maybe we should.
  */
-KMOD_EXPORT struct kmod_list *kmod_module_get_dependency(struct kmod_module *mod)
+KMOD_EXPORT struct kmod_list *kmod_module_get_dependency(const struct kmod_module *mod)
 {
        // FIXME calculate dependency if it's not initialized
        return mod->dep;
 }
 
-KMOD_EXPORT struct kmod_module *kmod_module_get_module(struct kmod_list *l)
+KMOD_EXPORT struct kmod_module *kmod_module_get_module(const struct kmod_list *l)
 {
        struct kmod_module *mod = l->data;
        return kmod_module_ref(mod);
 }
 
-KMOD_EXPORT const char *kmod_module_get_name(struct kmod_module *mod)
+KMOD_EXPORT const char *kmod_module_get_name(const struct kmod_module *mod)
 {
        // FIXME calculate name if name == NULL
        return mod->name;
 }
 
-KMOD_EXPORT const char *kmod_module_get_path(struct kmod_module *mod)
+KMOD_EXPORT const char *kmod_module_get_path(const struct kmod_module *mod)
 {
        // FIXME calculate path if path == NULL
        return mod->path;
index 1d32e8b89dc758ce3df6f3b3dc5dcabc8d69356c..34b09ef9c95225588e8f9c8cd65cfb3ecb32d5c0 100644 (file)
@@ -46,8 +46,8 @@ struct kmod_list {
        void *data;
 };
 
-struct kmod_list *kmod_list_append(struct kmod_list *list, void *data) __must_check;
-struct kmod_list *kmod_list_prepend(struct kmod_list *list, void *data) __must_check;
+struct kmod_list *kmod_list_append(struct kmod_list *list, const void *data) __must_check;
+struct kmod_list *kmod_list_prepend(struct kmod_list *list, const void *data) __must_check;
 struct kmod_list *kmod_list_remove(struct kmod_list *list);
 struct kmod_list *kmod_list_remove_data(struct kmod_list *list,
                                        const void *data) __must_check;
@@ -55,7 +55,7 @@ struct kmod_list *kmod_list_remove_n_latest(struct kmod_list *list,
                                                unsigned int n) __must_check;
 
 /* libkmod.c */
-const char *kmod_get_dirname(struct kmod_ctx *ctx) __attribute__((nonnull(1)));
+const char *kmod_get_dirname(const struct kmod_ctx *ctx) __attribute__((nonnull(1)));
 int kmod_lookup_alias_from_config(struct kmod_ctx *ctx, const char *name, struct kmod_list **list);
 int kmod_lookup_alias_from_symbols_file(struct kmod_ctx *ctx, const char *name, struct kmod_list **list);
 int kmod_lookup_alias_from_aliases_file(struct kmod_ctx *ctx, const char *name, struct kmod_list **list);
index 7dd4579381ca9192d078dac137c29c02b01ed508..c9966e0ce435462ea04a1f0dc9d598745ebfdb08 100644 (file)
@@ -50,8 +50,8 @@ struct kmod_ctx {
        void (*log_fn)(struct kmod_ctx *ctx,
                        int priority, const char *file, int line,
                        const char *fn, const char *format, va_list args);
-       void *userdata;
-       const char *dirname;
+       const void *userdata;
+       char *dirname;
        int log_priority;
        struct kmod_config config;
 };
@@ -75,7 +75,7 @@ static void log_stderr(struct kmod_ctx *ctx,
        vfprintf(stderr, format, args);
 }
 
-const char *kmod_get_dirname(struct kmod_ctx *ctx)
+const char *kmod_get_dirname(const struct kmod_ctx *ctx)
 {
        return ctx->dirname;
 }
@@ -93,7 +93,7 @@ KMOD_EXPORT void *kmod_get_userdata(const struct kmod_ctx *ctx)
 {
        if (ctx == NULL)
                return NULL;
-       return ctx->userdata;
+       return (void *)ctx->userdata;
 }
 
 /**
@@ -103,7 +103,7 @@ KMOD_EXPORT void *kmod_get_userdata(const struct kmod_ctx *ctx)
  *
  * Store custom @userdata in the library context.
  **/
-KMOD_EXPORT void kmod_set_userdata(struct kmod_ctx *ctx, void *userdata)
+KMOD_EXPORT void kmod_set_userdata(struct kmod_ctx *ctx, const void *userdata)
 {
        if (ctx == NULL)
                return;
@@ -129,7 +129,7 @@ static int log_priority(const char *priority)
 
 static const char *dirname_default_prefix = "/lib/modules";
 
-static const char *get_kernel_release(const char *dirname)
+static char *get_kernel_release(const char *dirname)
 {
        struct utsname u;
        char *p;
@@ -217,7 +217,7 @@ KMOD_EXPORT struct kmod_ctx *kmod_unref(struct kmod_ctx *ctx)
        if (--ctx->refcount > 0)
                return ctx;
        INFO(ctx, "context %p released\n", ctx);
-       free((char *)ctx->dirname);
+       free(ctx->dirname);
        kmod_free_config(ctx, &ctx->config);
        free(ctx);
        return NULL;
index 923f7abd70968823981bedf224fabb4cd3d6f572..d7687bef72d8a4a3839e5a7a272b4243d85de10c 100644 (file)
@@ -46,7 +46,7 @@ void kmod_set_log_fn(struct kmod_ctx *ctx,
 int kmod_get_log_priority(const struct kmod_ctx *ctx);
 void kmod_set_log_priority(struct kmod_ctx *ctx, int priority);
 void *kmod_get_userdata(const struct kmod_ctx *ctx);
-void kmod_set_userdata(struct kmod_ctx *ctx, void *userdata);
+void kmod_set_userdata(struct kmod_ctx *ctx, const void *userdata);
 
 /*
  * kmod_list
@@ -54,10 +54,10 @@ void kmod_set_userdata(struct kmod_ctx *ctx, void *userdata);
  * access to kmod generated lists
  */
 struct kmod_list;
-struct kmod_list *kmod_list_next(struct kmod_list *first_entry,
-                                               struct kmod_list *list_entry);
-struct kmod_list *kmod_list_prev(struct kmod_list *first_entry,
-                                               struct kmod_list *list_entry);
+struct kmod_list *kmod_list_next(const struct kmod_list *first_entry,
+                                               const struct kmod_list *list_entry);
+struct kmod_list *kmod_list_prev(const struct kmod_list *first_entry,
+                                               const struct kmod_list *list_entry);
 #define kmod_list_foreach(list_entry, first_entry) \
        for (list_entry = first_entry; \
                list_entry != NULL; \
@@ -108,14 +108,14 @@ 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(struct kmod_list *l);
-struct kmod_list *kmod_module_get_dependency(struct kmod_module *mod);
+struct kmod_module *kmod_module_get_module(const struct kmod_list *l);
+struct kmod_list *kmod_module_get_dependency(const struct kmod_module *mod);
 
 int kmod_module_remove_module(struct kmod_module *mod, unsigned int flags);
 int kmod_module_insert_module(struct kmod_module *mod, unsigned int flags);
 
-const char *kmod_module_get_name(struct kmod_module *mod);
-const char *kmod_module_get_path(struct kmod_module *mod);
+const char *kmod_module_get_name(const struct kmod_module *mod);
+const char *kmod_module_get_path(const struct kmod_module *mod);
 
 #ifdef __cplusplus
 } /* extern "C" */