diff --git a/certbot_dns_transip/dns_transip.py b/certbot_dns_transip/dns_transip.py index 05e4687..e698fc4 100644 --- a/certbot_dns_transip/dns_transip.py +++ b/certbot_dns_transip/dns_transip.py @@ -52,16 +52,17 @@ class Authenticator(dns_common.DNSAuthenticator): ) def _perform(self, domain, validation_name, validation): - dns_entry = self._get_dns_entry(validation_name, validation) - domain = Domain(domain) + dns_entry = self._get_dns_entry(domain, validation_name, validation) self._get_transip_client().add_dns_entries(domain, [dns_entry]) def _cleanup(self, domain, validation_name, validation): - dns_entry = self._get_dns_entry(validation_name, validation) - domain = Domain(domain) + dns_entry = self._get_dns_entry(domain, validation_name, validation) self._get_transip_client().remove_dns_entries(domain, [dns_entry]) - def _get_dns_entry(self, validation_name, validation): + def _get_dns_entry(self, domain, validation_name, validation): + # transip api expects the name record without the domain part at the end + if validation_name.endswith(domain): + validation_name = validation.name[:-len(domain)].strip('.') return DnsEntry(validation_name, self.ttl, 'TXT', validation) def _get_transip_client(self):