From af4f6e8a56545275c7dae00b9610cf1145fd82ca Mon Sep 17 00:00:00 2001 From: Lexi Winter Date: Tue, 3 Jun 2025 19:28:25 +0100 Subject: kerberos.sh: correctly handle multiple TXT records --- kerberos.sh | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'kerberos.sh') diff --git a/kerberos.sh b/kerberos.sh index dad7aad..df88e2c 100644 --- a/kerberos.sh +++ b/kerberos.sh @@ -102,14 +102,16 @@ _wait_for_nameserver() { return 1 fi - data="$(dig "_acme-challenge.$domain" txt @$nameserver +short)" - if [ -z "$data" ]; then - continue - fi - - if [ "$data" = "\"$auth\"" ]; then - return 0 - fi + local _rdatas="$( + dig "_acme-challenge.$domain" txt @$nameserver \ + +noall +answer \ + | awk '$4 == "TXT" { print $5 }' + )" + for rdata in $_rdatas; do + if [ "$rdata" = "\"$auth\"" ]; then + return 0 + fi + done done } -- cgit v1.2.3