Convert updatedd to the uci config format, add a hotplug script as well (#1213)
authorFlorian Fainelli <florian@openwrt.org>
Wed, 28 Feb 2007 17:58:09 +0000 (17:58 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Wed, 28 Feb 2007 17:58:09 +0000 (17:58 +0000)
SVN-Revision: 6436

net/updatedd/Makefile
net/updatedd/files/ddns.config [new file with mode: 0644]
net/updatedd/files/ddns.hotplug [new file with mode: 0644]
net/updatedd/files/ddns.init

index 7c8f9ed..d5b5d79 100644 (file)
@@ -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
 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
        $(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 (file)
index 0000000..bb6ed4a
--- /dev/null
@@ -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 (file)
index 0000000..9b39282
--- /dev/null
@@ -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
+                               }
+        } &
+}
index c096b2d..2ebba42 100644 (file)
@@ -1,9 +1,16 @@
 #!/bin/sh /etc/rc.common
 # Copyright (C) 2006 OpenWrt.org
 
 #!/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() {
 start() {
-       [ -f /etc/default/ddns ] && . /etc/default/ddns
-       
        [ "$ddns_update" = 1 ] && {
                /usr/bin/updatedd -Y $ddns_service -- $ddns_user:$ddns_passwd $ddns_host
        }
        [ "$ddns_update" = 1 ] && {
                /usr/bin/updatedd -Y $ddns_service -- $ddns_user:$ddns_passwd $ddns_host
        }
@@ -12,3 +19,8 @@ start() {
 stop() {
        killall updatedd
 }
 stop() {
        killall updatedd
 }
+
+restart() {
+       stop
+       start
+}