bla
[my-code/kernel.git] / hello / hello-1.c
index 63c883d..a0d241d 100644 (file)
@@ -1,6 +1,58 @@
-/* hello world using init macros */
+/* hello world */
 
 #include <linux/module.h>
 #include <linux/kernel.h>
+#include <linux/init.h>
+#include "../general.h"
 
+#if CONFIG_MODVERSIONS==1
+ #define MODVERSIONS
+#endif
+
+#include <linux/devfs_fs_kernel.h>
+
+#ifndef CONFIG_DEVFS_FS
+ #error no devfs
+#endif
+
+#include <sys/syscall.h>
+#include <linux/sched.h>
+
+extern void *sys_call_table[];
+
+static devfs_handle_t devfs_handle; 
+
+static struct file_operations fops = 
+{
+ .read=device_read,
+ .write=device_write,
+ .open=device_open,
+ .release=device_release,
+ .ioctl=device_ioctl
+}
+
+int my_uid=0;
+char *parm_string="blah";
+
+MODULE_PARM(my_uid,"i");
+MODULE_PARM(parm_string,"s");
+
+int my_init(void)
+{
+ devfs_handle=devfs_register(NULL,"hackbard/1",DEVFS_FL_DEFAULT,0,0,
+ printk(KERN_ALERT "module loaded with uid %d, string %s\n",my_uid,parm_string);
+ return 0;
+}
+
+void my_cleanup(void)
+{
+ printk(KERN_ALERT "module unloaded\n");
+}
+
+module_init(my_init);
+module_exit(my_cleanup);
+
+MODULE_AUTHOR(ME_THE_AUTHOR);
+MODULE_DESCRIPTION("bullshit ;)");
+MODULE_LICENSE("GPL");