Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
477a0476
Unverified
Commit
477a0476
authored
Oct 03, 2019
by
neil
Committed by
GitHub
Oct 03, 2019
Browse files
support google public dns (#2522)
* support google dns * let's start 2.8.4
parent
b8cc10ab
Changes
1
Hide whitespace changes
Inline
Side-by-side
acme.sh
View file @
477a0476
#!/usr/bin/env sh
VER
=
2.8.
3
VER
=
2.8.
4
PROJECT_NAME
=
"acme.sh"
...
...
@@ -90,6 +90,9 @@ DEBUG_LEVEL_3=3
DEBUG_LEVEL_DEFAULT
=
$DEBUG_LEVEL_1
DEBUG_LEVEL_NONE
=
0
DOH_CLOUDFLARE
=
1
DOH_GOOGLE
=
2
HIDDEN_VALUE
=
"[hidden](please add '--output-insecure' to see this value)"
SYSLOG_ERROR
=
"user.error"
...
...
@@ -3636,7 +3639,7 @@ __trigger_validation() {
}
#endpoint domain type
_ns_lookup
()
{
_ns_lookup
_impl
()
{
_ns_ep
=
"
$1
"
_ns_domain
=
"
$2
"
_ns_type
=
"
$3
"
...
...
@@ -3660,7 +3663,7 @@ _ns_lookup_cf() {
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://cloudflare-dns.com/dns-query"
_ns_lookup
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
_ns_lookup
_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
#domain, type
...
...
@@ -3673,6 +3676,44 @@ _ns_purge_cf() {
_debug2 response
"
$response
"
}
#checks if cf server is available
_ns_is_available_cf
()
{
if
_get
"https://cloudflare-dns.com"
;
then
return
0
else
return
1
fi
}
#domain, type
_ns_lookup_google
()
{
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://dns.google/resolve"
_ns_lookup_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
#domain, type
_ns_lookup
()
{
if
[
-z
"
$DOH_USE
"
]
;
then
_debug
"Detect dns server first."
if
_ns_is_available_cf
;
then
_debug
"Use cloudflare doh server"
export
DOH_USE
=
$DOH_CLOUDFLARE
else
_debug
"Use google doh server"
export
DOH_USE
=
$DOH_GOOGLE
fi
fi
if
[
"
$DOH_USE
"
=
"
$DOH_CLOUDFLARE
"
]
||
[
-z
"
$DOH_USE
"
]
;
then
_ns_lookup_cf
"
$@
"
else
_ns_lookup_google
"
$@
"
fi
}
#txtdomain, alias, txt
__check_txt
()
{
_c_txtdomain
=
"
$1
"
...
...
@@ -3681,7 +3722,7 @@ __check_txt() {
_debug
"_c_txtdomain"
"
$_c_txtdomain
"
_debug
"_c_aliasdomain"
"
$_c_aliasdomain
"
_debug
"_c_txt"
"
$_c_txt
"
_answers
=
"
$(
_ns_lookup
_cf
"
$_c_aliasdomain
"
TXT
)
"
_answers
=
"
$(
_ns_lookup
"
$_c_aliasdomain
"
TXT
)
"
_contains
"
$_answers
"
"
$_c_txt
"
}
...
...
@@ -3690,7 +3731,13 @@ __check_txt() {
__purge_txt
()
{
_p_txtdomain
=
"
$1
"
_debug _p_txtdomain
"
$_p_txtdomain
"
_ns_purge_cf
"
$_p_txtdomain
"
"TXT"
if
[
"
$DOH_USE
"
=
"
$DOH_CLOUDFLARE
"
]
||
[
-z
"
$DOH_USE
"
]
;
then
_ns_purge_cf
"
$_p_txtdomain
"
"TXT"
else
_debug
"no purge api for google dns api, just sleep 5 secs"
_sleep 5
fi
}
#wait and check each dns entries
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment