diff options
author | Andrew Dunstan <andrew@dunslane.net> | 2015-03-30 17:07:52 -0400 |
---|---|---|
committer | Andrew Dunstan <andrew@dunslane.net> | 2015-03-30 17:07:52 -0400 |
commit | fa1e5afa8a26d467aec7c8b36a0b749b690f636c (patch) | |
tree | 59f26bc7d64d51973bce9d1e2b68ddaab20c112c /contrib | |
parent | ed9cc2b5df59fdbc50cce37399e26b03ab2c1686 (diff) | |
download | postgresql-fa1e5afa8a26d467aec7c8b36a0b749b690f636c.tar.gz postgresql-fa1e5afa8a26d467aec7c8b36a0b749b690f636c.zip |
Run pg_upgrade and pg_resetxlog with restricted token on Windows
As with initdb these programs need to run with a restricted token, and
if they don't pg_upgrade will fail when run as a user with Adminstrator
privileges.
Backpatch to all live branches. On the development branch the code is
reorganized so that the restricted token code is now in a single
location. On the stable bramches a less invasive change is made by
simply copying the relevant code to pg_upgrade.c and pg_resetxlog.c.
Patches and bug report from Muhammad Asif Naeem, reviewed by Michael
Paquier, slightly edited by me.
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/pg_upgrade/pg_upgrade.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/contrib/pg_upgrade/pg_upgrade.c b/contrib/pg_upgrade/pg_upgrade.c index ed7de809c8e..eb48da779f9 100644 --- a/contrib/pg_upgrade/pg_upgrade.c +++ b/contrib/pg_upgrade/pg_upgrade.c @@ -37,6 +37,7 @@ #include "postgres_fe.h" #include "pg_upgrade.h" +#include "common/restricted_token.h" #ifdef HAVE_LANGINFO_H #include <langinfo.h> @@ -75,6 +76,8 @@ main(int argc, char **argv) parseCommandLine(argc, argv); + get_restricted_token(os_info.progname); + adjust_data_dir(&old_cluster); adjust_data_dir(&new_cluster); |