summaryrefslogtreecommitdiffstats
path: root/plugins/imklog/module.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-04-08 13:50:52 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2008-04-08 13:50:52 +0200
commite2502c6d8ff9edd57b706657ab12df32c8b41514 (patch)
tree95ad8a2c830c24d312a852e873bff5c2d5bd5f0c /plugins/imklog/module.h
parente2436a0104dd5e9dbe51e4d60972ccf4312a7b88 (diff)
downloadrsyslog-e2502c6d8ff9edd57b706657ab12df32c8b41514.tar.gz
rsyslog-e2502c6d8ff9edd57b706657ab12df32c8b41514.tar.xz
rsyslog-e2502c6d8ff9edd57b706657ab12df32c8b41514.zip
bugfix: imklog did not work well with kernel 2.6+.
Thanks to Peter Vrabec for patching it based on the development in sysklogd - and thanks to the sysklogd project for upgrading klogd to support the new functionality.
Diffstat (limited to 'plugins/imklog/module.h')
-rw-r--r--plugins/imklog/module.h59
1 files changed, 7 insertions, 52 deletions
diff --git a/plugins/imklog/module.h b/plugins/imklog/module.h
index 71eac2c4..7a26ad02 100644
--- a/plugins/imklog/module.h
+++ b/plugins/imklog/module.h
@@ -19,63 +19,18 @@
*
* A copy of the GPL can be found in the file "COPYING" in this distribution.
*/
-struct kernel_sym
-{
- unsigned long value;
- char name[60];
-};
-struct module_symbol
+struct sym_table
{
- unsigned long value;
- const char *name;
+ unsigned long value;
+ char *name;
};
-struct module_ref
+struct Module
{
- struct module *dep; /* "parent" pointer */
- struct module *ref; /* "child" pointer */
- struct module_ref *next_ref;
-};
+ struct sym_table *sym_array;
+ int num_syms;
-struct module_info
-{
- unsigned long addr;
- unsigned long size;
- unsigned long flags;
- long usecount;
+ char *name;
};
-
-typedef struct { volatile int counter; } atomic_t;
-
-struct module
-{
- unsigned long size_of_struct; /* == sizeof(module) */
- struct module *next;
- const char *name;
- unsigned long size;
-
- union
- {
- atomic_t usecount;
- long pad;
- } uc; /* Needs to keep its size - so says rth */
-
- unsigned long flags; /* AUTOCLEAN et al */
-
- unsigned nsyms;
- unsigned ndeps;
-
- struct module_symbol *syms;
- struct module_ref *deps;
- struct module_ref *refs;
- int (*init)(void);
- void (*cleanup)(void);
- const struct exception_table_entry *ex_table_start;
- const struct exception_table_entry *ex_table_end;
-#ifdef __alpha__
- unsigned long gp;
-#endif
-};
-