summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--overlays/dnscontrol/default.nix5
-rw-r--r--overlays/dnscontrol/powerdns-record-types.patch29
2 files changed, 34 insertions, 0 deletions
diff --git a/overlays/dnscontrol/default.nix b/overlays/dnscontrol/default.nix
new file mode 100644
index 00000000..ea4cceb4
--- /dev/null
+++ b/overlays/dnscontrol/default.nix
@@ -0,0 +1,5 @@
+self: super: {
+  dnscontrol = super.dnscontrol.overrideAttrs (old: {
+    patches = [ ./powerdns-record-types.patch ];
+  });
+}
diff --git a/overlays/dnscontrol/powerdns-record-types.patch b/overlays/dnscontrol/powerdns-record-types.patch
new file mode 100644
index 00000000..0f831dc5
--- /dev/null
+++ b/overlays/dnscontrol/powerdns-record-types.patch
@@ -0,0 +1,29 @@
+diff --git a/documentation/providers.md b/documentation/providers.md
+index b1d6618d..351b2558 100644
+--- a/documentation/providers.md
++++ b/documentation/providers.md
+@@ -57,7 +57,7 @@ If a feature is definitively not supported for whatever reason, we would also li
+ | [`OVH`](provider/ovh.md) | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ | ❔ | ❔ | ❔ | ❔ | ❌ | ❔ | ✅ | ✅ | ❔ | ✅ | ❔ | ❔ | ❔ | ❔ | ✅ | ❌ | ✅ |
+ | [`PACKETFRAME`](provider/packetframe.md) | ❌ | ✅ | ❌ | ❌ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ✅ | ❔ | ✅ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❌ | ❌ | ❔ |
+ | [`PORKBUN`](provider/porkbun.md) | ❌ | ✅ | ✅ | ❌ | ✅ | ❔ | ❌ | ❔ | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ | ❔ | ✅ | ❌ | ❔ | ❔ | ❔ | ❌ | ❌ | ✅ |
+-| [`POWERDNS`](provider/powerdns.md) | ❌ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ❔ | ❔ | ✅ | ✅ | ❔ | ✅ | ✅ | ❔ | ✅ | ✅ | ✅ | ❔ | ❔ | ✅ | ✅ | ✅ |
++| [`POWERDNS`](provider/powerdns.md) | ❌ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ | ❔ | ✅ | ✅ | ❔ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❔ | ❔ | ✅ | ✅ | ✅ |
+ | [`REALTIMEREGISTER`](provider/realtimeregister.md) | ❌ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ❔ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ❔ | ✅ | ❌ | ❌ | ❔ | ❔ | ❌ | ✅ | ✅ |
+ | [`ROUTE53`](provider/route53.md) | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❔ | ❔ | ❌ | ❔ | ✅ | ❔ | ✅ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ❔ | ✅ | ✅ | ✅ |
+ | [`RWTH`](provider/rwth.md) | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ | ❔ | ❔ | ❌ | ❌ | ✅ | ❔ | ✅ | ✅ | ❔ | ❌ | ❔ | ❔ | ❔ | ❔ | ❌ | ❌ | ✅ |
+diff --git a/providers/powerdns/powerdnsProvider.go b/providers/powerdns/powerdnsProvider.go
+index 0f386d90..0d1f96bc 100644
+--- a/providers/powerdns/powerdnsProvider.go
++++ b/providers/powerdns/powerdnsProvider.go
+@@ -20,8 +20,11 @@ var features = providers.DocumentationNotes{
+ 	providers.CanUseAlias:            providers.Can("Needs to be enabled in PowerDNS first", "https://doc.powerdns.com/authoritative/guides/alias.html"),
+ 	providers.CanUseCAA:              providers.Can(),
+ 	providers.CanUseDS:               providers.Can(),
++	providers.CanUseDNAME:            providers.Can(),
+ 	providers.CanUseDHCID:            providers.Can(),
+ 	providers.CanUseLOC:              providers.Unimplemented("Normalization within the PowerDNS API seems to be buggy, so disabled", "https://github.com/PowerDNS/pdns/issues/10558"),
++	providers.CanUseHTTPS:            providers.Can(),
++	providers.CanUseSVCB:             providers.Can(),
+ 	providers.CanUseNAPTR:            providers.Can(),
+ 	providers.CanUsePTR:              providers.Can(),
+ 	providers.CanUseSRV:              providers.Can(),