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