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):
 

Reply via email to