postgresql/contrib/adminpack
Tom Lane c10f830c51 Make canonicalize_path() more canonical.
Teach canonicalize_path() how to strip all unnecessary uses of "."
and "..", replacing the previous ad-hoc code that got rid of only
some such cases.  In particular, we can always remove all such
uses from absolute paths.

The proximate reason to do this is that Windows rejects paths
involving ".." in some cases (in particular, you can't put one in a
symlink), so we ought to be sure we don't use ".." unnecessarily.
Moreover, it seems like good cleanup on general principles.

There is other path-munging code that could be simplified now, but
we'll leave that for followup work.

It is tempting to call this a bug fix and back-patch it.  On the other
hand, the misbehavior can only be reached if a highly privileged user
does something dubious, so it's not unreasonable to say "so don't do
that".  And this patch could result in unexpected behavioral changes,
in case anybody was expecting uses of ".." to stay put.  So at least
for now, just put it in HEAD.

Shenhao Wang, editorialized a bit by me

Discussion: https://postgr.es/m/OSBPR01MB4214FA221FFE046F11F2AD74F2D49@OSBPR01MB4214.jpnprd01.prod.outlook.com
2022-01-31 12:05:37 -05:00
..
expected Make canonicalize_path() more canonical. 2022-01-31 12:05:37 -05:00
sql Add pg_file_sync() to adminpack extension. 2020-01-24 20:42:52 +09:00
.gitignore adminpack: Add test suite 2017-09-14 22:22:59 -04:00
adminpack--1.0--1.1.sql adminpack: Revoke EXECUTE on pg_logfile_rotate() 2018-05-07 10:10:33 -04:00
adminpack--1.0.sql Throw a useful error message if an extension script file is fed to psql. 2011-10-12 15:45:03 -04:00
adminpack--1.1--2.0.sql adminpack: Revoke EXECUTE on pg_logfile_rotate() 2018-05-07 10:10:33 -04:00
adminpack--2.0--2.1.sql Add pg_file_sync() to adminpack extension. 2020-01-24 20:42:52 +09:00
adminpack.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
adminpack.control Add pg_file_sync() to adminpack extension. 2020-01-24 20:42:52 +09:00
Makefile Remove references to libpq_srcdir in adminpack and old_snapshot 2020-12-30 12:38:16 +09:00