diff options
Diffstat (limited to 'tests/mod_system_logger/mod_system_logger.c')
-rw-r--r-- | tests/mod_system_logger/mod_system_logger.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/mod_system_logger/mod_system_logger.c b/tests/mod_system_logger/mod_system_logger.c new file mode 100644 index 0000000..1d31fdb --- /dev/null +++ b/tests/mod_system_logger/mod_system_logger.c @@ -0,0 +1,36 @@ +#include <linux/module.h> +#include <linux/proc_fs.h> +#include <linux/seq_file.h> + +int i; + +static int system_proc_show(struct seq_file *m, void *v) { + for(i=0; i<1000; i++) + seq_printf(m, "Test Systemlogger %i\n",i); + return 0; +} + +static int system_proc_open(struct inode *inode, struct file *file) { + return single_open(file, system_proc_show, NULL); +} + +static const struct file_operations system_proc_fops = { + .owner = THIS_MODULE, + .open = system_proc_open, + .read = seq_read, + .llseek = seq_lseek, + .release = single_release, +}; + +static int __init system_proc_init(void) { + proc_create("systemlogger", 0, NULL, &system_proc_fops); + return 0; +} + +static void __exit system_proc_exit(void) { + remove_proc_entry("systemlogger", NULL); +} + +MODULE_LICENSE("GPL"); +module_init(system_proc_init); +module_exit(system_proc_exit); |