pgsql: Fix postmaster crash on whitespace-only oauth_validator_librarie

From: Daniel Gustafsson <dgustafsson(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix postmaster crash on whitespace-only oauth_validator_librarie
Date: 2026-09-17 12:55:24
Message-ID: E1x7Be8-0000000074Y-2Wrs@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix postmaster crash on whitespace-only oauth_validator_libraries

The check_oauth_validator check for an empty validator list didn't test
for a string with only whitespace, which would cause the postmaster to
crash. Instead of testing for the empty string cases, pass the config
value to SplitDirectoriesString unconditionally. If an empty list is
returned then the input string was empty. Since pstrdup cannot handle
NULL, assert that the string ie set. While users cannot set the string
to NULL, it is initialized to NULL so guard against programmer error.

Check the parsed list instead. Assert that the GUC string is non-NULL
before pstrdup(); users cannot set it to NULL, but the C variable is
initialized that way.

This also adds a TAP test that reloads a whitespace-only setting after
pg_hba_file_rules and waits until the existing backend sees the restored
GUC.

Author: Grigorev Jurij <ju(dot)grigorev(at)ftdata(dot)ru>
Reviewed-by: Jacob Champion <jacob(dot)champion(at)enterprisedb(dot)com>
Reviewed-by: Daniel Gustafsson <daniel(at)yesql(dot)se>
Discussion: https://postgr.es/m/04fa84f6ebbe400f940e179ebe1070e9@localhost.localdomain
Backpatch-through: 18

Branch
------
REL_18_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/99c3f5e2037bc1192004f3893fd0decd97a7f165

Modified Files
--------------
src/backend/libpq/auth-oauth.c | 27 ++++++++++++------------
src/test/modules/oauth_validator/t/001_server.pl | 18 ++++++++++++++++
2 files changed, 32 insertions(+), 13 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Daniel Gustafsson 2026-09-17 12:58:24 pgsql: Test output fixes for oauth validator test suite
Previous Message Daniel Gustafsson 2026-09-17 12:55:18 pgsql: Fix postmaster crash on whitespace-only oauth_validator_librarie