pgsql: Cope with a deficiency in OpenSSL 3.x's error reporting. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Cope with a deficiency in OpenSSL 3.x's error reporting.
Date
Msg-id E1riOFp-002dPY-3K@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Cope with a deficiency in OpenSSL 3.x's error reporting.

In OpenSSL 3.0.0 and later, ERR_reason_error_string randomly refuses
to provide a string for error codes representing system errno values
(e.g., "No such file or directory").  There is a poorly-documented way
to extract the errno from the SSL error code in this case, so do that
and apply strerror, rather than falling back to reporting the error
code's numeric value as we were previously doing.

Problem reported by David Zhang, although this is not his proposed
patch; it's instead based on a suggestion from Heikki Linnakangas.
Back-patch to all supported branches, since any of them are likely
to be used with recent OpenSSL.

Discussion: https://postgr.es/m/b6fb018b-f05c-4afd-abd3-318c649faf18@highgo.ca

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/6a2c80e955a83e8683f1f4d1ef583250bc4b9631

Modified Files
--------------
src/backend/libpq/be-secure-openssl.c    | 19 ++++++++++++++++---
src/interfaces/libpq/fe-secure-openssl.c | 23 ++++++++++++++++++++---
2 files changed, 36 insertions(+), 6 deletions(-)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: Add support for DEFAULT in ALTER TABLE .. SET ACCESS METHOD
Next
From: John Naylor
Date:
Subject: Re: pgsql: Add template for adaptive radix tree