Copy and store addrinfo in libpq-owned private memory
authorDaniel Gustafsson <dgustafsson@postgresql.org>
Wed, 29 Mar 2023 19:41:27 +0000 (21:41 +0200)
committerDaniel Gustafsson <dgustafsson@postgresql.org>
Wed, 29 Mar 2023 19:41:27 +0000 (21:41 +0200)
commit44d85ba5a3361dea371d23bd91777ef4c0c4e506
treeffca9c50ac49b1d3adb0597d202a4766d1d6fec0
parent8e5eef50c5b41fd39ad60365c9c1b46782f881ca
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
src/include/libpq/pqcomm.h
src/interfaces/libpq/fe-connect.c
src/interfaces/libpq/libpq-int.h
src/tools/pgindent/typedefs.list