|
|
@ -2924,42 +2924,35 @@ _clearup() { |
|
|
|
|
|
|
|
|
_clearupdns() { |
|
|
_clearupdns() { |
|
|
_debug "_clearupdns" |
|
|
_debug "_clearupdns" |
|
|
_debug "dnsadded" "$dnsadded" |
|
|
|
|
|
_debug "vlist" "$vlist" |
|
|
|
|
|
#dnsadded is "0" or "1" means dns-01 method was used for at least one domain |
|
|
|
|
|
if [ -z "$dnsadded" ] || [ -z "$vlist" ]; then |
|
|
|
|
|
|
|
|
_debug "dns_entries" "$dns_entries" |
|
|
|
|
|
|
|
|
|
|
|
if [ -z "$dns_entries" ]; then |
|
|
_debug "skip dns." |
|
|
_debug "skip dns." |
|
|
return |
|
|
return |
|
|
fi |
|
|
fi |
|
|
_info "Removing DNS records." |
|
|
_info "Removing DNS records." |
|
|
ventries=$(echo "$vlist" | tr ',' ' ') |
|
|
|
|
|
_alias_index=1 |
|
|
|
|
|
for ventry in $ventries; do |
|
|
|
|
|
d=$(echo "$ventry" | cut -d "$sep" -f 1) |
|
|
|
|
|
keyauthorization=$(echo "$ventry" | cut -d "$sep" -f 2) |
|
|
|
|
|
vtype=$(echo "$ventry" | cut -d "$sep" -f 4) |
|
|
|
|
|
_currentRoot=$(echo "$ventry" | cut -d "$sep" -f 5) |
|
|
|
|
|
txt="$(printf "%s" "$keyauthorization" | _digest "sha256" | _url_replace)" |
|
|
|
|
|
_debug txt "$txt" |
|
|
|
|
|
if [ "$keyauthorization" = "$STATE_VERIFIED" ]; then |
|
|
|
|
|
_debug "$d is already verified, skip $vtype." |
|
|
|
|
|
_alias_index="$(_math "$_alias_index" + 1)" |
|
|
|
|
|
continue |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
if [ "$vtype" != "$VTYPE_DNS" ]; then |
|
|
|
|
|
_debug "Skip $d for $vtype" |
|
|
|
|
|
continue |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
d_api="$(_findHook "$d" dnsapi "$_currentRoot")" |
|
|
|
|
|
_debug d_api "$d_api" |
|
|
|
|
|
|
|
|
for entry in $dns_entries; do |
|
|
|
|
|
d=$(_getfield "$entry" 1) |
|
|
|
|
|
txtdomain=$(_getfield "$entry" 2) |
|
|
|
|
|
aliasDomain=$(_getfield "$entry" 3) |
|
|
|
|
|
txt=$(_getfield "$entry" 5) |
|
|
|
|
|
d_api=$(_getfield "$entry" 6) |
|
|
|
|
|
_debug "d" "$d" |
|
|
|
|
|
_debug "txtdomain" "$txtdomain" |
|
|
|
|
|
_debug "aliasDomain" "$aliasDomain" |
|
|
|
|
|
_debug "txt" "$txt" |
|
|
|
|
|
_debug "d_api" "$d_api" |
|
|
|
|
|
|
|
|
if [ -z "$d_api" ]; then |
|
|
if [ -z "$d_api" ]; then |
|
|
_info "Not Found domain api file: $d_api" |
|
|
_info "Not Found domain api file: $d_api" |
|
|
continue |
|
|
continue |
|
|
fi |
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
if [ "$aliasDomain" ]; then |
|
|
|
|
|
txtdomain="$aliasDomain" |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
( |
|
|
( |
|
|
if ! . "$d_api"; then |
|
|
if ! . "$d_api"; then |
|
|
_err "Load file $d_api error. Please check your api file and try again." |
|
|
_err "Load file $d_api error. Please check your api file and try again." |
|
|
@ -2972,24 +2965,6 @@ _clearupdns() { |
|
|
return 1 |
|
|
return 1 |
|
|
fi |
|
|
fi |
|
|
|
|
|
|
|
|
_dns_root_d="$d" |
|
|
|
|
|
if _startswith "$_dns_root_d" "*."; then |
|
|
|
|
|
_dns_root_d="$(echo "$_dns_root_d" | sed 's/*.//')" |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
_d_alias="$(_getfield "$_challenge_alias" "$_alias_index")" |
|
|
|
|
|
_alias_index="$(_math "$_alias_index" + 1)" |
|
|
|
|
|
_debug "_d_alias" "$_d_alias" |
|
|
|
|
|
if [ "$_d_alias" ]; then |
|
|
|
|
|
if _startswith "$_d_alias" "$DNS_ALIAS_PREFIX"; then |
|
|
|
|
|
txtdomain="$(echo "$_d_alias" | sed "s/$DNS_ALIAS_PREFIX//")" |
|
|
|
|
|
else |
|
|
|
|
|
txtdomain="_acme-challenge.$_d_alias" |
|
|
|
|
|
fi |
|
|
|
|
|
else |
|
|
|
|
|
txtdomain="_acme-challenge.$_dns_root_d" |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
if ! $rmcommand "$txtdomain" "$txt"; then |
|
|
if ! $rmcommand "$txtdomain" "$txt"; then |
|
|
_err "Error removing txt for domain:$txtdomain" |
|
|
_err "Error removing txt for domain:$txtdomain" |
|
|
return 1 |
|
|
return 1 |
|
|
@ -3781,6 +3756,7 @@ $_authorizations_map" |
|
|
done |
|
|
done |
|
|
_debug vlist "$vlist" |
|
|
_debug vlist "$vlist" |
|
|
#add entry |
|
|
#add entry |
|
|
|
|
|
dns_entries=""; |
|
|
dnsadded="" |
|
|
dnsadded="" |
|
|
ventries=$(echo "$vlist" | tr "$dvsep" ' ') |
|
|
ventries=$(echo "$vlist" | tr "$dvsep" ' ') |
|
|
_alias_index=1 |
|
|
_alias_index=1 |
|
|
@ -3811,8 +3787,10 @@ $_authorizations_map" |
|
|
else |
|
|
else |
|
|
txtdomain="_acme-challenge.$_d_alias" |
|
|
txtdomain="_acme-challenge.$_d_alias" |
|
|
fi |
|
|
fi |
|
|
|
|
|
dns_entries="${dns_entries}${_dns_root_d}${dvsep}_acme-challenge.$_dns_root_d$dvsep$txtdomain$dvsep$_currentRoot" |
|
|
else |
|
|
else |
|
|
txtdomain="_acme-challenge.$_dns_root_d" |
|
|
txtdomain="_acme-challenge.$_dns_root_d" |
|
|
|
|
|
dns_entries="${dns_entries}${_dns_root_d}${dvsep}_acme-challenge.$_dns_root_d$dvsep$dvsep$_currentRoot" |
|
|
fi |
|
|
fi |
|
|
_debug txtdomain "$txtdomain" |
|
|
_debug txtdomain "$txtdomain" |
|
|
txt="$(printf "%s" "$keyauthorization" | _digest "sha256" | _url_replace)" |
|
|
txt="$(printf "%s" "$keyauthorization" | _digest "sha256" | _url_replace)" |
|
|
@ -3821,7 +3799,9 @@ $_authorizations_map" |
|
|
d_api="$(_findHook "$_dns_root_d" dnsapi "$_currentRoot")" |
|
|
d_api="$(_findHook "$_dns_root_d" dnsapi "$_currentRoot")" |
|
|
|
|
|
|
|
|
_debug d_api "$d_api" |
|
|
_debug d_api "$d_api" |
|
|
|
|
|
|
|
|
|
|
|
dns_entries="$dns_entries$dvsep$txt${dvsep}$d_api |
|
|
|
|
|
" |
|
|
|
|
|
_debug2 "$dns_entries" |
|
|
if [ "$d_api" ]; then |
|
|
if [ "$d_api" ]; then |
|
|
_info "Found domain api file: $d_api" |
|
|
_info "Found domain api file: $d_api" |
|
|
else |
|
|
else |
|
|
@ -3875,7 +3855,7 @@ $_authorizations_map" |
|
|
|
|
|
|
|
|
fi |
|
|
fi |
|
|
|
|
|
|
|
|
if [ "$dnsadded" = '1' ]; then |
|
|
|
|
|
|
|
|
if [ "$dns_entries" ]; then |
|
|
if [ -z "$Le_DNSSleep" ]; then |
|
|
if [ -z "$Le_DNSSleep" ]; then |
|
|
Le_DNSSleep="$DEFAULT_DNS_SLEEP" |
|
|
Le_DNSSleep="$DEFAULT_DNS_SLEEP" |
|
|
else |
|
|
else |
|
|
|