#!/bin/sh # If we are running NetworkManager, tell it we are going to sleep. . "${PM_FUNCTIONS}" suspend_nm() { # Tell NetworkManager to shut down networking printf "Having NetworkManager put all interaces to sleep..." dbus_send --system --print-reply \ --dest=org.freedesktop.NetworkManager \ /org/freedesktop/NetworkManager \ org.freedesktop.NetworkManager.Sleep \ boolean:true && \ 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 --print-reply \ --dest=org.freedesktop.NetworkManager \ /org/freedesktop/NetworkManager \ org.freedesktop.NetworkManager.Sleep \ boolean:false && \ echo Done. || echo Failed. } case "$1" in hibernate|suspend) suspend_nm ;; thaw|resume) resume_nm ;; *) exit $NA ;; esac