From 880d93f7f7645995b716f39e9666cb76acc10351 Mon Sep 17 00:00:00 2001 From: Denis Kurz Date: Sat, 10 Jan 2026 01:06:48 +0100 Subject: [PATCH] fix(dynv6): allow 'id' in dns challenge If the random dns challenge string happens to contain 'id', the parsing method passed a broken, mingled mix of the record's data and id field, instead of just the id. As a result, deleting the TXT record failed. We now specifically look for '"id":', which cannot appear as part of the challenge string. --- dnsapi/dns_dynv6.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dnsapi/dns_dynv6.sh b/dnsapi/dns_dynv6.sh index a68b5fb9..d5d49094 100644 --- a/dnsapi/dns_dynv6.sh +++ b/dnsapi/dns_dynv6.sh @@ -234,7 +234,7 @@ _get_record_id() { _get_record_id_from_response() { response="$1" - _record_id="$(echo "$response" | tr '}' '\n' | grep "\"name\":\"$record\"" | grep "\"data\":\"$value\"" | tr ',' '\n' | grep id | tr -d '"' | tr -d 'id:')" + _record_id="$(echo "$response" | tr '}' '\n' | grep "\"name\":\"$record\"" | grep "\"data\":\"$value\"" | tr ',' '\n' | grep '"id":' | tr -d '"' | tr -d 'id:' | tr -d '{')" #_record_id="${_record_id#id:}" if [ -z "$_record_id" ]; then _err "no such record: $record found in zone $_zone_id"