Fix sed special characters handling

This commit is contained in:
2024-08-22 13:32:39 +03:00
parent f8d1f35d20
commit e74de52544

View File

@@ -131,7 +131,7 @@ _timeweb_split_acme_fqdn() {
while
TW_Domain=$(
echo "$TW_Domains" |
sed -n 's/.*{\([^{]*"fqdn":"[^"]*"[^}]*\)}.*/\1/p'
sed -n 's/.*{[^{]*"fqdn":"\([^"]*\)"[^}]*}.*/\1/p'
)
[ -n "$TW_Domain" ] && {
@@ -139,7 +139,7 @@ _timeweb_split_acme_fqdn() {
TW_Domains=$(
echo "$TW_Domains" |
sed "s/{$TW_Domain}//"
sed 's/{\([^{]*"fqdn":"'"$TW_Domain"'"[^}]*\)}//'
)
continue
}
@@ -168,7 +168,7 @@ _timeweb_get_dns_txt() {
while
Dns_Record=$(
echo "$TW_Dns_Records" |
sed -n "s/.*{\([^\{]*{[^\{]*${Acme_Txt}[^\}]*}[^\}]*\)}.*/\1/p"
sed -n 's/.*{\([^{]*{[^{]*'"$Acme_Txt"'[^}]*}[^}]*\)}.*/\1/p'
)
[ -n "$Dns_Record" ] && {
@@ -176,7 +176,7 @@ _timeweb_get_dns_txt() {
TW_Dns_Records=$(
echo "$TW_Dns_Records" |
sed "s/{$Dns_Record}//"
sed 's/{\([^{]*{[^{]*'"$Acme_Txt"'[^}]*}[^}]*\)}//'
)
continue
}
@@ -280,25 +280,20 @@ _timeweb_list_dns_records() {
_timeweb_is_main_domain() {
_debug "Checking if \"$1\" is the main domain of the ACME DNS-01 challenge FQDN."
TW_Domain_Fqdn=$(
echo "$1" |
sed 's/.*"fqdn":"\([^"]*\)".*/\1/'
)
[ -z "$TW_Domain_Fqdn" ] && {
[ -z "$1" ] && {
_debug "Failed to extract FQDN. Skipping domain."
return 1
}
! echo ".$Acme_Fqdn" | grep -qi "\.$TW_Domain_Fqdn$" && {
! echo ".$Acme_Fqdn" | grep -qi "\.$1$" && {
_debug "Domain does not match the ACME DNS-01 challenge FQDN. Skipping domain."
return 1
}
TW_Main_Domain=$TW_Domain_Fqdn
TW_Main_Domain=$1
TW_Subdomains=$(
echo "$Acme_Fqdn" |
sed "s/\.*.\{${#TW_Domain_Fqdn}\}$//"
sed "s/\.*.\{${#1}\}$//"
)
_debug "Matched domain. ACME DNS-01 challenge FQDN split as [$TW_Subdomains].[$TW_Main_Domain]."
@@ -407,4 +402,4 @@ _timeweb_dns_txt_remove() {
}
_debug "DNS TXT record with ID \"$TW_Dns_Txt_Id\" has been removed."
}
}