summaryrefslogtreecommitdiffstats
path: root/sandbox/DNA/linux/README.md
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2012-12-20 10:35:56 +0700
committermakefu <github@syntax-fehler.de>2012-12-20 10:35:56 +0700
commit8ade18b9aeb6e1d59d49d1b98ad162af8b872ef5 (patch)
tree686984614298a6dfaacbd9b8d5382e7a8ad27f97 /sandbox/DNA/linux/README.md
parentd995457f03f1cdeb3ce094ce99811eba864997d1 (diff)
//sandbox - graveyard for the too-new and too-old projects
of course, there is always a good time for grave-digging, voodoo and necomancing. Just take care, the projects may bite
Diffstat (limited to 'sandbox/DNA/linux/README.md')
-rw-r--r--sandbox/DNA/linux/README.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/sandbox/DNA/linux/README.md b/sandbox/DNA/linux/README.md
new file mode 100644
index 00000000..0b6885e2
--- /dev/null
+++ b/sandbox/DNA/linux/README.md
@@ -0,0 +1,41 @@
+# Putting rickrolling in kernel space
+
+Kernelroll is a linux kernel module for advanced rickrolling.
+
+It works by patching the open() system call to open a specified music file
+instead of other music files. Currently, it only checks if the file extension
+"mp3" is present and calls the original open() with the supplied path
+instead.
+
+WARNING: There is probably a performance penalty and your kernel might crash
+at a very inappropriate time and cause data loss! You are responsible for
+the code you load into your kernel!
+
+But most probably, it will be alright! ;)
+
+# Installation
+
+You need the address of sys_call_table in your kernel. Use
+
+ $ grep sys_call_table /boot/System.map-3.0.0-1-amd64
+ ffffffff81400300 R sys_call_table
+
+on the respective System.map of your kernel to find out the address
+
+Now fire up kernelroll.c and add yours:
+
+ void **sys_call_table = (void **)0xffffffff81400300;
+
+This will probably be simplified in the future, but as sys_call_table isn't
+exported anymore in 2.6 kernels, we have to use some tricks.
+
+Compile with:
+
+ $ make
+
+Load with:
+
+ $ insmod kernelroll.ko rollfile=/path/to/rickroll.mp3
+
+Fire up a music player of your choice, play a song and consider yourself
+kernelrolled. ;)