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