pgsql: Repair unsafe/unportable snprintf usage in pg_restore. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Repair unsafe/unportable snprintf usage in pg_restore.
Date
Msg-id E1gsdFu-0006B8-F9@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Repair unsafe/unportable snprintf usage in pg_restore.

warn_or_exit_horribly() was blithely passing a potentially-NULL
string pointer to a %s format specifier.  That works (at least
to the extent of not crashing) on some platforms, but not all,
and since we switched to our own snprintf.c it doesn't work
for us anywhere.

Of the three string fields being handled this way here, I think
that only "owner" is supposed to be nullable ... but considering
that this is error-reporting code, it has very little business
assuming anything, so put in defenses for all three.

Per a crash observed on buildfarm member crake and then
reproduced here.  Because of the portability aspect,
back-patch to all supported versions.

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/73668c590cf5c5719ac0d0481201fd4fd79454bb

Modified Files
--------------
src/bin/pg_dump/pg_backup_archiver.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Build out the planner support function infrastructure.
Next
From: Tom Lane
Date:
Subject: pgsql: Solve cross-version-upgrade testing problem induced by1fb57af92