[CONC-423] GnuTLS TLSv1.3 connection fails with error Created: 2019-06-25  Updated: 2019-12-04  Resolved: 2019-06-26

Status: Closed
Project: MariaDB Connector/C
Component/s: None
Affects Version/s: None
Fix Version/s: 3.1.3

Type: Task Priority: Major
Reporter: Georg Richter Assignee: Georg Richter
Resolution: Fixed Votes: 0
Labels: None


 Description   

When connecting to MariaDB Server running with OpenSSL 1.1.1 TLSv1.3 connection will fail with error

Lost connection to MySQL server at 'reading authorization packet', system error: 11

The TLS handshake itself succeeds but further reads will fail:

Solution: check the return code of gnutls_record_recv/send and repeat if return code was GNUTLS_E_AGAIN or GNUTLS_E_INTERRUPT.



 Comments   
Comment by Georg Richter [ 2019-06-26 ]

commit c6b344d730885051fdaf347f0d33c54ec22c415c (origin/3.0, 3.0)
Author: Georg Richter <georg@mariadb.com>
Date: Wed Jun 26 09:13:00 2019 +0200

Fix for CONC-423: GnuTLS fails with "error reading authentication packet" with a TLSv1.3 connection

We now check the return code of gnutls_record_send() and gnutls_record_recv().
If GNUTLS_E_AGAIN or GNUTLS_E_INTERRUPTED was returned we will loop and read/write
again until a timeout occurs or buffer was read or written.

Generated at Thu Feb 08 03:05:13 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.