Hi Spyros,
Thanks for working on the SRU too!
In [Impact] you wrote:
"Users of the m2crypto library on i386 face potential breakage since the
timeout code in SSL doesn't account for t64 support."
I guess you mean s/i386/armhf/ because
1) i386 has no t64, aligned with what you wrote:
"excludes i386 and i686 from this new behavior since support for t64 hasn't
been added for those architectures"
2) the package doesn't build on i386
3) the patch doesn't change behavior on i386, only other archs
(I double checked with Steve L., the bug reporter, and he agreed.)
And in [Test Plan] you mentioned:
"running the autopkgtest suite both in an armhf and an i386 host"
But I'm not sure how autopkgtests on i386 in Ubuntu Noble are possible,
since there's no package built for this arch, and our autopkgtests fail
early to run on i386 for this package (never passed on dep resolutions).
So, in this case, I think it's fine to consider only the armhf tests
to be fixed, and other archs not to hit regressions.
So, I'll adjust those 2 points in the bug description.
** Description changed:
[ Impact ]
- * Users of the m2crypto library on i386 face potential breakage since
+ * Users of the m2crypto library on armhf face potential breakage since
the timeout code in SSL doesn't account for t64 support.
- * This was causing autopkgtests failures and is currently regressed in
+ * This was causing autopkgtests failures and is currently regressed in
baseline.
- * The proposed patch uses "long long" instead of "long" when packing
+ * The proposed patch uses "long long" instead of "long" when packing
time values that are used as arguments to library calls that use time_t
structures but excludes i386 and i686 from this new behavior since
support for t64 hasn't been added for those architectures.
[ Test Plan ]
- * Test by running the test suite (or the autopkgtests) on an armhf
+ * Test by running the test suite (or the autopkgtests) on an armhf
system will cause tests to fail.
- * the failed test can be run by issuing `python3 -munittest -v
+ * the failed test can be run by issuing `python3 -munittest -v
tests.test_ssl.MiscSSLClientTestCase` or by running the autopkgtests.
- * after applying the patch, running the autopkgtest suite both in an
- armhf and an i386 host.
+ * after applying the patch, running the autopkgtest suite both in an
+ armhf (and an i386 host, if possible).
[ Where problems could occur ]
- * The package features an example SSL connection client which uses the
+ * The package features an example SSL connection client which uses the
affected code. In case of further breakage caused by the patch, users of
that SSL client would be affected.
[ Other Info ]
- * This has been fixed in Oracular and in Debian.
+ * This has been fixed in Oracular and in Debian.
[Original report]
m2crypto 0.40.1-2build1 fails tests on armhf:
423s =================================== FAILURES
==============================
=====
423s ______________ MiscSSLClientTestCase.test_server_simple_timeouts
__________
_____
423s
423s self = <tests.test_ssl.MiscSSLClientTestCase
testMethod=test_server_simple_
timeouts>
423s
423s def test_server_simple_timeouts(self):
423s pid = self.start_server(self.args)
423s # Arbitrary value:
423s test_timeout_sec = 909
423s # Linux rounds microseconds in the timeouts up to the HZ kernel
par
ameter.
423s # Windows rounds down to milliseconds.
423s # To avoid checking for rounded values, pick interval long enough
423s # so that it is a whole number of ms and HZ for any reasonable
HZ v
alue.
423s test_timeout_microsec = 500000
423s
423s try:
423s with self.assertRaises(ValueError):
423s SSL.Context('tlsv5')
423s ctx = SSL.Context()
423s s = SSL.Connection(ctx)
423s
423s r = s.get_socket_read_timeout()
423s w = s.get_socket_write_timeout()
423s self.assertEqual(r.sec, 0, r.sec)
423s self.assertEqual(r.microsec, 0, r.microsec)
423s self.assertEqual(w.sec, 0, w.sec)
423s self.assertEqual(w.microsec, 0, w.microsec)
423s
423s > s.set_socket_read_timeout(SSL.timeout())
"timeout" means time_t regression.
** Description changed:
[ Impact ]
* Users of the m2crypto library on armhf face potential breakage since
the timeout code in SSL doesn't account for t64 support.
* This was causing autopkgtests failures and is currently regressed in
baseline.
* The proposed patch uses "long long" instead of "long" when packing
time values that are used as arguments to library calls that use time_t
structures but excludes i386 and i686 from this new behavior since
support for t64 hasn't been added for those architectures.
[ Test Plan ]
* Test by running the test suite (or the autopkgtests) on an armhf
system will cause tests to fail.
* the failed test can be run by issuing `python3 -munittest -v
tests.test_ssl.MiscSSLClientTestCase` or by running the autopkgtests.
* after applying the patch, running the autopkgtest suite both in an
- armhf (and an i386 host, if possible).
+ armhf host (and an i386 host, if possible).
[ Where problems could occur ]
* The package features an example SSL connection client which uses the
affected code. In case of further breakage caused by the patch, users of
that SSL client would be affected.
[ Other Info ]
* This has been fixed in Oracular and in Debian.
[Original report]
m2crypto 0.40.1-2build1 fails tests on armhf:
423s =================================== FAILURES
==============================
=====
423s ______________ MiscSSLClientTestCase.test_server_simple_timeouts
__________
_____
423s
423s self = <tests.test_ssl.MiscSSLClientTestCase
testMethod=test_server_simple_
timeouts>
423s
423s def test_server_simple_timeouts(self):
423s pid = self.start_server(self.args)
423s # Arbitrary value:
423s test_timeout_sec = 909
423s # Linux rounds microseconds in the timeouts up to the HZ kernel
par
ameter.
423s # Windows rounds down to milliseconds.
423s # To avoid checking for rounded values, pick interval long enough
423s # so that it is a whole number of ms and HZ for any reasonable
HZ v
alue.
423s test_timeout_microsec = 500000
423s
423s try:
423s with self.assertRaises(ValueError):
423s SSL.Context('tlsv5')
423s ctx = SSL.Context()
423s s = SSL.Connection(ctx)
423s
423s r = s.get_socket_read_timeout()
423s w = s.get_socket_write_timeout()
423s self.assertEqual(r.sec, 0, r.sec)
423s self.assertEqual(r.microsec, 0, r.microsec)
423s self.assertEqual(w.sec, 0, w.sec)
423s self.assertEqual(w.microsec, 0, w.microsec)
423s
423s > s.set_socket_read_timeout(SSL.timeout())
"timeout" means time_t regression.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2059156
Title:
proposed-migration for m2crypto 0.40.1-2build1
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/m2crypto/+bug/2059156/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs