wireguard: add protocol dependency for endpoints
Endpoint dependency implemented. The actual endpoint is used exclusively. Using this approach we are dual-stack safe (not errors on missing protocol) and create only the dependency that are really necessary. Signed-off-by: Dan Luedtke <mail@danrl.com>
This commit is contained in:
parent
333957fba9
commit
7d34e8e5f4
2 changed files with 11 additions and 24 deletions
|
@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||||
PKG_NAME:=wireguard
|
PKG_NAME:=wireguard
|
||||||
|
|
||||||
PKG_VERSION:=0.0.20161218
|
PKG_VERSION:=0.0.20161218
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
PKG_SOURCE:=WireGuard-$(PKG_VERSION).tar.xz
|
PKG_SOURCE:=WireGuard-$(PKG_VERSION).tar.xz
|
||||||
# This is actually SHA256, but OpenWRT/LEDE will figure it out based on the length
|
# This is actually SHA256, but OpenWRT/LEDE will figure it out based on the length
|
||||||
|
@ -34,7 +34,8 @@ define Package/wireguard/Default
|
||||||
SECTION:=net
|
SECTION:=net
|
||||||
CATEGORY:=Network
|
CATEGORY:=Network
|
||||||
URL:=https://www.wireguard.io
|
URL:=https://www.wireguard.io
|
||||||
MAINTAINER:=Baptiste Jonglez <openwrt@bitsofnetworks.org>
|
MAINTAINER:=Baptiste Jonglez <openwrt@bitsofnetworks.org>, \
|
||||||
|
Dan Luedtke <mail@danrl.com>
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/wireguard/Default/description
|
define Package/wireguard/Default/description
|
||||||
|
@ -71,7 +72,7 @@ endef
|
||||||
define Package/wireguard-tools
|
define Package/wireguard-tools
|
||||||
$(call Package/wireguard/Default)
|
$(call Package/wireguard/Default)
|
||||||
TITLE:=Wireguard userspace control program (wg)
|
TITLE:=Wireguard userspace control program (wg)
|
||||||
DEPENDS:=+libmnl +resolveip
|
DEPENDS:=+libmnl
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/wireguard-tools/description
|
define Package/wireguard-tools/description
|
||||||
|
|
|
@ -83,27 +83,6 @@ proto_wireguard_setup_peer() {
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#### FEATURE DISABLED
|
|
||||||
# proto_add_host_dependency() has failed with IPv6 addresses during tests.
|
|
||||||
# Endpoint dependency feature is disabled until the issue is fixed.
|
|
||||||
####
|
|
||||||
# # endpoint dependency
|
|
||||||
# if [ "${endpoint_host}" ]; then
|
|
||||||
# endpoint_dependency=0
|
|
||||||
# for ip in $(resolveip -t 10 "${endpoint_host}"); do
|
|
||||||
# echo "adding host depedency for ${ip} at ${config}"
|
|
||||||
# proto_add_host_dependency "${config}" "${ip}"
|
|
||||||
# endpoint_dependency=1
|
|
||||||
# done
|
|
||||||
# if [ ${endpoint_dependency} -eq 0 ]; then
|
|
||||||
# echo "error resolving ${endpoint_host}!"
|
|
||||||
# sleep 5
|
|
||||||
# proto_setup_failed "${config}"
|
|
||||||
# exit 1
|
|
||||||
# fi
|
|
||||||
# fi
|
|
||||||
####
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -161,6 +140,13 @@ proto_wireguard_setup() {
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# endpoint dependency
|
||||||
|
wg show "${config}" endpoints | while IFS=$'\t:' read -r key ip port; do
|
||||||
|
[ -n "${port}" ] || continue
|
||||||
|
echo "adding host depedency for ${ip} at ${config}"
|
||||||
|
proto_add_host_dependency "${config}" "${ip}"
|
||||||
|
done
|
||||||
|
|
||||||
proto_send_update "${config}"
|
proto_send_update "${config}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue