Browse Source

ddns-scripts: Update to version 2.2.0-1

modified source directory structure
  - files for production files
  - samples for sample files (not installed in final build)
modified Makefile
  - separate options for additional provider scripts
  - remove comments and empty lines from final build
add IPv4 100.64/10 (RFC 6598) and 169.254/16 (RFC 5735) to the range of default blocked IP's.
new option "bind_network" to force GNU Wget or cURL to use specific network/interface for communication
new "domains.google.com" as IPv4 DDNS provider #822

Signed-off-by: Christian Schoenebeck <christian.schoenebeck@gmail.com>
lilik-openwrt-22.03
Christian Schoenebeck 10 years ago
parent
commit
5b26382273
15 changed files with 379 additions and 77 deletions
  1. +99
    -30
      net/ddns-scripts/Makefile
  2. +0
    -0
      net/ddns-scripts/files/ddns.config
  3. +0
    -0
      net/ddns-scripts/files/ddns.hotplug
  4. +0
    -0
      net/ddns-scripts/files/ddns.init
  5. +33
    -15
      net/ddns-scripts/files/dynamic_dns_functions.sh
  6. +4
    -2
      net/ddns-scripts/files/dynamic_dns_lucihelper.sh
  7. +4
    -4
      net/ddns-scripts/files/dynamic_dns_updater.sh
  8. +3
    -8
      net/ddns-scripts/files/services
  9. +0
    -3
      net/ddns-scripts/files/services_ipv6
  10. +209
    -3
      net/ddns-scripts/files/tld_names.dat
  11. +13
    -11
      net/ddns-scripts/files/update_CloudFlare.sh
  12. +3
    -1
      net/ddns-scripts/files/update_No-IP.com.sh
  13. +11
    -0
      net/ddns-scripts/samples/ddns.config_sample
  14. +0
    -0
      net/ddns-scripts/samples/getlocalip_sample.sh
  15. +0
    -0
      net/ddns-scripts/samples/update_sample.sh

+ 99
- 30
net/ddns-scripts/Makefile View File

@ -1,64 +1,112 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=ddns-scripts
PKG_VERSION:=2.1.0
PKG_RELEASE:=5
# Version == major.minor.patch
# increase on new functionality (minor) or patches (patch)
PKG_VERSION:=2.2.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
define Package/ddns-scripts
define Package/$(PKG_NAME)/Default
SECTION:=net
CATEGORY:=Network
SUBMENU:=IP Addresses and Names
TITLE:=Dynamic DNS Scripts (with IPv6 support)
PKGARCH:=all
endef
define Package/ddns-scripts/description
A highly configurable set of scripts for doing dynamic dns updates.
- IPv6 support
- force communication to IPv4 or IPv6 only
- DNS server support
- using BIND host if installed
- DNS requests via TCP
- Proxy server support
- log file support
- support to run once
define Package/$(PKG_NAME)
$(call Package/$(PKG_NAME)/Default)
TITLE:=Dynamic DNS Client scripts (with IPv6 support)
endef
# shown in LuCI package description
define Package/$(PKG_NAME)/description
Dynamic DNS Client scripts (with IPv6 support) - Info: http://wiki.openwrt.org/doc/howto/ddns.client
endef
# shown in menuconfig <Help>
define Package/$(PKG_NAME)/config
help
A highly configurable set of scripts for doing dynamic dns updates.
- IPv6 support
- force communication to IPv4 or IPv6 only
- DNS server support
- using BIND host if installed
- DNS requests via TCP
- 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 Build/Prepare
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
Dynamic DNS Client scripts extension for CloudFlare
endef
define Build/Configure
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
Dynamic DNS Client scripts extension for No-IP.com
endef
define Build/Configure
endef
define Build/Compile
$(CP) ./files $(PKG_BUILD_DIR)
for FILE in `find $(PKG_BUILD_DIR)/files -type f`; do \
$(SED) 's/^\s*#/#/' \
-e '/^#\s\|^#$$$$/d' \
-e 's/\s#\s.*$$$$//' \
-e 's/\s*$$$$//' \
-e '/^\/\/\s/d' \
-e '/^\s*$$$$/d' $$$$FILE; \
done
endef
define Package/ddns-scripts/conffiles
define Package/$(PKG_NAME)/conffiles
/etc/config/ddns
endef
define Package/ddns-scripts/install
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_CONF) ./files/etc/config/* $(1)/etc/config
define Package/$(PKG_NAME)/install
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
$(INSTALL_BIN) ./files/etc/hotplug.d/iface/* $(1)/etc/hotplug.d/iface
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.hotplug $(1)/etc/hotplug.d/iface/95-ddns
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/etc/init.d/* $(1)/etc/init.d/
$(INSTALL_BIN) $(PKG_BUILD_DIR)/files/ddns.init $(1)/etc/init.d/ddns
$(INSTALL_DIR) $(1)/etc/config
$(INSTALL_CONF) $(PKG_BUILD_DIR)/files/ddns.config $(1)/etc/config/ddns
$(INSTALL_DIR) $(1)/usr/lib/ddns
$(INSTALL_DATA) ./files/usr/lib/ddns/* $(1)/usr/lib/ddns
$(INSTALL_BIN) ./files/usr/lib/ddns/*.sh $(1)/usr/lib/ddns
$(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/ddns-scripts/postinst
define Package/$(PKG_NAME)/postinst
#!/bin/sh
# if run within buildroot exit
[ -n "$${IPKG_INSTROOT}" ] && exit 0
@ -75,8 +123,18 @@ define Package/ddns-scripts/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/ddns-scripts/prerm
define Package/$(PKG_NAME)/prerm
#!/bin/sh
# if run within buildroot exit
[ -n "$${IPKG_INSTROOT}" ] && exit 0
@ -90,5 +148,16 @@ define Package/ddns-scripts/prerm
exit 0
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
#!/bin/sh
/bin/sed -i '/update_No-IP\.com\.sh/ d' $${IPKG_INSTROOT}/usr/lib/ddns/services
endef
$(eval $(call BuildPackage,ddns-scripts))
$(eval $(call BuildPackage,$(PKG_NAME)))
$(eval $(call BuildPackage,$(PKG_NAME)_CloudFlare))
$(eval $(call BuildPackage,$(PKG_NAME)_No-IP_com))

net/ddns-scripts/files/etc/config/ddns → net/ddns-scripts/files/ddns.config View File


net/ddns-scripts/files/etc/hotplug.d/iface/95-ddns → net/ddns-scripts/files/ddns.hotplug View File


net/ddns-scripts/files/etc/init.d/ddns → net/ddns-scripts/files/ddns.init View File


net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_functions.sh → net/ddns-scripts/files/dynamic_dns_functions.sh View File


net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_lucihelper.sh → net/ddns-scripts/files/dynamic_dns_lucihelper.sh View File


net/ddns-scripts/files/usr/lib/ddns/dynamic_dns_updater.sh → net/ddns-scripts/files/dynamic_dns_updater.sh View File


net/ddns-scripts/files/usr/lib/ddns/services → net/ddns-scripts/files/services View File


net/ddns-scripts/files/usr/lib/ddns/services_ipv6 → net/ddns-scripts/files/services_ipv6 View File


net/ddns-scripts/files/usr/lib/ddns/tld_names.dat → net/ddns-scripts/files/tld_names.dat View File


net/ddns-scripts/files/usr/lib/ddns/update_cloudflare.sh → net/ddns-scripts/files/update_CloudFlare.sh View File


net/ddns-scripts/files/usr/lib/ddns/update_no-ip.sh → net/ddns-scripts/files/update_No-IP.com.sh View File


net/ddns-scripts/files/etc/config/ddns.sample → net/ddns-scripts/samples/ddns.config_sample View File


net/ddns-scripts/files/usr/lib/ddns/getlocalip_sample.sh → net/ddns-scripts/samples/getlocalip_sample.sh View File


net/ddns-scripts/files/usr/lib/ddns/update_sample.sh → net/ddns-scripts/samples/update_sample.sh View File


Loading…
Cancel
Save