From fb733737ece54a86da8f3253542a9f267c36ab68 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Wed, 28 Feb 2007 17:58:09 +0000 Subject: [PATCH] Convert updatedd to the uci config format, add a hotplug script as well (#1213) SVN-Revision: 6436 --- net/updatedd/Makefile | 2 ++ net/updatedd/files/ddns.config | 6 ++++++ net/updatedd/files/ddns.hotplug | 15 +++++++++++++++ net/updatedd/files/ddns.init | 16 ++++++++++++++-- 4 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 net/updatedd/files/ddns.config create mode 100644 net/updatedd/files/ddns.hotplug diff --git a/net/updatedd/Makefile b/net/updatedd/Makefile index 7c8f9ed1db..d5b5d79e19 100644 --- a/net/updatedd/Makefile +++ b/net/updatedd/Makefile @@ -113,6 +113,8 @@ endef define Package/updatedd/install $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_BIN) ./files/ddns.init $(1)/etc/init.d/ddns + $(INSTALL_DIR) $(1)/etc/config + $(INSTALL_DATA) ./files/ddns.config $(1)/etc/config/updatedd $(INSTALL_DIR) $(1)/usr/bin $(CP) $(PKG_INSTALL_DIR)/usr/bin/updatedd $(1)/usr/bin/ $(INSTALL_DIR) $(1)/usr/lib/updatedd diff --git a/net/updatedd/files/ddns.config b/net/updatedd/files/ddns.config new file mode 100644 index 0000000000..bb6ed4ab11 --- /dev/null +++ b/net/updatedd/files/ddns.config @@ -0,0 +1,6 @@ +config updatedd + option ddns_service '' + option ddns_user '' + option ddns_passwd '' + option ddns_host '' + option ddns_update '0' diff --git a/net/updatedd/files/ddns.hotplug b/net/updatedd/files/ddns.hotplug new file mode 100644 index 0000000000..9b39282965 --- /dev/null +++ b/net/updatedd/files/ddns.hotplug @@ -0,0 +1,15 @@ +NAME=updatedd +CONFIG=/etc/$NAME.conf +COMMAND=/usr/sbin/$NAME + +[ "$ACTION" = "ifup" -a "$INTERFACE" = "wan" ] && { + [ -x $COMMAND ] && [ -r $CONFIG ] && { + include /lib/network + scan_interfaces + + config_get ifname wan ifname + [ -n "$ifname" ] && { + /etc/init.d/ddns restart + } + } & +} diff --git a/net/updatedd/files/ddns.init b/net/updatedd/files/ddns.init index c096b2db77..2ebba42bd3 100644 --- a/net/updatedd/files/ddns.init +++ b/net/updatedd/files/ddns.init @@ -1,9 +1,16 @@ #!/bin/sh /etc/rc.common # Copyright (C) 2006 OpenWrt.org +. /etc/functions.sh + +config_load updatedd +config_get ddns_service cfg1 ddns_service +config_get ddns_user cfg1 ddns_user +config_get ddns_passwd cfg1 ddns_passwd +config_get ddns_host cfg1 ddns_host +config_get ddns_update cfg1 ddns_update + start() { - [ -f /etc/default/ddns ] && . /etc/default/ddns - [ "$ddns_update" = 1 ] && { /usr/bin/updatedd -Y $ddns_service -- $ddns_user:$ddns_passwd $ddns_host } @@ -12,3 +19,8 @@ start() { stop() { killall updatedd } + +restart() { + stop + start +} -- 2.30.2