mirror of
https://github.com/novatiq/packages.git
synced 2026-04-30 07:28:39 +01:00
ddns-scripts: implements usage of nsupdate to direct update DNS servers
* new service "bind-nsupdate" using nsupdate to directly updates a PowerDNS or Bind server via nsupdate. suggested by Jan Riechers (Pull #957) many thanks! * updated tld-names.dat Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
This commit is contained in:
+79
-33
@@ -3,17 +3,19 @@ include $(TOPDIR)/rules.mk
|
||||
PKG_NAME:=ddns-scripts
|
||||
# Version == major.minor.patch
|
||||
# increase on new functionality (minor) or patches (patch)
|
||||
PKG_VERSION:=2.3.0
|
||||
PKG_VERSION:=2.4.0
|
||||
# Release == build
|
||||
# increase on changes of services files or tld_names.dat
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_MAINTAINER:=Christian Schoenebeck <christian.schoenebeck@gmail.com>
|
||||
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
# no default dependencies
|
||||
PKG_DEFAULT_DEPENDS=
|
||||
|
||||
define Package/$(PKG_NAME)/Default
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
@@ -21,6 +23,7 @@ define Package/$(PKG_NAME)/Default
|
||||
PKGARCH:=all
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=Dynamic DNS Client scripts (with IPv6 support)
|
||||
@@ -41,31 +44,53 @@ define Package/$(PKG_NAME)/config
|
||||
- Proxy server support
|
||||
- log file support
|
||||
- support to run once
|
||||
|
||||
.
|
||||
Version: $(PKG_VERSION)-$(PKG_RELEASE)
|
||||
Info : http://wiki.openwrt.org/doc/howto/ddns.client
|
||||
|
||||
.
|
||||
$(PKG_MAINTAINER)
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)_CloudFlare
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_cloudflare
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=DDNS extension for CloudFlare
|
||||
DEPENDS:=$(PKG_NAME)
|
||||
endef
|
||||
define Package/$(PKG_NAME)_CloudFlare/description
|
||||
define Package/$(PKG_NAME)_cloudflare/description
|
||||
Dynamic DNS Client scripts extension for CloudFlare
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)_No-IP_com
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_no-ip_com
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=DDNS extension for No-IP.com
|
||||
DEPENDS:=$(PKG_NAME)
|
||||
endef
|
||||
define Package/$(PKG_NAME)_No-IP_com/description
|
||||
define Package/$(PKG_NAME)_no-ip_com/description
|
||||
Dynamic DNS Client scripts extension for No-IP.com
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_nsupdate
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=DDNS extension using Bind nsupdate
|
||||
DEPENDS:=$(PKG_NAME) +bind-client
|
||||
endef
|
||||
define Package/$(PKG_NAME)_nsupdate/description
|
||||
Dynamic DNS Client scripts extension for direct updates using Bind nsupdate
|
||||
endef
|
||||
define Package/$(PKG_NAME)_nsupdate/config
|
||||
help
|
||||
The script directly updates a PowerDNS (or maybe bind server) via nsupdate
|
||||
from bind-client package. It requires
|
||||
"option dns_server" to be set to the server to be used by nsupdate.
|
||||
"option username" should be set to the key name and
|
||||
"option password" to the base64 encoded shared secret.
|
||||
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
define Build/Configure
|
||||
endef
|
||||
define Build/Compile
|
||||
@@ -84,6 +109,7 @@ define Package/$(PKG_NAME)/conffiles
|
||||
/etc/config/ddns
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)/install
|
||||
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.hotplug $(1)/etc/hotplug.d/iface/95-ddns
|
||||
@@ -96,16 +122,6 @@ define Package/$(PKG_NAME)/install
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/files/services* $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/dynamic_*.sh $(1)/usr/lib/ddns
|
||||
endef
|
||||
define Package/$(PKG_NAME)_CloudFlare/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_CloudFlare.sh $(1)/usr/lib/ddns
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat $(1)/usr/lib/ddns
|
||||
endef
|
||||
define Package/$(PKG_NAME)_No-IP_com/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_No-IP.com.sh $(1)/usr/lib/ddns
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/postinst
|
||||
#!/bin/sh
|
||||
# if run within buildroot exit
|
||||
@@ -123,17 +139,6 @@ define Package/$(PKG_NAME)/postinst
|
||||
|
||||
exit 0
|
||||
endef
|
||||
define Package/$(PKG_NAME)_CloudFlare/postinst
|
||||
#!/bin/sh
|
||||
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6
|
||||
endef
|
||||
define Package/$(PKG_NAME)_No-IP_com/postinst
|
||||
#!/bin/sh
|
||||
echo -e '"No-IP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
echo -e '"NoIP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
endef
|
||||
|
||||
define Package/$(PKG_NAME)/prerm
|
||||
#!/bin/sh
|
||||
# if run within buildroot exit
|
||||
@@ -148,16 +153,57 @@ define Package/$(PKG_NAME)/prerm
|
||||
|
||||
exit 0
|
||||
endef
|
||||
define Package/$(PKG_NAME)_CloudFlare/prerm
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_cloudflare/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_CloudFlare.sh $(1)/usr/lib/ddns
|
||||
$(INSTALL_DATA) $(PKG_BUILD_DIR)/files/tld_names.dat $(1)/usr/lib/ddns
|
||||
endef
|
||||
define Package/$(PKG_NAME)_cloudflare/postinst
|
||||
#!/bin/sh
|
||||
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
echo -e '"CloudFlare"\t"update_CloudFlare.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6
|
||||
endef
|
||||
define Package/$(PKG_NAME)_cloudflare/prerm
|
||||
#!/bin/sh
|
||||
/bin/sed -i '/update_CloudFlare\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
/bin/sed -i '/update_CloudFlare\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6
|
||||
endef
|
||||
define Package/$(PKG_NAME)_No-IP_com/prerm
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_no-ip_com/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_No-IP.com.sh $(1)/usr/lib/ddns
|
||||
endef
|
||||
define Package/$(PKG_NAME)_no-ip_com/postinst
|
||||
#!/bin/sh
|
||||
echo -e '"No-IP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
echo -e '"NoIP.com"\t"update_No-IP.com.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
endef
|
||||
define Package/$(PKG_NAME)_no-ip_com/prerm
|
||||
#!/bin/sh
|
||||
/bin/sed -i '/update_No-IP\.com\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
define Package/$(PKG_NAME)_nsupdate/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib/ddns
|
||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/update_nsupdate.sh $(1)/usr/lib/ddns
|
||||
endef
|
||||
define Package/$(PKG_NAME)_nsupdate/postinst
|
||||
#!/bin/sh
|
||||
echo -e '"Bind-nsupdate"\t"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
echo -e '"Bind-nsupdate"\t"update_nsupdate.sh"' >> $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6
|
||||
endef
|
||||
define Package/$(PKG_NAME)_nsupdate/prerm
|
||||
#!/bin/sh
|
||||
/bin/sed -i '/update_nsupdate\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services
|
||||
/bin/sed -i '/update_nsupdate\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services_ipv6
|
||||
endef
|
||||
|
||||
##### **********************************
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)_CloudFlare))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)_No-IP_com))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)_cloudflare))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)_no-ip_com))
|
||||
$(eval $(call BuildPackage,$(PKG_NAME)_nsupdate))
|
||||
|
||||
Reference in New Issue
Block a user