diff options
author | Gustavo Sverzut Barbieri <barbieri@profusion.mobi> | 2011-12-08 13:58:46 -0200 |
---|---|---|
committer | Lucas De Marchi <lucas.demarchi@profusion.mobi> | 2011-12-08 14:07:13 -0200 |
commit | e5c60f1c283ddc92286d9d30d0a3d09184d52f49 (patch) | |
tree | 29b0b1d10cf92aeb5faa07e894aade917eabb554 /libkmod | |
parent | 1bdd951ee2fcc906a0394ee0b387e355d2bab850 (diff) | |
download | kmod-e5c60f1c283ddc92286d9d30d0a3d09184d52f49.tar.gz |
NULL safety in public places, allows disable logging.
Diffstat (limited to 'libkmod')
-rw-r--r-- | libkmod/libkmod.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libkmod/libkmod.c b/libkmod/libkmod.c index b08c6af..79dd470 100644 --- a/libkmod/libkmod.c +++ b/libkmod/libkmod.c @@ -68,6 +68,9 @@ void kmod_log(const struct kmod_ctx *ctx, { va_list args; + if (ctx->log_fn == NULL) + return; + va_start(args, format); ctx->log_fn(ctx->log_data, priority, file, line, fn, format, args); va_end(args); @@ -267,6 +270,8 @@ KMOD_EXPORT void kmod_set_log_fn(struct kmod_ctx *ctx, const char *format, va_list args), const void *data) { + if (ctx == NULL) + return; ctx->log_fn = log_fn; ctx->log_data = (void *)data; INFO(ctx, "custom logging function %p registered\n", log_fn); @@ -280,6 +285,8 @@ KMOD_EXPORT void kmod_set_log_fn(struct kmod_ctx *ctx, **/ KMOD_EXPORT int kmod_get_log_priority(const struct kmod_ctx *ctx) { + if (ctx == NULL) + return -1; return ctx->log_priority; } @@ -293,6 +300,8 @@ KMOD_EXPORT int kmod_get_log_priority(const struct kmod_ctx *ctx) **/ KMOD_EXPORT void kmod_set_log_priority(struct kmod_ctx *ctx, int priority) { + if (ctx == NULL) + return; ctx->log_priority = priority; } |