diff options
author | Jeff Davis <jdavis@postgresql.org> | 2024-01-12 21:38:16 -0800 |
---|---|---|
committer | Jeff Davis <jdavis@postgresql.org> | 2024-01-12 21:40:23 -0800 |
commit | 45da69371ebfc4d6982695e58791989660c1cc33 (patch) | |
tree | bd6717387f1947e608f6d7e7de04996f6bb5236a /src | |
parent | 2f696d5a2902333329a95fd80e351e4e6ecf8d4a (diff) | |
download | postgresql-45da69371ebfc4d6982695e58791989660c1cc33.tar.gz postgresql-45da69371ebfc4d6982695e58791989660c1cc33.zip |
Fix memory leak in connection string validation.
Introduced in commit c3afe8cf5a.
Discussion: https://postgr.es/m/066a65233d3cb4ea27a9e0778d2f1d0dc764b222.camel@j-davis.com
Reviewed-by: Nathan Bossart, Tom Lane
Backpatch-through: 16
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/replication/libpqwalreceiver/libpqwalreceiver.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c index ead30f87c96..201c36cb220 100644 --- a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c +++ b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c @@ -284,10 +284,15 @@ libpqrcv_check_conninfo(const char *conninfo, bool must_use_password) } if (!uses_password) + { + /* malloc'd, so we must free it explicitly */ + PQconninfoFree(opts); + ereport(ERROR, (errcode(ERRCODE_S_R_E_PROHIBITED_SQL_STATEMENT_ATTEMPTED), errmsg("password is required"), errdetail("Non-superusers must provide a password in the connection string."))); + } } PQconninfoFree(opts); |