pgsql: Eliminate fixed token-length limit in hba.c. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Eliminate fixed token-length limit in hba.c.
Date
Msg-id E1qP3XA-001biO-2d@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Eliminate fixed token-length limit in hba.c.

Historically, hba.c limited tokens in the authentication configuration
files (pg_hba.conf and pg_ident.conf) to less than 256 bytes.  We have
seen a few reports of this limit causing problems; notably, for
moderately-complex LDAP configurations.  Let's get rid of the fixed
limit by using a StringInfo instead of a fixed-size buffer.
This actually takes less code than before, since we can get rid of
a nontrivial error recovery stanza.  It's doubtless a hair slower,
but parsing the content of the HBA files should in no way be
performance-critical.

Although this is a pretty straightforward patch, it doesn't seem
worth the risk to back-patch given the small number of complaints
to date.  In released branches, we'll just raise MAX_TOKEN to
ameliorate the problem.

Discussion: https://postgr.es/m/1588937.1690221208@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/38df84c65ea4aa9110cbc797d07225fb0fac44f7

Modified Files
--------------
src/backend/libpq/hba.c | 74 +++++++++++++++++--------------------------------
1 file changed, 26 insertions(+), 48 deletions(-)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: worker_spi: Switch to TAP tests
Next
From: Etsuro Fujita
Date:
Subject: pgsql: Disallow replacing joins with scans in problematic cases.