1 1.1 mycroft #!/bin/sh - 2 1.1 mycroft # 3 1.4 jmcneill # $NetBSD: sleep_button,v 1.4 2008/05/21 13:06:10 jmcneill Exp $ 4 1.1 mycroft # 5 1.3 jmcneill # Generic script for sleep button events. 6 1.1 mycroft # 7 1.1 mycroft # Arguments passed by powerd(8): 8 1.1 mycroft # 9 1.1 mycroft # device event 10 1.1 mycroft 11 1.1 mycroft case "${2}" in 12 1.3 jmcneill pressed) 13 1.3 jmcneill /etc/rc.d/ntpd stop 14 1.3 jmcneill /etc/rc.d/dhclient stop 15 1.3 jmcneill /etc/rc.d/network stop 16 1.4 jmcneill /etc/rc.d/wpa_supplicant stop 17 1.4 jmcneill if /sbin/sysctl machdep.sleep_state >/dev/null 2>&1; then 18 1.4 jmcneill /sbin/sysctl -w machdep.sleep_state=3 19 1.3 jmcneill else 20 1.4 jmcneill sleep 1 21 1.4 jmcneill if /etc/rc.d/apmd status >/dev/null ; then 22 1.4 jmcneill /usr/sbin/apm -z 23 1.4 jmcneill else 24 1.4 jmcneill /usr/sbin/apm -d -z 25 1.4 jmcneill fi 26 1.4 jmcneill # ... waking up 27 1.4 jmcneill sleep 1 28 1.3 jmcneill fi 29 1.4 jmcneill /etc/rc.d/wpa_supplicant start 30 1.3 jmcneill /etc/rc.d/network start 31 1.3 jmcneill /etc/rc.d/dhclient start 32 1.3 jmcneill /etc/rc.d/ntpdate start 33 1.3 jmcneill /etc/rc.d/ntpd start 34 1.3 jmcneill ;; 35 1.3 jmcneill released) 36 1.3 jmcneill # Note that we don't really need to handle a released event here, 37 1.3 jmcneill # so we can gracefully exit. 38 1.3 jmcneill ;; 39 1.1 mycroft *) 40 1.3 jmcneill logger -p warning "${0}: unsupported event ${2} on device ${1}" >&1 41 1.1 mycroft exit 1 42 1.1 mycroft ;; 43 1.1 mycroft esac 44