pgsql: Validate the OID argument of pg_import_system_collations().
Validate the OID argument of pg_import_system_collations().
"SELECT pg_import_system_collations(0)" caused an assertion failure.
With a random nonzero argument --- or indeed with zero, in non-assert
builds --- it would happily make pg_collation entries with garbage
values of collnamespace. These are harmless as far as I can tell
(unless maybe the OID happens to become used for a schema, later on?).
In any case this isn't a security issue, since the function is
superuser-only. But it seems like a gotcha for unwary DBAs, so let's
add a check that the given OID belongs to some schema.
Back-patch to v10 where this function was introduced.
Branch
------
REL_13_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/fe2b5386b2edb7d454fcab36bb3dfbbe272d362f
Modified Files
--------------
src/backend/commands/collationcmds.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)