aboutsummaryrefslogtreecommitdiffstats
path: root/\
diff options
context:
space:
mode:
Diffstat (limited to '\')
-rw-r--r--\35
1 files changed, 35 insertions, 0 deletions
diff --git a/\ b/\
new file mode 100644
index 0000000..a5f566d
--- /dev/null
+++ b/\
@@ -0,0 +1,35 @@
+set -euo pipefail
+
+stop_daemon() {
+ echo "Killing warp-svc process..."
+ sudo pkill -x warp-svc
+ echo "warp-svc is not running."
+}
+
+disconnect_client() {
+ echo "Disconnecting from WARP..."
+ if warp-cli status 2>&1 | grep -qi "Connected"; then
+ sudo warp-cli disconnect
+ echo "Disconnected."
+ else
+ echo "WARP is already disconnected."
+ fi
+}
+
+main() {
+ if [[ -t 2 ]]; then
+ echo -e "\e[31mERROR:\e[0m Must be run as root" >&2
+ else
+ echo "ERROR: Must be run as root" >&2
+ fi
+
+ disconnect_client
+ stop_daemon
+
+ echo "Final status:"
+ warp-cli status || true
+ sudo systemd-resolve --flush-caches
+ sudo systemctl restart systemd-resolved
+}
+
+main "$@"