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
e65144a1
Commit
e65144a1
authored
May 03, 2021
by
neil
Browse files
fix
https://github.com/acmesh-official/acme.sh/issues/3487
suppor Ali doh and dnspod doh.
parent
ae40445d
Changes
1
Hide whitespace changes
Inline
Side-by-side
acme.sh
View file @
e65144a1
...
...
@@ -102,6 +102,8 @@ DEBUG_LEVEL_NONE=0
DOH_CLOUDFLARE
=
1
DOH_GOOGLE
=
2
DOH_ALI
=
3
DOH_DP
=
4
HIDDEN_VALUE
=
"[hidden](please add '--output-insecure' to see this value)"
...
...
@@ -3916,7 +3918,15 @@ _ns_purge_cf() {
#checks if cf server is available
_ns_is_available_cf
()
{
if
_get
"https://cloudflare-dns.com"
>
/dev/null 2>&1
;
then
if
_get
"https://cloudflare-dns.com"
""
1
>
/dev/null 2>&1
;
then
return
0
else
return
1
fi
}
_ns_is_available_google
()
{
if
_get
"https://dns.google"
""
1
>
/dev/null 2>&1
;
then
return
0
else
return
1
...
...
@@ -3931,6 +3941,38 @@ _ns_lookup_google() {
_ns_lookup_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
_ns_is_available_ali
()
{
if
_get
"https://dns.alidns.com"
""
1
>
/dev/null 2>&1
;
then
return
0
else
return
1
fi
}
#domain, type
_ns_lookup_ali
()
{
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://dns.alidns.com/resolve"
_ns_lookup_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
_ns_is_available_dp
()
{
if
_get
"https://dns.alidns.com"
""
1
>
/dev/null 2>&1
;
then
return
0
else
return
1
fi
}
#dnspod
_ns_lookup_dp
()
{
_cf_ld
=
"
$1
"
_cf_ld_type
=
"
$2
"
_cf_ep
=
"https://doh.pub/dns-query"
_ns_lookup_impl
"
$_cf_ep
"
"
$_cf_ld
"
"
$_cf_ld_type
"
}
#domain, type
_ns_lookup
()
{
if
[
-z
"
$DOH_USE
"
]
;
then
...
...
@@ -3938,16 +3980,28 @@ _ns_lookup() {
if
_ns_is_available_cf
;
then
_debug
"Use cloudflare doh server"
export
DOH_USE
=
$DOH_CLOUDFLARE
el
se
el
if
_ns_is_available_google
;
then
_debug
"Use google doh server"
export
DOH_USE
=
$DOH_GOOGLE
elif
_ns_is_available_ali
;
then
_debug
"Use aliyun doh server"
export
DOH_USE
=
$DOH_ALI
else
_ns_is_available_dp
;
_debug
"Use dns pod doh server"
export
DOH_USE
=
$DOH_DP
fi
fi
if
[
"
$DOH_USE
"
=
"
$DOH_CLOUDFLARE
"
]
||
[
-z
"
$DOH_USE
"
]
;
then
_ns_lookup_cf
"
$@
"
el
se
el
if
[
"
$DOH_USE
"
=
"
$DOH_GOOGLE
"
]
;
then
_ns_lookup_google
"
$@
"
elif
[
"
$DOH_USE
"
=
"
$DOH_ALI
"
]
;
then
_ns_lookup_ali
"
$@
"
elif
[
"
$DOH_USE
"
=
"
$DOH_DP
"
]
;
then
_ns_lookup_dp
"
$@
"
else
_err
"Unknown doh provider: DOH_USE=
$DOH_USE
"
fi
}
...
...
@@ -3972,7 +4026,7 @@ __purge_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"
_debug
"no purge api for
this doh
api, just sleep 5 secs"
_sleep 5
fi
...
...
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