Thread: pgsql: Copy and store addrinfo in libpq-owned private memory

pgsql: Copy and store addrinfo in libpq-owned private memory

From
Daniel Gustafsson
Date:
Copy and store addrinfo in libpq-owned private memory

This refactors libpq to copy addrinfos returned by getaddrinfo to
memory owned by libpq such that future improvements can alter for
example the order of entries.

As a nice side effect of this refactor the mechanism for iteration
over addresses in PQconnectPoll is now identical to its iteration
over hosts.

Author: Jelte Fennema <postgres@jeltef.nl>
Reviewed-by: Aleksander Alekseev <aleksander@timescale.com>
Reviewed-by: Michael Banck <mbanck@gmx.net>
Reviewed-by: Andrey Borodin <amborodin86@gmail.com>
Discussion: https://postgr.es/m/PR3PR83MB04768E2FF04818EEB2179949F7A69@PR3PR83MB0476.EURPRD83.prod.outlook.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/44d85ba5a3361dea371d23bd91777ef4c0c4e506

Modified Files
--------------
src/include/libpq/pqcomm.h        |   6 ++
src/interfaces/libpq/fe-connect.c | 112 +++++++++++++++++++++++++++-----------
src/interfaces/libpq/libpq-int.h  |   7 ++-
src/tools/pgindent/typedefs.list  |   1 +
4 files changed, 92 insertions(+), 34 deletions(-)