mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-22 19:44:21 +01:00
43 lines
1.2 KiB
Text
43 lines
1.2 KiB
Text
|
#!/bin/sh
|
||
|
# If we are running NetworkManager, tell it we are going to sleep.
|
||
|
# TODO: Make NetworkManager smarter about how to handle sleep/resume
|
||
|
# If we are asleep for less time than it takes for TCP to reset a
|
||
|
# connection, and we are assigned the same IP on resume, we should
|
||
|
# not break established connections. Apple can do this, and it is
|
||
|
# rather nifty.
|
||
|
|
||
|
. "${PM_FUNCTIONS}"
|
||
|
|
||
|
suspend_nm()
|
||
|
{
|
||
|
# Tell NetworkManager to shut down networking
|
||
|
printf "Having NetworkManager put all interaces to sleep..."
|
||
|
dbus_send --system \
|
||
|
--dest=org.freedesktop.NetworkManager \
|
||
|
/org/freedesktop/NetworkManager \
|
||
|
org.freedesktop.NetworkManager.sleep && \
|
||
|
echo Done. || echo Failed.
|
||
|
}
|
||
|
|
||
|
resume_nm()
|
||
|
{
|
||
|
# Wake up NetworkManager and make it do a new connection
|
||
|
printf "Having NetworkManager wake interfaces back up..."
|
||
|
dbus_send --system \
|
||
|
--dest=org.freedesktop.NetworkManager \
|
||
|
/org/freedesktop/NetworkManager \
|
||
|
org.freedesktop.NetworkManager.wake && \
|
||
|
echo Done. || echo Failed.
|
||
|
}
|
||
|
|
||
|
case "$1" in
|
||
|
hibernate|suspend)
|
||
|
suspend_nm
|
||
|
;;
|
||
|
thaw|resume)
|
||
|
resume_nm
|
||
|
;;
|
||
|
*) exit $NA
|
||
|
;;
|
||
|
esac
|