From 945e3660974b9337af1317e4a42463f76c69523f Mon Sep 17 00:00:00 2001 From: Philippe Pittoli Date: Thu, 14 Mar 2024 04:43:02 +0100 Subject: [PATCH] use_token: update only when addresses differ, and update serial. --- src/storage.cr | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/storage.cr b/src/storage.cr index 2d3c898..ed254d1 100644 --- a/src/storage.cr +++ b/src/storage.cr @@ -338,6 +338,9 @@ class DNSManager::Storage zone = zone_must_exist! token.domain rr = zone.rr_must_exist! token.rrid + # Same address, no need to change anything. + return Response::Success.new if rr.target == address + # TODO: validate target? case rr @@ -349,7 +352,7 @@ class DNSManager::Storage when Zone::AAAA rr.target = address zone.update_rr rr - zones_by_domain.update_or_create zone.domain, zone + update_zone zone Response::Success.new else Response::Error.new "use token on invalid entry (not A or AAAA)"