Commit graph

382 commits

Author SHA1 Message Date
Tom Limoncelli
8ab0df92cc
TRANSIP: Enable privatekey authentication (#1212)
* Add PrivateKey authentication for TransIP

* Remove space before comma

* Re-enable CodeQL for Javascript (#1209)

* Create codeql-config.yml

* Update codeql-analysis.yml

Add config to exclude certain files

* deSEC implement pagination (#1208)

* deSEC: Implement pagination for domain list #1177

* deSEC: add debug logging for pagination

* deSEC: simplify get/post methods by allowing url / api endpoints as target

* deSEC: implement pagination for getRecords function

* deSEC: fix linter warnings

* deSEC: replace domainIndexInitalized variable with checking if the domainIndex == nil

* deSEC: add mutex for domainIndex

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>

Co-authored-by: Vincent Hagen <vinnie@script4web.nl>
Co-authored-by: Jauder Ho <jauderho@users.noreply.github.com>
Co-authored-by: Georg <georg@neuland.tech>
2021-07-21 12:06:29 -04:00
Georg
2832746a47
deSEC implement pagination (#1208)
* deSEC: Implement pagination for domain list #1177

* deSEC: add debug logging for pagination

* deSEC: simplify get/post methods by allowing url / api endpoints as target

* deSEC: implement pagination for getRecords function

* deSEC: fix linter warnings

* deSEC: replace domainIndexInitalized variable with checking if the domainIndex == nil

* deSEC: add mutex for domainIndex

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-07-21 11:44:10 -04:00
Vincent Hagen
0770e64c90
NAMECHEAP: Add get zone functionality (#1207) 2021-07-12 06:49:30 -04:00
Georg
228b57e445
DESEC: Implements support for long / multistring txt records (#1204)
* use /auth/account endpoint for token validation
this implements the token validation using the /auth/account api endpoint as suggested in #1177 instead of fetching the domain list

* deSEC: add support for long txt records #996

* deSEC: add support for a different api error response
relates to #996 where we had insufficient error output due to unknown api error format

* deSEC: remove unused fetchDomainList function

* deSEC: improve error handling

* deSEC: support for long / multistring txt records
the previous commit was broken this is now working (CRUD)

* deSEC: document what desecProvider.domainIndex is used for

* deSEC: handle the rate limiting correctly
we try to use the Retry-After header to determine how long we should sleep until retry

* deSEC: further improvement of rate limit handling
we cut off if the Retry-After header exceeds 3 minutes because this might be the daily limit.

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-07-08 10:06:54 -04:00
Vincent Hagen
506b6cc32f
Transip provider (#1196)
* Add initial transip provider

* Add GetNameservers to transip

* Add first try to correction function.

* Implemented corrections

* Add docs for transip

* Fix TransIP TTL updates

* Fix transip nameserver records

* Update docs/_providers/transip.md

Co-authored-by: Sven Luijten <11269635+svenluijten@users.noreply.github.com>

Co-authored-by: Sven Luijten <11269635+svenluijten@users.noreply.github.com>
2021-07-07 11:43:10 -04:00
nemunaire
80f22df705
MAINTENANCE: Return error instead of panic when converting RR to RC (#1199) 2021-07-06 11:03:29 -04:00
Tom Limoncelli
4b68e14039
Fix codeql errors (#1181) 2021-07-01 09:30:02 -04:00
Tom Limoncelli
654736be29
Improve MSDNS naptr support (#1165)
* MSDNS: Improve reliability of zone dump

* Update tests

* MSDNS: Add initial NAPTR support

* Update

* fix tests

* fix tests

* Fixing integration tests for NAPTR

* Handle bad JSON. Handle NAPTR TTLs
2021-06-24 18:26:21 -04:00
Tom Limoncelli
6d64fc8cac
Fix CodeQL issues (#1173) 2021-06-24 18:15:09 -04:00
Tom Limoncelli
311a6d74ce
MSDNS: Improve reliability of zone dump (#1179)
* MSDNS: Improve reliability of zone dump

* Update tests
2021-06-24 06:05:33 -04:00
Steven Vernick
be1f03fb75
NEW PROVIDER: AkamaiEdgeDNS (#1174)
* downcase TLSA

* Akamai provider

* Akamai provider

* EdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

* AkamaiEdgeDNS provider

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-06-22 10:24:49 -04:00
James Gilberd
fdd6387aad
Show actual URL to use instead of just "sandbox" (#1166)
* Show actual URL to use instead of just "sandbox"

Instead of stating "sandbox", sometimes incorrectly if sandbox is false, just output the actual URL that will be used.

* Replace Println with Printf

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-06-04 13:30:17 -04:00
James Gilberd
c22293e2cf
Correct hard coded DNS Made Easy system nameserver TTL (#1167)
In my (very limited) experience with DNS Made Easy, the system nameserver
TTL is always 86400 and is not able to be altered.

Without this change, if you specify any TTL (other than 300) via
NAMESERVER_TTL() dnscontrol detects a difference and attempts to update
DNS Made Easy with the new value, which fails because the system
nameservers cannot be altered.

With this change in place the same thing will obviously still happen, if
you use NAMESERVER_TTL() with any TTL other than 86400, but that will be
a bit less confusing since the 86400 value appears in the DNS Made Easy
UI at least.
2021-06-02 13:48:19 -04:00
nemunaire
607e0bc7f6
AXFRDDNS: fix advertisement of Get-Zones capability (#1161) 2021-05-24 09:30:49 -04:00
9b0b3bcdd6
ClouDNS does not support changing the NAPTR in the API. (#1159)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-18 16:22:41 -04:00
Peter Thomassen
d567d554cf
DESEC: clarify supported capabilities (#1160)
* DESEC: clarify AutoDNSSEC

* DESEC: improve error messages / hints

* DESEC: add NAPTR support

* DESEC: add to integration test configuration
2021-05-17 15:45:24 -04:00
9949cba00d
CLOUDNS: Support NAPTR, Update setup docs: (#1158)
- Changed the URL of the ClouDNS document from "asia.cloudns.net" to "www.cloudns.net".
- A little addition about TTL.
2021-05-15 09:38:27 -04:00
Costas Drogos
ce9005c7a8
ns1: Implement EnsureDomainExists (#1157)
API support is there, let's use it.

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-14 14:39:09 -04:00
Costas Drogos
9497a988ea
Enable support for CAA in ns1 (#1150)
* Enable support for CAA in ns1

NS1 rest already supports it, enable the capability and handle CAA.

* ns1: sort capabilities

more readable

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-11 16:35:28 -04:00
Costas Drogos
d8146a4a19
NS1: fix ALIAS handling (#1154)
A bug was introduced in a2042c2eda, which stoped ALIAS records
from setting their record type correctly (it was set to nil).

Specifically, case "ALIAS" doesn't fall through to any of the other cases
below, leading ALIAS records to set their type to nil.

To fix that, readd the code that got absorbed by the URLFWD in a2042c2eda.
2021-05-11 15:52:27 -04:00
Jan-Philipp Benecke
cf8e288339
PowerDNS: fix order problems of delete corrections & some cleanup (#1153)
Signed-off-by: Jan-Philipp Benecke <jan-philipp.benecke@jpbe.de>
2021-05-10 10:18:40 -04:00
Shrikant Sharat Kandula
4458595333
NAMECHEAP: Enable ALIAS support (#1149)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-10 08:52:46 -04:00
Tom Limoncelli
24083d3f76
Add integration test for SOA (#1147)
* Add integration test for SOA

* Add docs for SOA record

* MAINT: Rename SoaInfo to SoaDefaults.

gorename -v -from '"github.com/StackExchange/dnscontrol/v3/providers/bind".SoaInfo' -to SoaDefaults
2021-05-07 14:39:26 -04:00
fuero
6b4d740f91
AXFRDDNS provider - adds update/transfer connection modes support (#1143)
* Adds update/transfer connection modes support

* Fixes typo

* gofmt all (#1144)

* go generate (#1145)

* go generate

* gofmt

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-07 08:21:14 -04:00
fuero
4586ad1281
Direct SOA record management (#1115)
* Adds SOA record to JS, zone parsing and record validation

* adds JS parsing test for SOA record

* fix validation & regenerates static resources

* Adds label and target test for SOA record

* Removes serial from SOA JS macro

* Adds generated resources

* reformat with gofmt

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-04 15:47:26 -04:00
Tom Limoncelli
8d139d182f
gofmt all (#1144) 2021-05-04 14:15:31 -04:00
split-and-join
a0bbc66983
MSDNS Fix pssession; Allow alternative credentials (#1140)
* Add options for PSCredentials
* UTF-8 encoded reading
* Fix cred comparison for session based PSRemoting
* Better conditional
* Fix failing test

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-05-02 11:25:06 -04:00
Tom Limoncelli
88c05d9484
Update deps (#1141) 2021-05-02 11:04:42 -04:00
Tom Limoncelli
d5bfee9f1e
Maint: DS record tests should use more realistic data (#1127)
* DS tests should use real hashes
* Increase integration test timeout to 20m
2021-04-17 10:49:06 -04:00
Rashad J
a65b310520
perf(go sdk): introducing semver to HEXONET provider (#1120)
* build(go sdk): fixed outdated dependencies issue

* refactor(.back files): removed .bak files

Co-authored-by: Rashad Jamara <rjamara@hexonet.net>
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-04-13 07:30:32 -04:00
Jan-Philipp Benecke
ed42eca946
Make creds file executable (#1119)
* Make creds file executable
* Implementing code review
* Abstract reading creds file into function
* Implement code review
2021-04-12 16:20:32 -04:00
nemunaire
ce6006cce7
GANDI_V5 & OVH: Implement ZoneLister (#1117)
* GANDI_V5: implement ZoneLister

* OVH: implement ZoneLister
2021-04-03 10:31:25 -04:00
Phil Pennock
059b58ed9e
GANDI_V5: supports DS records already (#1112)
* Simply mark DS as supported, let existing tests handle it.
* Fix trivial typo in diagnostic feedback from model SetTargetDSString()
* The support matrix includes more changes because it was stale.
2021-03-29 10:04:36 -04:00
Rashad J
b0fd111ea2
HEXONET: AuditRecord should permit TXT with long strings (#1107)
Co-authored-by: Rashad Jamara <rjamara@hexonet.net>
2021-03-28 11:38:59 -04:00
4eb6fdface
CLOUDNS: Fetch permitted TTL values from API #1078 (#1102)
The TTL values permitted may be different for each account and for each domain. Therefore we perform this query once per domain.

* Fetch ClouDNS allowed TTL values from API (Fix #1078)
* Add get available TTL values comment
2021-03-22 09:47:29 -04:00
Anton Yurchenko
875bb02c4e
CLOUDNS: ClouDNS NOT allow multiple TXT records with same name (#1098)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-03-21 14:13:41 -04:00
Vojta Drbohlav
517b0458d6
NEW PROVIDER: DNS Made Easy (#1093)
* implement DNS Made Easy provider

* fix sandbox instructions in DNS Made Easy provider docs

* remove unnecessary blank lines and fix golint warnings

* remove unused deleteRecord method from DNSME api

* remove trailing comma in providers.json

* implement check for TXT records with double quotes for DNSME provider

* implement changing apex NS records

* rename DNSME to DNSMADEEASY

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-03-17 23:36:42 -04:00
bcad7c738b
CLOUDNS: Note that TXT records do not permit double-quotes. Fix typo (#1094)
- Add AuditRecords for TXT NoDoubleQuotes
2021-03-14 12:16:53 -04:00
Tom Limoncelli
e69e6f27e4
Linting (#1087)
* fix linting
* rename AuditRecordsor to RecordAuditor
* gandi_v5 to gandiv5
2021-03-08 20:14:30 -05:00
Julius Rickert
c883c1ac68
New provider and new registrar: hosting.de (#1041)
* Add http.net provider

* Rename httpnetProvider

* Add SSHFP capability

* Add paging for records

* Sort documentation notes alphabetically

* Add custom base URL

* Extend documentation for custom base URL

* - renamed to hosting.de
- Fix EnsureDomainExists
- GetNameservers read from NS Records

* Replaced http.net with hosting.de
Contributor Support from hosting.de

* baseURL for hosting.de in documentation
replaced %v with %w for errors
special handling for txt records using .TxtStrings

* removed last references to rc.Target
fixed Trim of last dot

* Re-engineer TXT records for simplicity and better compliance (#1063)

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
Co-authored-by: Oliver Dick <o.dick@hosting.de>
Co-authored-by: Oliver Dick <31733320+membero@users.noreply.github.com>
2021-03-08 19:25:55 -05:00
Tom Limoncelli
1b83561b7f
Make GCLOUD and GANDI_V5 modules consistant (#1085)
Fixes https://github.com/StackExchange/dnscontrol/issues/1060
Fixes https://github.com/StackExchange/dnscontrol/issues/1059
2021-03-07 15:14:46 -05:00
Tom Limoncelli
8dea9edc34
Re-engineer TXT records for simplicity and better compliance (#1063)
TXT records are now handled different.

1. The raw input from dnsconfig.js is passed all the way to the provider. The provider can determine if it can or can't handle such records (auditrecords.go) and processes them internally as such.
2. The CanUseTXTMulti capability is no longer needed.

* DSPs now register a table of functions
* Use audits for txt record variations
* unit tests pass. integration fails.
* fix deepcopy problem
* rename to AuditRecordSupport
* Reduce use of TXTMulti
* Remove CanUseTXTMulti
* fix Test Skip
* fix DO
* fix vultr
* fix NDC
* msdns fixes
* Fix powerdns and cloudflare
* HEDNS: Fix usage of target field to resolve TXT handling (#1067)
* Fix HEXONET

Co-authored-by: Robert Blenkinsopp <robert@blenkinsopp.net>
Co-authored-by: Jakob Ackermann <das7pad@outlook.com>
2021-03-07 13:19:22 -05:00
Tom Limoncelli
56766f93a9
SOFTLAYER: Mark provider as unmaintained (#1080)
* Warn about Softlayer
2021-03-07 11:55:15 -05:00
Tom Limoncelli
21e85e6528
"Target" RecordConfig should not be exported (#1061)
* Unexport RecordConfig.Target
* Fix tests
* HEDNS: Fix usage of target field to resolve TXT handling (#1067)

Co-authored-by: Robert Blenkinsopp <robert@blenkinsopp.net>
2021-03-04 18:58:23 -05:00
Robert Blenkinsopp
3e5e976766
HEDNS: Fix issue with domain listing on completely empty/new accounts (#1075)
* HEDNS: Fix issue with domain listing on completely empty accounts

* HEDNS: Correct typo in provider name

* HEDNS: Correct further usages of HDNS -> HEDNS

Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-03-02 16:08:01 -05:00
Tom Limoncelli
a0051c2b6f
Fix deSEC long TXT bug (#997)
* Fix deSEC long TXT bug
* Update convert.go
2021-03-01 21:05:21 -05:00
Robert Blenkinsopp
46e9715b67
HEDNS: Fix CNAME, NS and PTR record handling of trailing . (#1064)
Co-authored-by: Tom Limoncelli <tlimoncelli@stackoverflow.com>
2021-03-01 07:10:36 -05:00
Jan-Philipp Benecke
06a1cc3d38
POWERDNS: Some minor fixes for ALIAS and TXTMulti and integration testing (#1065)
* POWERDNS: Some minor fixes for ALIAS and integration testing
* POWERDNS: Readd missing error handling
2021-03-01 07:09:49 -05:00
Tom Limoncelli
a2042c2eda
NS1: Support NS1_URLFWD (#1046) 2021-02-10 11:57:15 -05:00
Tom Limoncelli
a83d2c89a8 Revert "draft"
This reverts commit 916c1e6ee1.
2021-02-09 18:51:38 -05:00