mirror of
https://github.com/postgres/postgres.git
synced 2025-07-30 11:03:19 +03:00
Correctly copy the target host identification in PQcancelCreate.
PQcancelCreate failed to copy struct pg_conn_host's "type" field, instead leaving it zero (a/k/a CHT_HOST_NAME). This seemingly has no great ill effects if it should have been CHT_UNIX_SOCKET instead, but if it should have been CHT_HOST_ADDRESS then a null-pointer dereference will occur when the cancelConn is used. Bug: #18974 Reported-by: Maxim Boguk <maxim.boguk@gmail.com> Author: Sergei Kornilov <sk@zsrv.org> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://postgr.es/m/18974-575f02b2168b36b3@postgresql.org Backpatch-through: 17
This commit is contained in:
@ -137,6 +137,7 @@ PQcancelCreate(PGconn *conn)
|
||||
goto oom_error;
|
||||
|
||||
originalHost = conn->connhost[conn->whichhost];
|
||||
cancelConn->connhost[0].type = originalHost.type;
|
||||
if (originalHost.host)
|
||||
{
|
||||
cancelConn->connhost[0].host = strdup(originalHost.host);
|
||||
|
Reference in New Issue
Block a user