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
d5c00071
Commit
d5c00071
authored
Nov 17, 2016
by
magna-z
Browse files
Add functional in method dns_pdns_rm()
parent
c7a6cf54
Changes
1
Hide whitespace changes
Inline
Side-by-side
dnsapi/dns_pdns.sh
View file @
d5c00071
...
@@ -12,6 +12,8 @@ DEFAULT_PDNS_TTL=60
...
@@ -12,6 +12,8 @@ DEFAULT_PDNS_TTL=60
######## Public functions #####################
######## Public functions #####################
#Usage: add _acme-challenge.www.domain.com "123456789ABCDEF0000000000000000000000000000000000000"
#Usage: add _acme-challenge.www.domain.com "123456789ABCDEF0000000000000000000000000000000000000"
#fulldomain
#txtvalue
dns_pdns_add
()
{
dns_pdns_add
()
{
fulldomain
=
$1
fulldomain
=
$1
txtvalue
=
$2
txtvalue
=
$2
...
@@ -50,7 +52,7 @@ dns_pdns_add() {
...
@@ -50,7 +52,7 @@ dns_pdns_add() {
_saveaccountconf PDNS_Ttl
"
$PDNS_Ttl
"
_saveaccountconf PDNS_Ttl
"
$PDNS_Ttl
"
fi
fi
_debug
"
First d
etect
the
root zone"
_debug
"
D
etect root zone"
if
!
_get_root
"
$fulldomain
"
;
then
if
!
_get_root
"
$fulldomain
"
;
then
_err
"invalid domain"
_err
"invalid domain"
return
1
return
1
...
@@ -68,6 +70,18 @@ dns_pdns_add() {
...
@@ -68,6 +70,18 @@ dns_pdns_add() {
dns_pdns_rm
()
{
dns_pdns_rm
()
{
fulldomain
=
$1
fulldomain
=
$1
_debug
"Detect root zone"
if
!
_get_root
"
$fulldomain
"
;
then
_err
"invalid domain"
return
1
fi
_debug _domain
"
$_domain
"
if
!
rm_record
"
$_domain
"
"
$fulldomain
"
;
then
return
1
fi
return
0
}
}
set_record
()
{
set_record
()
{
...
@@ -76,14 +90,43 @@ set_record() {
...
@@ -76,14 +90,43 @@ set_record() {
full
=
$2
full
=
$2
txtvalue
=
$3
txtvalue
=
$3
if
!
_pdns_rest
"PATCH"
"/api/v1/servers/
$PDNS_ServerId
/zones/
$root
."
"{
\"
rrsets
\"
: [{
\"
name
\"
:
\"
$full
.
\"
,
\"
changetype
\"
:
\"
REPLACE
\"
,
\"
type
\"
:
\"
TXT
\"
,
\"
ttl
\"
:
$PDNS_Ttl
,
\"
records
\"
: [{
\"
name
\"
:
\"
$full
.
\"
,
\"
type
\"
:
\"
TXT
\"
,
\"
content
\"
:
\"\\\"
$txtvalue
\\\"\"
,
\"
disabled
\"
: false,
\"
ttl
\"
:
$PDNS_Ttl
}]}]}"
;
then
if
!
_pdns_rest
"PATCH"
"/api/v1/servers/
$PDNS_ServerId
/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
_err
"Set txt record error."
_err
"Set txt record error."
return
1
return
1
fi
fi
if
!
notify_slaves
"
$root
"
;
then
return
1
fi
return
0
}
rm_record
()
{
_info
"Remove record"
root
=
$1
full
=
$2
if
!
_pdns_rest
"PATCH"
"/api/v1/servers/
$PDNS_ServerId
/zones/
$root
."
"{
\"
rrsets
\"
: [{
\"
changetype
\"
:
\"
DELETE
\"
,
\"
name
\"
:
\"
$full
.
\"
,
\"
type
\"
:
\"
TXT
\"
}]}"
;
then
_err
"Delete txt record error."
return
1
fi
if
!
notify_slaves
"
$root
"
;
then
return
1
fi
return
0
}
notify_slaves
()
{
root
=
$1
if
!
_pdns_rest
"PUT"
"/api/v1/servers/
$PDNS_ServerId
/zones/
$root
./notify"
;
then
if
!
_pdns_rest
"PUT"
"/api/v1/servers/
$PDNS_ServerId
/zones/
$root
./notify"
;
then
_err
"Notify s
er
ve
r
s error."
_err
"Notify s
la
ves error."
return
1
return
1
fi
fi
return
0
return
0
}
}
...
@@ -113,6 +156,7 @@ _get_root() {
...
@@ -113,6 +156,7 @@ _get_root() {
i
=
$(
_math
$i
+ 1
)
i
=
$(
_math
$i
+ 1
)
done
done
_debug
"
$domain
not found"
_debug
"
$domain
not found"
return
1
return
1
}
}
...
...
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