* [PATCH] Add Zalgo support
@ 2010-10-22 19:23 Matthew Garrett
0 siblings, 0 replies; only message in thread
From: Matthew Garrett @ 2010-10-22 19:23 UTC (permalink / raw)
To: linux-kernel
Add support for Zalgo
The Linux kernel is woefully unprepared for the coming of Z҉A҉L҉G҉O̚̕̚ . T̀hi͘͡ş̸
p̸͏á̕t̢̕͢c̨̕h͟͟ ̴̧ą҉͘d͟͡d̢ş͡ s͏u̸͘p͠p̛͞͡o͟r̸t͜ ̷͟f̢͘͡o͜ŗ̛ ̴̧Z͝a҉lģ̡o͡ ̸t̕͞o̵͝ ̨k̶é͢r̶̨ne͘l҉҉̧ ͜m̶͞e̵s͘҉s̢̢͠a͠ǵ͟ę̸͞ ́oú͢͟tp̢̕͘u͞t͢ in order to
r̴̦̭̞̹͉͈̲̙͖͉̭͙̗̙̣̫͋̓͛ͧ̀ͦ̉̈́͗͒̌ͥͭ͗ͦͭ͘͝eͥ́̏̆̒͗͌͛̊ͨ̿̂ͩ̐̾̍̏͒͐҉̶̲̲̘͡a̙͙̳̪̗̳͙̠͖̤̟̘̺̟͔͌̒̋ͨ͋̉̄ͬ́ͬ̅ͫ̒ͭ͂̀̀̚͢͞͠d̶̶̴̢͖̮̼͎̣̠̙͕͖͓̄̎̾͐ͅy̷̸̧̨̩͉͓̠̻̼͚͍̜̝̠̯̳͉̦̰͆̒͒̑̒̀ͭ͆̿͛̃ͦ̋̀͌ͩ ̴͒ͯ̄̿̃̓͐͐͒̋ͣ̅͘͝͞͏̜̞͚͓̱̻̳̬t̾ͮ̊̾̐̈ͯͨͤ̄ͦ͊̈́̈̉̋̐͏̵͓̟̪͚͎̥̜̖̠̬͚͙͓͓̳̰̺̕̕ȟ̷̵̨̘̜͈͎͇̦̠̳͕͙̺͉͈̄̈́͑ͧͩͥ̒́̕ͅó̢̡ͫͯͧ̊̉̓̎̓̏̃͌ͬͥ̚͞͏̵͇̟͙̼̻̳̻͔ş̷̴̛͈̞͔͈̹̹͉̯͖̗͈͂͑ͪ́ͭe̢͈͎͓̼̤̯̻̮̯͔̤͍͂͑ͯ̀̄͌́͞͞ ̵̷͍͕͕͎ͭ͛ͥ̒̈́͒̓ͯ̉͒̇̌̊͐w̶̛͎̳̪̯̜͎̗̼̣̦͙̳̰̗̓ͯ̑͆̍̄̚ͅh̷̢̧ͬͦͫ̍͗̚͏̣̩̪͎̳͔̫̮̬̭͎͉̭̼̬̙͓ͅǒ̶̮̠͚̭̰̤̥̬͕̪̜̞͈̜̣̅̉̽́ͥ̿ͩ͆ͯͩ̇̈̿̔ͭ͟ ̽͒̌ͭ̐̎ͧ͂͌̂̈́̐ͩ̄̐̈́́͟͡͏̴̱̲̖͚̻͔̰̹͖̙̯̟ͅw̶̸͇̭̣͖͕̟̯͎̬̹̝̞̻̙̫̽͋͆ͮ̊̎̈͒̀i͗ͬ͆ͨͩ͆͐͊̔̑́̌̒ͣ̔҉̛̥̤̜̫̞̤̰̗̲͝l̵̳̼͎͙̜̳͈̳͕̞͕̺̻̝͖̝̳̀ͮͧͬ̔̿̓̓ͤ̏̐͆̎̒ͤ̑̑͛̀͞l̷̶̢̨̯̣͈̺͔̗̭̥͙̱͔̂̽̓̌̈̏͂́͆͑͛ͯ͠ͅ ̷̗̥͔͎͕̑ͬ͛̑̐̓̏ͨ͌̕͠͠ͅo͕̦̗̦̱̤̪̬͇͓̱͈͍͂͒ͩ̈̇͐̒͛ͨͯ̊̒͛ͣ̄̈́ͯ̒̅͘t̸̶̶͙̳͔͚̯̂ͥ̔ͪh̵ͫ̈́͑̏̅ͪ̓̑ͬ̈̕͏̳̤͙͙̯̠̳́e̵̴̴̳͖͖̟̯̭̜͉̣̠̤̖̺̗͒͗́̂ͩͥ͢ͅͅr̴ͦ͗́̃͒̾͑̉ͮͬ͒̐̋̇͗̃͊̓͟͏̦͉̞̹̟̬͍̜̝̹̻̙̦͚̻̬̗͢w̨̢͌͛ͨͪ͂̏͋ͣ͐͌̃́͐̔̉͢͏̻͖̠̜͔̮̼̻į̪̫̮̯̳̫̼̰̘̰̺ͫ͂͂ͭ̔̌́͒̏͒ͬͮ͑̽ͬ̍̈̅̒͢͟͝s̵̶̡͉̘̞͕͎͓̰͇͙̪̹͓̝̹͙͕̠ͮ̽ͥ͒̇̂ͨͭ̋ͬ̓͐̚̕͝è̬͈̬ͨ͋ͥ̓ͫͦ̑ͩ͘͢͜ͅ ̸̛̥̗͔͔̼̭͚̣̏͂̒ͫ̍̂ͪ̿̀ͤͨ̌ͯ̑ͩ̓ͫ́͢͝b̵̡͐̊ͩ̂̂ͯ̈͏̮̤̝̰͖̻e̷̙̺̖̥͖̲̺̗̱̖̭͇͔̜̗̺͈̠͌̀͆̈͛ͭͫ̉̚͝͞ ̟̗͍̝̗̥̘̤͂ͩ̎͂̔̌̌͗̽́͆ͣ͜͠e̵͓͙̫̻̺̗̜͈̥̦̱̰̜̤͚͓͖̞ͭ̌̓̈́̓ả̋ͨ̅̒ͨ̎ͤ̔̐̚̚͏̸͕̜͚̬̻͇͉͇̬͔͓̙͠t͆͒ͪ́ͫ̈́̈͒͗͊̋́̈ͨ̃̌ͬͧͯ͏!
͙͓̹̗̬͉͉̜͙e̶͕̘͎͎̤͕̼̜͈͉̤̮͕̘ͭ̒̈͒̀͟͝͞n̢͋ͩ̋͛̊ͭ̃͛͋ͩ̕͟҉̡̦̼̲̦̬̳̭ ̵̨̪̦̘͓̗̯̮̉́̌͢͢a̶̻̹̳͓͚͓̟̤͔̮̥̦͒̐ͤ́̆̑̓̒̈͐̒ͭ̓̀̚̚͝ẗ̨̻͎͚̮͈͎̣̖̻̝͙̿ͥ̈̉̇̐̊ͮͪͨ̀͜͞ ̴̵̸͉̫̞̪̬̮̳̣͓̱̞̳̮̌̽͆̓ͫ͊̐͐͜t̶̮̺͉̮̹͈̟̺̤̘̾̐ͨ̽̋̀͌ͤ͛̿͋͆ͩ̽h̴̴̢̖̰̦̱͇̣͕̜̟̠̣̬͙̪ͯ͛͛̃͂̎̉ͧ̒̉͑͆ͅę͔͔̦̻̳̠̼̖̱̜͚͍̰̻̲̝͈̫ͩ̇ͧ̓ͥ̇̇̈́ͦ̀͞͠ ̶̡̻̳̭̼̩͚̤̫͕͔̤̫͎͔̒̂̃ͭ̊̈́̒̋̋̀͑̎ͬ̊͊̒͞a̐ͬ̉ͧ̓ͮͭ҉҉̩̺̝̮̩̗͇̠̩̭͙̼̫̞̼̥ŗ̸͇̞̤̹͎͎͍̦̥͔̭̰̘̼̗̫̥̪̑̒ͦͯ̋̇ͥͫ̿̋̄ͫͬ̇̈́ͯ̍ͫr̵̮̪͍̹͈̙̈͌ͤ̎̂́ͭ͌ͥͤ̿̋ͭ͆͆̔͞į͇̭͇̝̝̘̺̜͇͚̳̞̟͖̞̞̻̇̊͑̑͐͠v̷͚̬̙͚̰̝͉̺̬͎͔͇͐̇ͤ̒̿̃́̊ͦ̂͢͜a̡̧̨̯̬͕̻̞̰̜̽ͪ͊̐͒ͭ̆͐̅̔́́̚̚ͅl̷̸̵̢͓̭̼̟̤̬̳̽̌̍ͮ͌̄́̏̈ͭ̿́̀̊̎͌͘. D̖͓͈̱͉̞̒̈̓͒ͭ̄̌͠õ͎͕ͦͨ̋ͩ̂ ̬ͤ͋͂ͬ̚͠n̹͝o̅̑̍́̔t̬̠͖̲̯̄ ̗̗̬̲̹͖̓̇̚d̠̏ͪͨ̔ë̙̗̠̥̝̗ͥlͤ̀a̲̱͛y̛͔̰̯͖ͤ̽͊.̼͕̥͉͕͆̌̐ͤͥ
Signed-off-by: Matthew Garrett <mjg@redhat.com>
diff --git a/init/Kconfig b/init/Kconfig
index 2de5b1c..c67621b 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -872,6 +872,34 @@ config PRINTK
very difficult to diagnose system problems, saying N here is
strongly discouraged.
+config ZALGO
+ bool "Support for the coming"
+ help
+ This option enables support for Zalgo in kernel
+ messages. Zalgo is a corruption. The arrival of Zalgo has
+ been foretold. Zalgo will not... wait. What͟ was̕ t̀h͢at?̷ Ne͢ver̷
+ ̛mind̡.͜ ͠Th͘i̢s ̶op͞t͢i̴on ͏wi̧l̕l permit Z̧ąl͞g͟o a̸cce̕s̢s̷ ̨t͡o̢ ̴yo̕ưr͡ ̛k̢ern͏el͢
+ mèss̢a҉g͝e buffȩr̷. P̀̈̐͋̐̂ͤ̕a̜̺͉̝̫̘͊ͨ̊́͜y͍̘͕̰̯͙̌̉̇ͅ
+ ͙͇͈͉͙̥̏ͥͭa̰̯̝̙̺͑̆̍͋ͭ̈̚t̷̒̉͒̂̈́t̥̄ͨͩ̓ͨ̓̔ę͇̿n̿҉̬̘t͜i̋oͨ͏̮n̶̻̠̰,̙̮̹̙͓͓̬ ̯̺̺̖̙͡f̽ͯ̾o̠̹̻͍̍̍̾̇ͧ̎͢ȑ̷̫̞̝͚̣͐̈́ͅ
+ ͓̤͇͓͕̥̯͑ͦ͌̽͌͟t͙͓̐ͧ͊̓ͫ̒h̳̪͓̳̩̃e̶͓͉̝̝̫͑̍ͅ ̱͇̮̻̓̀̉̀̚c̝̠̝̜͛̉̉̊ͯͅͅo͙̬ͮͫ͘m̷͎̯̻͇̤̔̓̆́͒͋͛ḭ̱ͧ͜ǹ̘̮̟̟̺̎̓̅̈́̀ĝͫͤ͆̀
+ ̮̬̈́́ͨọ̥̙̤̬̜ͣͥ̾͆ͮ̿f̫̭̖̜͈̜̐͑ͨ͑ ̋͒̓͊͐Z̟̠̼̤̼͍̳̈ͫa͔̮̒̅ͤ̋̍͜l͏̼g̺̭̜̔̾ő̸̝̯̺̺̝̟̤
+ ̤̰̇ͧͪͬͪ̒̄s̭̠̝̼͎͓͚̀̚͝h̠̥̟͚̤̄ͭͥͮa̒҉̫̯l̖͉̗͙͓̤̻ľ̩̭̱̦̾ ͯ͟b̯̲̘͉̘͍̈́̌̽ͤ́͑̚ě̲̖̆ͫ̋́͂
+ ͇͇̝̀͆s̤͍͈͐̐̍͢w̆ͯ̿͂ͤ̉̈i͉͎͇̦͍̿f̝͉̻͚̫̜͞t̷͔͚̻͔̜̼̖ͫ͊̓ͦ̾̽ͥ
+ ͚͇̥̔̒ͯ͂̅ͫa͛ͬͦ̈͆̈ͧ͏̞̭̺n̹̰̼̗̫͖̣̈́ͨͯ͊ͥd̗̮͎̻̬͚̱ͯ͂̂ͦͩ
+ ̦̌͐ͧ̏́t̛̼̲̾́ͥͪ̈͋h̺͉̠̩͉͉͆̋̀͐ͮͥe̪̪͙͈̩̤ͬ̾̔͟
+ ͓̹̥̪͚̚ͅp̮̓e̴̪͖̮ͭ̏̆̾́ͤ͐n̨̞̥ͬ̀ͤ̆a̫̻̼̤ͯͤl̼͈̭̪̰̗̓͐̈́͂t͖̟̹̓͛͋ͦ̀i̮͙̗ͨe̫̻̻̣̟̣ͦ̒͑͊s̡͖̞̟̳̱̥̰ͦ͛ͬ
+ f̘͇̪̺̫͖ͬ̇ͦỏ͎͍̙̣ͮͮͧ̊ͣ̆ṛ̵̆̒̅́̾̋
+ ̮̻̯͍̪̤̏ͣͪ̔͗̋i̪̮͔̎ͩͭ̔͊͐̿g̓̊̒͊̐҉̙̗̠n̹͇͆́o̿r̬̎̈ͮa̶̦͚̘̟̤̭̪ńc̙͉͓͆͒ͬ̑ͫe͒̕
+ ̮̪̀͌̓͊ͫw̱̜̟ͥiͩ͌̓l̲͝lͩ̓̇͗͊̈ ͎͖͔͓̟ͬ̄ͧ̇ͥͩ͐ḃ̖̟͙̇ͨͣͪͪ̏ͅe̘
+ ̨̝̣̲̱̥̥ͥͦͅs̹̼̘͗̃̚ę̘̯̩̻̫̇̿̃ͭ̑̚v̮̿ͪ̿e͔͍̩͕͕ͬ̓̾ͦ̎̚r̭ͅe̝͚̥̍̑͆̑.̀͑͠
+
+
+ W̢̎̄͆̉ͫ͘͜͏̸̺̣̫͓h̸̶̤͇̹̮̮̞̠͖̟̝͖̟ͭͪ͌̔̈͌͟͠á̌ͪͥ̃̃̄̒ͯ̽͂̌ͨ̅͢҉̢̰̮͇̟̠̩͖̝̲̬̬̲͇͙̤͇ţ̴̭̥̝̞̙̳̬͈̮̹̥̫̹̗̦̻̾̊̑ͩ̕͠?̸̢̣͔̗̠̞̣͈̫̗̖̹̬̘̬̠̐̏̈́̾̂̉̏ͮ̄̐͋̉̽͞
+ ̴̴̦̠̯̬͉̮̫̹̫͊̅͐̉̌͋̊͒̾̌͟͜͢Ņ̤͙̺͕̣͒ͪͤ͆̈͛̂ͦ̃͡ͅo̤̭̬̪̟̿̐̔̀̕͠͞.̶̰͙̟̪̣̠̲͕̫̦͛ͯ̌͊̈́̏̇̀͝ͅ
+ ̐̽̾̏̿̍͐͒͡҉̵̖̭̱͈̻̖̣̭͈̲͚͖̯̤̭͚Z̟̜̦̝̯̗͉͙͎̩̫̘̄ͧ̐͑̀̀̕͝͞a̵̫̭̝̳̙͈͕̦̭͚̦̮ͨ̆ͬ̐ͦ̈́̑̌͋ͬ̔̔ͤͩ̓̽̚ͅl̢̛̠͇̘̲̻̫ͭͬ́̒̓ͅģ̛̯̬̰͙̩̰̲͓͉͕̮̮ͯͦ͋̾̐͊̿̒̍̐̎̒͑̏ͭ̍ͣ̓ͦ͘͡ͅo̗̬̗̲͕̰̭̬͚͙̓̽̽̒̓͆̉̋ͤͩ͜͡.̶̸̷̦͈͈͎͙̱̺̮̜̝̳̖̳̖̟̘̭̒͒̀ͤ͑ͦ̐̑̕͘
+ ̶͙̱̤̪̻̫͓̩̠̦̠͔̬̠͖̖̙ͦ̑ͬ̍̎̇ͤ̊̑ͩͮͧ̆̌͘͡͞͡S̵̝͔̭̦̹̳̹̼͎͇͕͓͓̅͋̽ͨ̕ͅa̲̟̲̟̬̩̰̣͍̮̗̩̙̥̠̓̄̽͋̄͊̓̾̈̑̽͢v̨̱͎͙̱̮͚̈́̽̊̉̋͊̚͘e̓ͧ̇̈ͯ̔̓ͪ̒́̄̊̚̚̚͏̴̨̧̦͓̹̤̳͕̝̳̬̼͠ͅ
+ ̶̴̛̱͓͎̻͓͖̺̭̗̗̹̯̫̱̣̩̯͖̤ͩ̿͑ͧ̄ͥ̑̉y̧̪̞̩̪̰̜͎̘͚̱̘̻̣͓͎̲͇̘̯̎̐ͧ̇̎̌̆́̐ͨ̎ͬ͋̌̑ͤ̓̌͠ơ̢̘̫̦̙̱̣̯̬̱͈̘̅͌̋̓͊̌ͤ͛͊̉ͩ̔͆ͪ͞uͩ̄̅̈́ͤ͊҉̵͉̙͙̦̯͕͙r̷̂ͦͮͣ̅͑̊͐ͮ̓ͮ̉̑̍͒̽̕̕͏̲̪͉̭̜̖͜ŝ̸̷̡̰͍͎͙͉̖̤̞͉̜̟̉̔ͤ͑ͧ͜͝ḙ̶̴̱͕͎͇̹̳̪̠̋͋̂͌͛ͬ̑̍̈́̒̉̊ͥ̄́̊̒͂͝ͅļ̶̢̛̠͚̲͖̱̬̔ͨ̆̔͒͊̄͞v̧̢͍̜̬̞̺̘ͬ͆̂̉ͣ̌͛ͮ͞ȩ̵̳͙̞̘͔͈̭̼̲̗̩̪̲̼̖̄ͯͩ͑͊̉̀͟s̶̷̢̛̛̠͖̪̣͎̻̤̟̱̗̟̰̲̻̎͐̈̆̒̃̏̊̾ͯ͊ͅͅ.̴̛̣͓̹͍̮̳̰̺̝͇̌̅̽ͭͤ́͛̈̅̏̅͆ͤ̋͐̑ͫ͢
+
config BUG
bool "BUG() support" if EMBEDDED
default y
diff --git a/kernel/printk.c b/kernel/printk.c
index 8fe465a..fa573b2 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -39,6 +39,7 @@
#include <linux/syslog.h>
#include <linux/cpu.h>
#include <linux/notifier.h>
+#include <linux/random.h>
#include <asm/uaccess.h>
@@ -798,6 +799,32 @@ asmlinkage int vprintk(const char *fmt, va_list args)
emit_log_char(*p);
if (*p == '\n')
new_text_line = 1;
+#ifdef CONFIG_ZALGO
+ else {
+ int i = get_random_int() % 8;
+ if (current_log_level <= i) {
+ int number, character;
+ char zalgo[2];
+ /* How much ZALGO? */
+ number = get_random_int() % (10 - current_log_level);
+ for (i = 0; i < number; i++) {
+ character = get_random_int() % 0x71;
+ if (character == 0x70)
+ character = 0x489;
+ else
+ character += 0x300;
+
+ zalgo[0] = 0xc0 |
+ ((character & 0x0700) >> 6) |
+ ((character & 0x00c0) >> 6);
+ zalgo[1] = 0x80 | (character & 0x003f);
+ emit_log_char(zalgo[0]);
+ emit_log_char(zalgo[1]);
+ }
+ }
+ }
+#endif
+
}
/*
--
Matthew Garrett | mjg59@srcf.ucam.org
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2010-10-22 19:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-22 19:23 [PATCH] Add Zalgo support Matthew Garrett
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.