From adbfb7c71fe1e958a2a2397c7b88c3061043c54e Mon Sep 17 00:00:00 2001 From: Kyle K Date: Sat, 22 Dec 2012 00:31:53 -0600 Subject: initial commit this is a simple try of unuseful code in kernel space, debugfs is used to create a dir and a file --- main.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 main.c (limited to 'main.c') diff --git a/main.c b/main.c new file mode 100644 index 0000000..6a65f3c --- /dev/null +++ b/main.c @@ -0,0 +1,46 @@ +#include +#include +#include +#include +#include +/* used for kmalloc */ +#include + +#include + +char *debugmsg = "Tesla coil is a hi freq transformer"; +struct dentry *debug_dir = NULL; +struct dentry *debug_file = NULL; + +/* __init is a hint that the func is only used at initialization time, then module + * loader drops the function after module is loaded making its memory available for other uses + */ +static int __init hello_init(void) +{ + int err = 0; + char *msg = (char *) kmalloc_array(128, sizeof(char), GFP_KERNEL /* kernel ram */); + + printk("module named hello inserted\n"); + strcpy(msg, "photon is the energy carrier particle for EM waves within light spectrum"); + printk("%s\n", msg); + kfree(msg); + + /* modifies passed in ptrs */ + err = debug_init(&debug_dir, &debug_file); + if (err) + printk("debugfs might not have been mounted\n"); + + return 0; +} + +static void __exit hello_exit(void) +{ + debug_destroy(debug_dir, debug_file); + printk("module named hello removed\n"); +} + +module_init(hello_init); +module_exit(hello_exit); + +MODULE_LICENSE("GPL"); + -- cgit v1.2.3