Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-certbot-dns-rfc2136 for openSUSE:Factory checked in at 2021-12-21 18:40:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-certbot-dns-rfc2136 (Old) and /work/SRC/openSUSE:Factory/.python-certbot-dns-rfc2136.new.2520 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-certbot-dns-rfc2136" Tue Dec 21 18:40:55 2021 rev:31 rq:941883 version:1.20.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-certbot-dns-rfc2136/python-certbot-dns-rfc2136.changes 2021-08-11 11:49:32.745578447 +0200 +++ /work/SRC/openSUSE:Factory/.python-certbot-dns-rfc2136.new.2520/python-certbot-dns-rfc2136.changes 2021-12-21 18:41:36.681926606 +0100 @@ -1,0 +2,7 @@ +Mon Dec 13 18:20:22 UTC 2021 - Ferdinand Thiessen <r...@fthiessen.de> + +- Update to version 1.20.0 + * The certbot-dns-rfc2136 plugin now ensures the use of an + IP address as the target server. + +------------------------------------------------------------------- Old: ---- certbot-dns-rfc2136-1.18.0.tar.gz New: ---- certbot-dns-rfc2136-1.20.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-certbot-dns-rfc2136.spec ++++++ --- /var/tmp/diff_new_pack.EEaNjc/_old 2021-12-21 18:41:37.125927004 +0100 +++ /var/tmp/diff_new_pack.EEaNjc/_new 2021-12-21 18:41:37.141927019 +0100 @@ -19,14 +19,14 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-certbot-dns-rfc2136 -Version: 1.18.0 +Version: 1.20.0 Release: 0 Summary: RFC 2136 DNS Authenticator plugin for Certbot License: Apache-2.0 URL: https://github.com/certbot/certbot Source: https://files.pythonhosted.org/packages/source/c/certbot-dns-rfc2136/certbot-dns-rfc2136-%{version}.tar.gz BuildRequires: %{python_module certbot >= %{version}} -BuildRequires: %{python_module dnspython} +BuildRequires: %{python_module dnspython >= 1.15.0} BuildRequires: %{python_module mock} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} @@ -34,8 +34,7 @@ BuildRequires: python-rpm-macros Requires: python-acme >= %{version} Requires: python-certbot >= %{version} -Requires: python-dnspython -Requires: python-zope.interface +Requires: python-dnspython >= 1.15.0 BuildArch: noarch %python_subpackages ++++++ certbot-dns-rfc2136-1.18.0.tar.gz -> certbot-dns-rfc2136-1.20.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/PKG-INFO new/certbot-dns-rfc2136-1.20.0/PKG-INFO --- old/certbot-dns-rfc2136-1.18.0/PKG-INFO 2021-08-03 22:21:07.018153200 +0200 +++ new/certbot-dns-rfc2136-1.20.0/PKG-INFO 2021-10-05 15:53:30.251560200 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: certbot-dns-rfc2136 -Version: 1.18.0 +Version: 1.20.0 Summary: RFC 2136 DNS Authenticator plugin for Certbot Home-page: https://github.com/certbot/certbot Author: Certbot Project diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136/__init__.py new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136/__init__.py --- old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136/__init__.py 2021-08-03 22:12:58.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136/__init__.py 2021-10-05 15:52:55.000000000 +0200 @@ -33,7 +33,7 @@ :name: credentials.ini :caption: Example credentials file: - # Target DNS server + # Target DNS server (IPv4 or IPv6 address, not a hostname) dns_rfc2136_server = 192.0.2.1 # Target DNS port dns_rfc2136_port = 53 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136/_internal/dns_rfc2136.py new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136/_internal/dns_rfc2136.py --- old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136/_internal/dns_rfc2136.py 2021-08-03 22:12:58.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136/_internal/dns_rfc2136.py 2021-10-05 15:52:55.000000000 +0200 @@ -15,6 +15,7 @@ from certbot import errors from certbot.plugins import dns_common from certbot.plugins.dns_common import CredentialsConfiguration +from certbot.util import is_ipaddress logger = logging.getLogger(__name__) @@ -54,7 +55,11 @@ return 'This plugin configures a DNS TXT record to respond to a dns-01 challenge using ' + \ 'RFC 2136 Dynamic Updates.' - def _validate_algorithm(self, credentials): + def _validate_credentials(self, credentials): + server = credentials.conf('server') + if not is_ipaddress(server): + raise errors.PluginError("The configured target DNS server ({0}) is not a valid IPv4 " + "or IPv6 address. A hostname is not allowed.".format(server)) algorithm = credentials.conf('algorithm') if algorithm: if not self.ALGORITHMS.get(algorithm.upper()): @@ -69,7 +74,7 @@ 'secret': 'TSIG key secret', 'server': 'The target DNS server' }, - self._validate_algorithm + self._validate_credentials ) def _perform(self, _domain, validation_name, validation): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136.egg-info/PKG-INFO new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136.egg-info/PKG-INFO --- old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136.egg-info/PKG-INFO 2021-08-03 22:21:06.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136.egg-info/PKG-INFO 2021-10-05 15:53:30.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: certbot-dns-rfc2136 -Version: 1.18.0 +Version: 1.20.0 Summary: RFC 2136 DNS Authenticator plugin for Certbot Home-page: https://github.com/certbot/certbot Author: Certbot Project diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136.egg-info/requires.txt new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136.egg-info/requires.txt --- old/certbot-dns-rfc2136-1.18.0/certbot_dns_rfc2136.egg-info/requires.txt 2021-08-03 22:21:06.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/certbot_dns_rfc2136.egg-info/requires.txt 2021-10-05 15:53:30.000000000 +0200 @@ -1,8 +1,7 @@ -dnspython +dnspython>=1.15.0 setuptools>=39.0.1 -zope.interface -acme>=1.18.0 -certbot>=1.18.0 +acme>=1.20.0 +certbot>=1.20.0 [docs] Sphinx>=1.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/setup.py new/certbot-dns-rfc2136-1.20.0/setup.py --- old/certbot-dns-rfc2136-1.18.0/setup.py 2021-08-03 22:12:59.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/setup.py 2021-10-05 15:52:56.000000000 +0200 @@ -4,12 +4,11 @@ from setuptools import find_packages from setuptools import setup -version = '1.18.0' +version = '1.20.0' install_requires = [ - 'dnspython', + 'dnspython>=1.15.0', 'setuptools>=39.0.1', - 'zope.interface', ] if not os.environ.get('SNAP_BUILD'): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/certbot-dns-rfc2136-1.18.0/tests/dns_rfc2136_test.py new/certbot-dns-rfc2136-1.20.0/tests/dns_rfc2136_test.py --- old/certbot-dns-rfc2136-1.18.0/tests/dns_rfc2136_test.py 2021-08-03 22:12:58.000000000 +0200 +++ new/certbot-dns-rfc2136-1.20.0/tests/dns_rfc2136_test.py 2021-10-05 15:52:55.000000000 +0200 @@ -74,6 +74,27 @@ self.auth.perform([self.achall]) + def test_invalid_server_raises(self): + config = VALID_CONFIG.copy() + config["rfc2136_server"] = "example.com" + dns_test_common.write(config, self.config.rfc2136_credentials) + + self.assertRaises(errors.PluginError, + self.auth.perform, + [self.achall]) + + @test_util.patch_display_util() + def test_valid_server_passes(self, unused_mock_get_utility): + config = VALID_CONFIG.copy() + dns_test_common.write(config, self.config.rfc2136_credentials) + + self.auth.perform([self.achall]) + + config["rfc2136_server"] = "2001:db8:3333:4444:cccc:dddd:eeee:ffff" + dns_test_common.write(config, self.config.rfc2136_credentials) + + self.auth.perform([self.achall]) + class RFC2136ClientTest(unittest.TestCase):