Hash :
2cb5c2a3
Author :
Date :
2018-03-11T00:04:05
Add fuzzing infrastructure Though text formats aren't exactly fuzzer's strong suit, fuzzers can catch many surface-level bugs. The fuzz/ directory contains target programs, testcases and dictionaries to drive the afl fuzzer. This commit adds a fuzzer for the XKB keymap text format and the Compose text format. On my slow machine, using a single core, a full cycle of the XKB fuzzer takes 5 hours. For Compose, it takes a few minutes. Fuzzing for the other file formats (rules files mostly) will be added later. To do some fuzzing, run `./fuzz/fuzz.sh`. Signed-off-by: Ran Benita <ran234@gmail.com>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
"Control"
"Group1"
"Group5"
"Lock"
"Mod1"
"Mod9"
"Shift"
"U1"
"0x1"
"Up"
"accel"
"action"
"actions"
"affect"
"alias"
"all"
"allowexplicit"
"allownone"
"alphanumeric_keys"
"alternate"
"alternate_group"
"any"
"augment"
"both"
"button"
"clearLocks"
"clearmods"
"controls"
"count"
"ctrls"
"data"
"default"
"dev"
"device"
"dfltbtn"
"driveskbd"
"false"
"foo"
"function_keys"
"genKeyEvent"
"group"
"groupname"
"groups"
"groupsclamp"
"groupsredirect"
"groupswrap"
"hidden"
"include"
"increment"
"index"
"indicator"
"indicatordriveskbd"
"interpret"
"kc"
"key"
"keycode"
"keypad_keys"
"keys"
"latchToLock"
"leddriveskbd"
"levelname"
"lock"
"locking"
"logo"
"map"
"mod_map"
"modifier_keys"
"modifier_map"
"modifiers"
"modmap"
"modmapmods"
"mods"
"name"
"neither"
"no"
"none"
"nosymbol"
"off"
"on"
"outline"
"overlay"
"override"
"partial"
"preserve"
"radiogroup"
"repeat"
"replace"
"report"
"row"
"same"
"sameServer"
"screen"
"section"
"shape"
"solid"
"symbols"
"text"
"true"
"type"
"unlock"
"usemodmap"
"value"
"virtual"
"virtual_modifiers"
"virtualmod"
"vmods"
"voidsymbol"
"whichgroupstate"
"whichmodstate"
"x"
"xkb_compat"
"xkb_geometry"
"xkb_keycodes"
"xkb_keymap"
"xkb_layout"
"xkb_semantics"
"xkb_symbols"
"xkb_types"
"y"
"yes"