Add error message if fails to add TXT record for missing security code (probably a FreeDNS public domain)

This commit is contained in:
David Kerr 2017-02-04 10:21:58 -05:00
parent e6b940e247
commit f78b656f5f
2 changed files with 14 additions and 9 deletions

View File

@ -301,6 +301,10 @@ Now you can issue a certificate.
acme.sh --issue --dns dns_freedns -d example.com -d www.example.com acme.sh --issue --dns dns_freedns -d example.com -d www.example.com
``` ```
Note that you cannot use acme.sh automatic DNS validation for FreeDNS public domains or for a subdomain that
you create under a FreeDNS public domain. You must own the top level domain in order to automaitcally
validate with acme.sh at FreeDNS.
# Use custom API # Use custom API
If your API is not supported yet, you can write your own DNS API. If your API is not supported yet, you can write your own DNS API.

View File

@ -307,9 +307,7 @@ _freedns_retrieve_subdomain_page() {
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
_err "FreeDNS retrieve subdomins failed bad RC from _get" _err "FreeDNS retrieve subdomins failed bad RC from _get"
return 1 return 1
fi elif [ -z "$htmlpage" ]; then
if [ -z "$htmlpage" ]; then
_err "FreeDNS returned empty subdomain page" _err "FreeDNS returned empty subdomain page"
return 1 return 1
fi fi
@ -334,13 +332,18 @@ _freedns_add_txt_record() {
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
_err "FreeDNS failed to add TXT record for $subdomain bad RC from _post" _err "FreeDNS failed to add TXT record for $subdomain bad RC from _post"
return 1 return 1
fi elif ! grep "200 OK" "$HTTP_HEADER" >/dev/null; then
if ! grep "200 OK" "$HTTP_HEADER" >/dev/null; then
_debug "$htmlpage" _debug "$htmlpage"
_err "FreeDNS failed to add TXT record for $subdomain. Check $HTTP_HEADER file" _err "FreeDNS failed to add TXT record for $subdomain. Check $HTTP_HEADER file"
return 1 return 1
elif _contains "$htmlpage" "security code was incorrect"; then
_debug "$htmlpage"
_err "FreeDNS failed to add TXT record for $subdomain as FreeDNS requested seurity code"
_err "Note that you cannot use automatic DNS validation for FreeDNS public domains"
return 1
fi fi
_debug2 "$htmlpage"
_info "Added acme challenge TXT record for $fulldomain at FreeDNS" _info "Added acme challenge TXT record for $fulldomain at FreeDNS"
return 0 return 0
} }
@ -357,9 +360,7 @@ _freedns_delete_txt_record() {
if [ "$?" != "0" ]; then if [ "$?" != "0" ]; then
_err "FreeDNS failed to delete TXT record for $data_id bad RC from _get" _err "FreeDNS failed to delete TXT record for $data_id bad RC from _get"
return 1 return 1
fi elif ! _contains "$htmlheader" "200 OK"; then
if ! _contains "$htmlheader" "200 OK"; then
_debug "$htmlheader" _debug "$htmlheader"
_err "FreeDNS failed to delete TXT record $data_id" _err "FreeDNS failed to delete TXT record $data_id"
return 1 return 1