libpq: Allow developers to reimplement libpq-oauth

Jacob Champion <jchampion@postgresql.org>

Commit: 09532b4040ed4c313351366166f55e810f152d6a
Author: Jacob Champion <jchampion@postgresql.org>
Date: 2026-03-31T18:47:26Z
libpq: Allow developers to reimplement libpq-oauth

For PG19, since we won't have the ability to officially switch out flow
plugins, relax the flow-loading code to not require the internal init
function. Modules that don't have one will be treated as custom user
flows in error messages.

This will let bleeding-edge developers more easily test out the API and
provide feedback for PG20, by telling the runtime linker to find a
different libpq-oauth. It remains undocumented for end users.

Reviewed-by: Zsolt Parragi <zsolt.parragi@percona.com>
Reviewed-by: Chao Li <li.evan.chao@gmail.com>
Discussion: https://postgr.es/m/CAOYmi%2BmrGg%2Bn_X2MOLgeWcj3v_M00gR8uz_D7mM8z%3DdX1JYVbg%40mail.gmail.com

Files

PathChange+/−
src/interfaces/libpq/fe-auth-oauth.c modified +41 −30
src/interfaces/libpq/fe-auth-oauth.h modified +1 −1

Discussion