mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-30 15:21:20 +02:00
pg_ctl: Disable autoruns for cmd.exe on Windows
On Windows, cmd.exe is used to launch the postmaster process to ease its redirection setup. However, cmd.exe may execute other programs at startup due to autorun configurations, which could influence the postmaster startup. This patch adds /D flag to the launcher cmd.exe command line to disable autorun settings written in the registry. This is arguably a bug, but no backpatch is done now out of caution. Reported-by: Hayato Kuroda Author: Kyotaro Horiguchi Reviewed-by: Robert Haas, Michael Paquier Discussion: https://postgr.es/m/20230922.161551.320043332510268554.horikyota.ntt@gmail.com
This commit is contained in:
parent
f896057e46
commit
9886744a36
@ -552,11 +552,11 @@ start_postmaster(void)
|
|||||||
else
|
else
|
||||||
close(fd);
|
close(fd);
|
||||||
|
|
||||||
cmd = psprintf("\"%s\" /C \"\"%s\" %s%s < \"%s\" >> \"%s\" 2>&1\"",
|
cmd = psprintf("\"%s\" /D /C \"\"%s\" %s%s < \"%s\" >> \"%s\" 2>&1\"",
|
||||||
comspec, exec_path, pgdata_opt, post_opts, DEVNULL, log_file);
|
comspec, exec_path, pgdata_opt, post_opts, DEVNULL, log_file);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
cmd = psprintf("\"%s\" /C \"\"%s\" %s%s < \"%s\" 2>&1\"",
|
cmd = psprintf("\"%s\" /D /C \"\"%s\" %s%s < \"%s\" 2>&1\"",
|
||||||
comspec, exec_path, pgdata_opt, post_opts, DEVNULL);
|
comspec, exec_path, pgdata_opt, post_opts, DEVNULL);
|
||||||
|
|
||||||
if (!CreateRestrictedProcess(cmd, &pi, false))
|
if (!CreateRestrictedProcess(cmd, &pi, false))
|
||||||
|
Loading…
Reference in New Issue
Block a user