From b3ddec1aaae2faace207e1c0432dbeb69facbe6e Mon Sep 17 00:00:00 2001 From: Star Brilliant Date: Sat, 25 Nov 2017 15:59:09 +0800 Subject: [PATCH] Add NetworkManager dispatcher scripts --- Makefile | 2 ++ NetworkManager/Makefile | 10 ++++++++++ NetworkManager/dispatcher.d/doh-client | 13 +++++++++++++ NetworkManager/dispatcher.d/doh-server | 13 +++++++++++++ 4 files changed, 38 insertions(+) create mode 100644 NetworkManager/Makefile create mode 100755 NetworkManager/dispatcher.d/doh-client create mode 100755 NetworkManager/dispatcher.d/doh-server diff --git a/Makefile b/Makefile index beb88b5..7bbfda2 100644 --- a/Makefile +++ b/Makefile @@ -13,10 +13,12 @@ install: doh-client/doh-client doh-server/doh-server install -Dm0755 doh-client/doh-client "$(DESTDIR)$(PREFIX)/bin/doh-client" install -Dm0755 doh-server/doh-server "$(DESTDIR)$(PREFIX)/bin/doh-server" $(MAKE) -C systemd install "DESTDIR=$(DESTDIR)" "PREFIX=$(PREFIX)" + $(MAKE) -C NetworkManager install "DESTDIR=$(DESTDIR)" "PREFIX=$(PREFIX)" uninstall: rm -f "$(DESTDIR)$(PREFIX)/bin/doh-client" "$(DESTDIR)$(PREFIX)/bin/doh-server" $(MAKE) -C systemd uninstall "DESTDIR=$(DESTDIR)" "PREFIX=$(PREFIX)" + $(MAKE) -C NetworkManager uninstall "DESTDIR=$(DESTDIR)" "PREFIX=$(PREFIX)" doh-client/doh-client: doh-client/client.go doh-client/main.go json-dns/error.go json-dns/globalip.go json-dns/marshal.go json-dns/response.go json-dns/unmarshal.go cd doh-client && $(GOGET) && $(GOBUILD) diff --git a/NetworkManager/Makefile b/NetworkManager/Makefile new file mode 100644 index 0000000..f1bf0d1 --- /dev/null +++ b/NetworkManager/Makefile @@ -0,0 +1,10 @@ +.PHONY: install uninstall + +install: + install -Dm0755 dispatcher.d/doh-client "$(DESTDIR)/etc/NetworkManager/dispatcher.d/doh-client" + install -Dm0755 dispatcher.d/doh-server "$(DESTDIR)/etc/NetworkManager/dispatcher.d/doh-server" + +uninstall: + rm -f "$(DESTDIR)/etc/NetworkManager/dispatcher.d/doh-client" "$(DESTDIR)/etc/NetworkManager/dispatcher.d/doh-server" + rmdir "$(DESTDIR)/etc/NetworkManager/dispatcher.d" || true + rmdir "$(DESTDIR)/etc/NetworkManager" || true diff --git a/NetworkManager/dispatcher.d/doh-client b/NetworkManager/dispatcher.d/doh-client new file mode 100755 index 0000000..1ad110b --- /dev/null +++ b/NetworkManager/dispatcher.d/doh-client @@ -0,0 +1,13 @@ +#!/bin/bash + +case "$2" in + up) + /usr/bin/systemctl is-active doh-client.service > /dev/null && /usr/bin/systemctl restart doh-client.service + ;; + down) + /usr/bin/systemctl is-active doh-client.service > /dev/null && /usr/bin/systemctl restart doh-client.service + ;; + *) + exit 0 + ;; +esac diff --git a/NetworkManager/dispatcher.d/doh-server b/NetworkManager/dispatcher.d/doh-server new file mode 100755 index 0000000..0f584d4 --- /dev/null +++ b/NetworkManager/dispatcher.d/doh-server @@ -0,0 +1,13 @@ +#!/bin/bash + +case "$2" in + up) + /usr/bin/systemctl is-active doh-server.service > /dev/null && /usr/bin/systemctl restart doh-server.service + ;; + down) + /usr/bin/systemctl is-active doh-server.service > /dev/null && /usr/bin/systemctl restart doh-server.service + ;; + *) + exit 0 + ;; +esac