From 9af6ffe8952822984d1e03fceabe973b611eafc2 Mon Sep 17 00:00:00 2001
From: Bob Mottram <bob@freedombone.net>
Date: Sat, 12 May 2018 12:10:08 +0100
Subject: [PATCH] Remove existing ddns provider when changing ddns settings

---
 src/freedombone-ddns | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/freedombone-ddns b/src/freedombone-ddns
index 11ac90aad..454efa2c7 100755
--- a/src/freedombone-ddns
+++ b/src/freedombone-ddns
@@ -47,6 +47,10 @@ function update_inadyn_config {
     fi
 
     if ! grep -q "$DDNS_PROVIDER" /etc/inadyn.conf; then
+        # remove entry for any previous ddns
+        sed -i '/^system $/,$d' /etc/inadyn.conf
+
+        # add the new provider
         { echo '';
           echo "system $DDNS_PROVIDER";
           echo '  ssl';
@@ -58,6 +62,7 @@ function update_inadyn_config {
             echo "  password $DDNS_PASSWORD" >> /etc/inadyn.conf
         fi
     else
+        # change username/password for an existing provider
         if [ "$DDNS_USERNAME" ]; then
             sed -i "s|  username .*|  username $DDNS_USERNAME|g" /etc/inadyn.conf
         fi
@@ -65,6 +70,7 @@ function update_inadyn_config {
             sed -i "s|  password .*|  password $DDNS_PASSWORD|g" /etc/inadyn.conf
         fi
     fi
+
     systemctl enable inadyn
     systemctl restart inadyn
 }
-- 
GitLab