Your message dated Sat, 29 Apr 2023 10:54:14 +0100
with message-id
<502b8fb37ece620c9723446611a9287974ba5a0c.ca...@adam-barratt.org.uk>
and subject line Closing p-u requests for fixes included in 11.7
has caused the Debian Bug report #1025925,
regarding bullseye-pu: package python-acme/1.12.0-2
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
1025925: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1025925
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
Tags: bullseye
User: [email protected]
Usertags: pu
X-Debbugs-Cc: [email protected], [email protected]
Control: affects -1 + src:python-acme
Hello SRMs!
A bug, #1025891, was recently reported about the certbot package failing to
produce certificates when run against certain strictly-RFC-complying instances
of the ACME API. A fix is present upstream in later versions, however, stable is
still affected.
This is a simple backport, changing only the version number (and its associated
test), taken from upstream.
I have tested the updated version of certbot against the Let's Encrypt test
instances directly, and through the apache and nginx plugins. All were
successful. Note: the Let's Encrypt API is not strictly-RFC-complying in this
regard, so this proves only that the package is not broken further. However,
considering the simplicity of the patch, I'm not concerned about testing against
a stricter endpoint.
A source debdiff is attached. I await your thumbs-up before uploading.
Sincerely,
--
Harlan Lieberman-Berg
~hlieberman
diff -Nru python-acme-1.12.0/debian/changelog
python-acme-1.12.0/debian/changelog
--- python-acme-1.12.0/debian/changelog 2021-02-02 16:37:28.000000000 -0500
+++ python-acme-1.12.0/debian/changelog 2022-12-11 16:44:00.000000000 -0500
@@ -1,3 +1,10 @@
+python-acme (1.12.0-2+deb11u1) bullseye; urgency=medium
+
+ * Fix CSR version to prevent problems with strictly RFC-complying
+ implementations of the ACME API (Closes: #1025891)
+
+ -- Harlan Lieberman-Berg <[email protected]> Sun, 11 Dec 2022 16:44:00
-0500
+
python-acme (1.12.0-2) unstable; urgency=medium
* Commit missed changes to control file.
diff -Nru python-acme-1.12.0/debian/control python-acme-1.12.0/debian/control
--- python-acme-1.12.0/debian/control 2021-02-02 16:37:28.000000000 -0500
+++ python-acme-1.12.0/debian/control 2022-12-11 16:26:05.000000000 -0500
@@ -7,7 +7,6 @@
Build-Depends: debhelper-compat (= 13),
dh-python,
python3,
- python3-chardet,
python3-cryptography (>= 2.1.4),
python3-docutils,
python3-josepy,
@@ -18,6 +17,7 @@
python3-requests-toolbelt,
python3-rfc3339,
python3-setuptools (>= 11.3),
+ python3-six (>= 1.9),
python3-sphinx (>= 1.3.1-1~),
python3-sphinx-rtd-theme,
python3-tz
diff -Nru python-acme-1.12.0/debian/patches/fix-csr-version.patch
python-acme-1.12.0/debian/patches/fix-csr-version.patch
--- python-acme-1.12.0/debian/patches/fix-csr-version.patch 1969-12-31
19:00:00.000000000 -0500
+++ python-acme-1.12.0/debian/patches/fix-csr-version.patch 2022-12-11
16:42:50.000000000 -0500
@@ -0,0 +1,40 @@
+Description: Fix incorrect CSR version
+ Certain strict implementations of the ACME API deny all version numbers
except
+ that defined in the RFC (version 0). To accommodate, unilaterally set it to
0.
+Author: Amir Omidi
+Origin: https://github.com/certbot/certbot/pull/9334/
+Bug-Debian: https://bugs.debian.org/1025891
+Acked-By: Harlan Lieberman-Berg <[email protected]>
+Index: python-acme/acme/crypto_util.py
+===================================================================
+--- python-acme.orig/acme/crypto_util.py
++++ python-acme/acme/crypto_util.py
+@@ -213,7 +213,8 @@ def make_csr(private_key_pem, domains, m
+ value=b"DER:30:03:02:01:05"))
+ csr.add_extensions(extensions)
+ csr.set_pubkey(private_key)
+- csr.set_version(2)
++ # RFC 2986 Section 4.1 only defines version 0
++ csr.set_version(0)
+ csr.sign(private_key, 'sha256')
+ return crypto.dump_certificate_request(
+ crypto.FILETYPE_PEM, csr)
+Index: python-acme/tests/crypto_util_test.py
+===================================================================
+--- python-acme.orig/tests/crypto_util_test.py
++++ python-acme/tests/crypto_util_test.py
+@@ -244,6 +244,14 @@ class MakeCSRTest(unittest.TestCase):
+ self.assertEqual(len(must_staple_exts), 1,
+ "Expected exactly one Must Staple extension")
+
++ def test_make_csr_correct_version(self):
++ csr_pem = self._call_with_key(["a.example"])
++ csr = OpenSSL.crypto.load_certificate_request(
++ OpenSSL.crypto.FILETYPE_PEM, csr_pem)
++
++ self.assertEqual(csr.get_version(), 0,
++ "Expected CSR version to be v1 (encoded as 0), per
RFC 2986, section 4")
++
+
+ class DumpPyopensslChainTest(unittest.TestCase):
+ """Test for dump_pyopenssl_chain."""
diff -Nru python-acme-1.12.0/debian/patches/series
python-acme-1.12.0/debian/patches/series
--- python-acme-1.12.0/debian/patches/series 2021-01-10 14:56:16.000000000
-0500
+++ python-acme-1.12.0/debian/patches/series 2022-12-11 16:38:15.000000000
-0500
@@ -1 +1,2 @@
disable-tls-alpn-test.patch
+fix-csr-version.patch
--- End Message ---
--- Begin Message ---
Package: release.debian.org
Version: 11.7
Hi,
Each of the updates referred to in these requests was included in this
morning's 11.7 point release.
Regards,
Adam
--- End Message ---