Adjust PQsslAttributeNames() to match PQsslAttribute().
commit4e4f7b9fcc9ad0b023b6e698e978882d022b94c4
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 30 Sep 2022 14:26:47 +0000 (30 10:26 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 30 Sep 2022 14:26:47 +0000 (30 10:26 -0400)
tree95634bd5f8f74221e1780d1a507692bc4d1765a4
parent69298db8e1a5a7afcfeea32daf71e713a109ef93
Adjust PQsslAttributeNames() to match PQsslAttribute().

Currently, PQsslAttributeNames() returns the same list of attribute
names regardless of its conn parameter.  This patch changes it to
have behavior parallel to what 80a05679d installed for PQsslAttribute:
you get OpenSSL's attributes if conn is NULL or is an SSL-encrypted
connection, or an empty list if conn is a non-encrypted connection.
The point of this is to have sensible connection-dependent behavior
in case we ever support multiple SSL libraries.  The behavior for
NULL can be defined as "the attributes for the default SSL library",
parallel to what PQsslAttribute(NULL, "library") does.

Since this is mostly just future-proofing, no back-patch.

Discussion: https://postgr.es/m/17625-fc47c78b7d71b534@postgresql.org
doc/src/sgml/libpq.sgml
src/interfaces/libpq/fe-secure-openssl.c