summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFileGo <emilnovak@gmail.com>2021-05-18 20:24:28 +0100
committerGitHub <noreply@github.com>2021-05-18 21:24:28 +0200
commit89b127647cbf3fea3a439f43efa32a31aa03524e (patch)
tree9c7a5c38f85406aecd61ad7b72690c6608e895b4
parentfa05e4267c17d93c4e9594a0ba32e66c7b2a1d61 (diff)
downloadvyos-1x-89b127647cbf3fea3a439f43efa32a31aa03524e.tar.gz
vyos-1x-89b127647cbf3fea3a439f43efa32a31aa03524e.zip
ddns: T3254: fix incorrect update time
This fixes a bug when show dynamic dns status returned (formatted) UNIX time 0. I have changed the code to use ddclient's mtime value in the cache file, which is updated on every successful sync with DDNS service as opposed to atime, which was previously used.
-rwxr-xr-xsrc/op_mode/dynamic_dns.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/op_mode/dynamic_dns.py b/src/op_mode/dynamic_dns.py
index f9a1aad38..263a3b6a5 100755
--- a/src/op_mode/dynamic_dns.py
+++ b/src/op_mode/dynamic_dns.py
@@ -65,11 +65,10 @@ def show_status():
if ip:
outp['ip'] = ip.split(',')[0]
- if 'atime=' in line:
- atime = line.split('atime=')[1]
- if atime:
- tmp = atime.split(',')[0]
- outp['time'] = time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime(int(tmp, base=10)))
+ if 'mtime=' in line:
+ mtime = line.split('mtime=')[1]
+ if mtime:
+ outp['time'] = time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime(int(mtime.split(',')[0], base=10)))
if 'status=' in line:
status = line.split('status=')[1]