From 89b127647cbf3fea3a439f43efa32a31aa03524e Mon Sep 17 00:00:00 2001 From: FileGo Date: Tue, 18 May 2021 20:24:28 +0100 Subject: 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. --- src/op_mode/dynamic_dns.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'src') 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] -- cgit v1.2.3