On 2020-03-21 23:33:34 [-0400], Sandro Tosi wrote:
> > > The package FTBFS since openssl has been updated to 1.1.1e because the
> > > testsuite fails. The failure is due to commit db943f43a60d ("Detect EOF
> > > while reading in libssl") [0] in openssl. There an issue ticket [1]
> > > which introduced the changed behaviour.
> > >
> > > [0] https://github.com/openssl/openssl/pull/10882
> > > [1] https://github.com/openssl/openssl/issues/10880
> >
> > what should i do about it on the m2crypto side?
>
> is this the failure you're referring to?
Yes.
> =================================== FAILURES
> ===================================
> ___________________ MiscSSLClientTestCase.test_makefile_err
> ____________________
>
> self = <tests.test_ssl.MiscSSLClientTestCase testMethod=test_makefile_err>
>
> def test_makefile_err(self):
> pid = self.start_server(self.args)
> try:
> ctx = SSL.Context()
> s = SSL.Connection(ctx)
> try:
> s.connect(self.srv_addr)
> except SSL.SSLError as e:
> self.fail(e)
> f = s.makefile()
> data = self.http_get(s)
> s.close()
> del f
> del s
> err_code = Err.peek_error_code()
> self.assertEqual(err_code, 0,
> > 'Unexpected error: %s' % err_code)
> E AssertionError: 336154918 != 0 :
> Unexpected error: 336154918
>
> tests/test_ssl.py:858: AssertionError
So the test expects no error. Since the commit mention there is an
error where earlier there was none. From the Changes file:
| *) Properly detect EOF while reading in libssl. Previously if we hit an EOF
| while reading in libssl then we would report an error back to the
| application (SSL_ERROR_SYSCALL) but errno would be 0. We now add
| an error to the stack (which means we instead return SSL_ERROR_SSL) and
| therefore give a hint as to what went wrong.
OpenSSL 1.1.1d with the commit question leads to this behaviour.
Sebastian