mirror of
https://github.com/StackExchange/dnscontrol.git
synced 2024-05-11 05:55:12 +00:00
Attempt to add NAPTR support.
This commit is contained in:
@ -254,6 +254,16 @@ func ptr(name, target string) *rec {
|
||||
return makeRec(name, target, "PTR")
|
||||
}
|
||||
|
||||
func naptr(name string, order uint16, preference uint16, flags string, service string, regexp string, target string) *rec {
|
||||
r := makeRec(name, target, "NAPTR")
|
||||
r.NaptrOrder = order
|
||||
r.NaptrPreference = preference
|
||||
r.NaptrFlags = flags
|
||||
r.NaptrService = service
|
||||
r.NaptrRegexp = regexp
|
||||
return r
|
||||
}
|
||||
|
||||
func srv(name string, priority, weight, port uint16, target string) *rec {
|
||||
r := makeRec(name, target, "SRV")
|
||||
r.SrvPriority = priority
|
||||
@ -417,6 +427,23 @@ func makeTests(t *testing.T) []*TestCase {
|
||||
)
|
||||
}
|
||||
|
||||
// NAPTR
|
||||
if !providers.ProviderHasCabability(*providerToRun, providers.CanUseNAPTR) {
|
||||
t.Log("Skipping NAPTR Tests because provider does not support them")
|
||||
} else {
|
||||
tests = append(tests, tc("Empty"),
|
||||
tc("NAPTR record", naptr("example", 100, 10, "U", "E2U+sip", "!^.*$!sip:customer-service@example.com!", "foo.com")),
|
||||
tc("NAPTR second record", naptr("example", 102, 10, "U", "E2U+email", "!^.*$!mailto:information@example.com!", "foo.com.")),
|
||||
tc("NAPTR delete record", naptr("example", 102, 10, "U", "E2U+email", "!^.*$!mailto:information@example.com!", "foo.com.")),
|
||||
tc("NAPTR change target", naptr("example", 102, 10, "U", "E2U+email", "!^.*$!mailto:information@example.com!", "foo2.com.")),
|
||||
tc("NAPTR change order", naptr("example", 103, 10, "U", "E2U+email", "!^.*$!mailto:information@example.com!", "foo2.com.")),
|
||||
tc("NAPTR change preference", naptr("example", 103, 20, "U", "E2U+email", "!^.*$!mailto:information@example.com!", "foo2.com.")),
|
||||
tc("NAPTR change flags", naptr("example", 103, 20, "A", "E2U+email", "!^.*$!mailto:information@example.com!", "foo2.com.")),
|
||||
tc("NAPTR change service", naptr("example", 103, 20, "A", "E2U+sip", "!^.*$!mailto:information@example.com!", "foo2.com.")),
|
||||
tc("NAPTR change regexp", naptr("example", 103, 20, "A", "E2U+sip", "!^.*$!sip:customer-service@example.com!", "foo2.com.")),
|
||||
)
|
||||
}
|
||||
|
||||
// SRV
|
||||
if !providers.ProviderHasCabability(*providerToRun, providers.CanUseSRV) {
|
||||
t.Log("Skipping SRV Tests because provider does not support them")
|
||||
@ -433,7 +460,7 @@ func makeTests(t *testing.T) []*TestCase {
|
||||
)
|
||||
}
|
||||
|
||||
// SSHFP
|
||||
// SSHFP
|
||||
if !providers.ProviderHasCabability(*providerToRun, providers.CanUseSSHFP) {
|
||||
t.Log("Skipping SSHFP Tests because provider does not support them")
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user