Commits

Uelsk8s  committed 7b72178

update networkmanager

  • Participants
  • Parent commits bef9a28

Comments (0)

Files changed (1)

File var/vabs/NetworkManager/src/55NetworkManager

+#!/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