unleashed-firmware/applications/main/bad_usb
Roland Kammerer a1ede0a2fc
BadUSB: add SYSRQ keys (#1460)
This allows sending of SysRq keys[1]. This then for example allows
sending the well known 'reisub' commands to safely reboot a otherwise
frozen Linux box. Or obviously any of the other magic keys.

The advantage compared to sending it to /proc/sysrq-trigger is that one
does not need a shell and depending on how broken the system is, one
might not even be able to get a new shell. The SysRq keys still work.

The cost is adding a new/"non-standard" keyword, IMO it is worth it.

Example:
DEFAULTDELAY 200
DELAY 1000
SYSRQ r
SYSRQ e
SYSRQ i
SYSRQ s
SYSRQ u
SYSRQ b

If one really wants to test it, I suggest h(elp) or w(ait).

[1] https://en.wikipedia.org/wiki/Magic_SysRq_key

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2022-10-09 02:56:56 +09:00
..
scenes M*LIB: non-inlined strings, FuriString primitive (#1795) 2022-10-06 00:15:23 +09:00
views [FL-976] Removing lambdas (#1849) 2022-10-09 02:38:29 +09:00
application.fam [FL-2627] Flipper applications: SDK, build and debug system (#1387) 2022-09-15 02:21:03 +09:00
bad_usb_app.c M*LIB: non-inlined strings, FuriString primitive (#1795) 2022-10-06 00:15:23 +09:00
bad_usb_app.h [FL-2627] Flipper applications: SDK, build and debug system (#1387) 2022-09-15 02:21:03 +09:00
bad_usb_app_i.h M*LIB: non-inlined strings, FuriString primitive (#1795) 2022-10-06 00:15:23 +09:00
bad_usb_script.c BadUSB: add SYSRQ keys (#1460) 2022-10-09 02:56:56 +09:00
bad_usb_script.h M*LIB: non-inlined strings, FuriString primitive (#1795) 2022-10-06 00:15:23 +09:00