mirror of
https://github.com/postgres/postgres.git
synced 2026-04-10 19:47:07 -04:00
These programs nominally accepted conninfo strings, but they would proceed to use the original dbname parameter as though it were an unadorned database name. This caused "reindexdb dbname=foo" to issue an SQL command that always failed, and other programs printed a conninfo string in error messages that purported to print a database name. Fix both problems by using PQdb() to retrieve actual database names. Continue to print the full conninfo string when reporting a connection failure. It is informative there, and if the database name is the sole problem, the server-side error message will include the name. Beyond those user-visible fixes, this allows a subsequent commit to synthesize and use conninfo strings without that implementation detail leaking into messages. As a side effect, the "vacuuming database" message now appears after, not before, the connection attempt. Back-patch to 9.1 (all supported versions). Reviewed by Michael Paquier and Peter Eisentraut. Security: CVE-2016-5424 |
||
|---|---|---|
| .. | ||
| po | ||
| .gitignore | ||
| clusterdb.c | ||
| common.c | ||
| common.h | ||
| createdb.c | ||
| createlang.c | ||
| createuser.c | ||
| dropdb.c | ||
| droplang.c | ||
| dropuser.c | ||
| Makefile | ||
| nls.mk | ||
| pg_isready.c | ||
| reindexdb.c | ||
| vacuumdb.c | ||