From f81260ba711fc19ef55a632da40bfbf24ad6d6de Mon Sep 17 00:00:00 2001 From: Sven Peter Date: Sun, 29 Nov 2020 19:54:34 +0100 Subject: [PATCH] INWX: enable multi txt support (#981) * INWX: enable MultiTXT support * run go generate to update docs --- docs/_includes/matrix.html | 8 ++++---- go.mod | 3 +-- go.sum | 4 ++++ providers/inwx/inwxProvider.go | 8 +++++--- 4 files changed, 14 insertions(+), 9 deletions(-) diff --git a/docs/_includes/matrix.html b/docs/_includes/matrix.html index 0dbc07c41..a9761533f 100644 --- a/docs/_includes/matrix.html +++ b/docs/_includes/matrix.html @@ -905,15 +905,15 @@ - - + + - - + + diff --git a/go.mod b/go.mod index 4d461e4ee..fd54c9ebe 100644 --- a/go.mod +++ b/go.mod @@ -56,9 +56,8 @@ require ( golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897 // indirect golang.org/x/net v0.0.0-20201110031124-69a78807bb2b golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58 - golang.org/x/sync v0.0.0-20201008141435-b3e1573b7520 // indirect golang.org/x/sys v0.0.0-20201018121011-98379d014ca7 // indirect - golang.org/x/tools v0.0.0-20201017001424-6003fad69a88 // indirect + golang.org/x/tools v0.0.0-20201125231158-b5590deeca9b // indirect google.golang.org/api v0.33.0 google.golang.org/appengine v1.6.7 // indirect google.golang.org/genproto v0.0.0-20201015140912-32ed001d685c // indirect diff --git a/go.sum b/go.sum index 156434711..e368f1a76 100644 --- a/go.sum +++ b/go.sum @@ -446,6 +446,7 @@ golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81R golang.org/x/net v0.0.0-20200822124328-c89045814202 h1:VvcQYSHwXgi7W+TpUR6A9g6Up98WAHf3f/ulnJ62IyA= golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= golang.org/x/net v0.0.0-20201010224723-4f7140c49acb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b h1:uwuIcX0g4Yl1NC5XAz37xsr2lTtcqevgzYNVt49waME= golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= @@ -473,6 +474,7 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208 h1:qwRHBd0NqMbJxfbotnDhm2By golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201008141435-b3e1573b7520 h1:Bx6FllMpG4NWDOfhMBz1VR2QYNp/SAOHPIAsaVmxfPo= golang.org/x/sync v0.0.0-20201008141435-b3e1573b7520/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190129075346-302c3dd5f1cc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -571,6 +573,8 @@ golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82u golang.org/x/tools v0.0.0-20201013201025-64a9e34f3752/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.0.0-20201017001424-6003fad69a88 h1:ZB1XYzdDo7c/O48jzjMkvIjnC120Z9/CwgDWhePjQdQ= golang.org/x/tools v0.0.0-20201017001424-6003fad69a88/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= +golang.org/x/tools v0.0.0-20201125231158-b5590deeca9b h1:Lq5JUTFhiybGVf28jB6QRpqd13/JPOaCnET17PVzYJE= +golang.org/x/tools v0.0.0-20201125231158-b5590deeca9b/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898 h1:/atklqdjdhuosWIl6AIbOeHJjicWYPqR9bpxqxYG2pA= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= diff --git a/providers/inwx/inwxProvider.go b/providers/inwx/inwxProvider.go index b837892a3..d8a69d8f5 100644 --- a/providers/inwx/inwxProvider.go +++ b/providers/inwx/inwxProvider.go @@ -49,7 +49,7 @@ var features = providers.DocumentationNotes{ providers.CanUseSRV: providers.Can("SRV records with empty targets are not supported."), providers.CanUseSSHFP: providers.Can(), providers.CanUseTLSA: providers.Can(), - providers.CanUseTXTMulti: providers.Cannot("INWX only supports a single entry for TXT records"), + providers.CanUseTXTMulti: providers.Can(), providers.CanAutoDNSSEC: providers.Unimplemented("Supported by INWX but not implemented yet."), providers.DocOfficiallySupported: providers.Cannot(), providers.DocDualHost: providers.Can(), @@ -211,8 +211,10 @@ func (api *inwxAPI) deleteRecord(RecordID int) error { func checkRecords(records models.Records) error { for _, r := range records { if r.Type == "TXT" { - if strings.ContainsAny(r.Target, "`") { - return fmt.Errorf("INWX TXT records do not support single-quotes in their target") + for _, target := range r.TxtStrings { + if strings.ContainsAny(target, "`") { + return fmt.Errorf("INWX TXT records do not support single-quotes in their target") + } } } }