mirror of
https://github.com/acmesh-official/acme.sh.git
synced 2025-05-12 18:02:45 +00:00
Update dns_pdns-mysql.sh
This commit is contained in:
parent
88cccabe08
commit
89d3ac81cc
@ -108,9 +108,15 @@ set_record() {
|
|||||||
full=$2
|
full=$2
|
||||||
txtvalue=$3
|
txtvalue=$3
|
||||||
|
|
||||||
if ! _pdns_rest "PATCH" "/api/v1/servers/$PDNS_User/zones/$root." "{\"rrsets\": [{\"changetype\": \"REPLACE\", \"name\": \"$full.\", \"type\": \"TXT\", \"ttl\": $PDNS_Ttl, \"records\": [{\"name\": \"$full.\", \"type\": \"TXT\", \"content\": \"\\\"$txtvalue\\\"\", \"disabled\": false, \"ttl\": $PDNS_Ttl}]}]}"; then
|
# check if challenge exists update if so else insert.
|
||||||
_err "Set txt record error."
|
UNIQUE_ID=$(mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "SELECT id FROM ${PDNS_Database}.records WHERE name='${full}' AND type='TXT'")
|
||||||
return 1
|
if [[ -z "${UNIQUE_ID}" ]]; then
|
||||||
|
mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "INSERT INTO ${PDNS_Database}.records \
|
||||||
|
(name, content, type,ttl,prio) VALUES \
|
||||||
|
('${full}','${txtvalue}','TXT',120,NULL);"
|
||||||
|
else
|
||||||
|
mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "UPDATE ${PDNS_Database}.records SET content='${txtvalue}' \
|
||||||
|
WHERE id='${UNIQUE_ID}' AND name='${full}' AND type='TXT' LIMIT 1;"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! notify_slaves "$root"; then
|
if ! notify_slaves "$root"; then
|
||||||
@ -125,7 +131,8 @@ rm_record() {
|
|||||||
root=$1
|
root=$1
|
||||||
full=$2
|
full=$2
|
||||||
|
|
||||||
if ! _pdns_rest "PATCH" "/api/v1/servers/$PDNS_User/zones/$root." "{\"rrsets\": [{\"changetype\": \"DELETE\", \"name\": \"$full.\", \"type\": \"TXT\"}]}"; then
|
_delete_challenge=$(mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "DELETE FROM ${PDNS_Database}.records WHERE name='${full}'")
|
||||||
|
if [ -z "$_delete_challenge" ]; then
|
||||||
_err "Delete txt record error."
|
_err "Delete txt record error."
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
@ -140,10 +147,7 @@ rm_record() {
|
|||||||
notify_slaves() {
|
notify_slaves() {
|
||||||
root=$1
|
root=$1
|
||||||
|
|
||||||
if ! _pdns_rest "PUT" "/api/v1/servers/$PDNS_User/zones/$root./notify"; then
|
### Need finished ###
|
||||||
_err "Notify slaves error."
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
@ -156,8 +160,8 @@ _get_root() {
|
|||||||
domain=$1
|
domain=$1
|
||||||
i=1
|
i=1
|
||||||
_pdns_domains=$(mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "SELECT name FROM ${PDNS_Database}.domains")
|
_pdns_domains=$(mysql -ss "-h${PDNS_Host}" "-P${PDNS_Port}" "-u${PDNS_User}" "-p${PDNS_Pass}" -e "SELECT name FROM ${PDNS_Database}.domains")
|
||||||
if _pdns_rest "GET" "/api/v1/servers/$PDNS_User/zones"; then
|
if [ -z "$_pdns_domains" ]; then
|
||||||
_zones_response="$response"
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
@ -166,7 +170,7 @@ _get_root() {
|
|||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if _contains "$_zones_response" "\"name\": \"$h.\""; then
|
if _contains "$_pdns_domains" "$h."; then
|
||||||
_domain="$h"
|
_domain="$h"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user