mirror of
https://github.com/EnterpriseDB/repmgr.git
synced 2026-03-22 22:56:29 +00:00
Create temporary pg.auto.conf file with the same permissions as the original
Commit 0574279 set the file permissions to 0600 rather than the user's
umask, but if initdb was executed with -g/--allow-group-access, the
file is maintained with 0640, so we'll just maintain the existing
permssions.
This commit is contained in:
10
configfile.c
10
configfile.c
@@ -1821,6 +1821,7 @@ modify_auto_conf(const char *data_dir, KeyValueList *items)
|
|||||||
|
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
mode_t um;
|
mode_t um;
|
||||||
|
struct stat auto_conf_st;
|
||||||
|
|
||||||
KeyValueList config = {NULL, NULL};
|
KeyValueList config = {NULL, NULL};
|
||||||
KeyValueListCell *cell = NULL;
|
KeyValueListCell *cell = NULL;
|
||||||
@@ -1877,8 +1878,13 @@ modify_auto_conf(const char *data_dir, KeyValueList *items)
|
|||||||
cell->key, cell->value);
|
cell->key, cell->value);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Set umask to 0600 */
|
stat(auto_conf.data, &auto_conf_st);
|
||||||
um = umask((~(S_IRUSR | S_IWUSR)) & (S_IRWXG | S_IRWXO));
|
|
||||||
|
/*
|
||||||
|
* Set umask so the temporary file is created in the same mode as the original
|
||||||
|
* postgresql.auto.conf file.
|
||||||
|
*/
|
||||||
|
um = umask(~(auto_conf_st.st_mode));
|
||||||
fp = fopen(auto_conf_tmp.data, "w");
|
fp = fopen(auto_conf_tmp.data, "w");
|
||||||
umask(um);
|
umask(um);
|
||||||
|
|
||||||
|
|||||||
@@ -1165,7 +1165,6 @@ _get_pg_setting(PGconn *conn, const char *setting, char *str_output, bool *bool_
|
|||||||
/*
|
/*
|
||||||
* Note we assume the caller is sure this is a boolean parameter
|
* Note we assume the caller is sure this is a boolean parameter
|
||||||
*/
|
*/
|
||||||
printf("YYY %s\n", PQgetvalue(res, i, 1));
|
|
||||||
if (strncmp(PQgetvalue(res, i, 1), "on", MAXLEN) == 0)
|
if (strncmp(PQgetvalue(res, i, 1), "on", MAXLEN) == 0)
|
||||||
*bool_output = true;
|
*bool_output = true;
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -136,6 +136,13 @@
|
|||||||
</para>
|
</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure <filename>postgresql.auto.conf</filename> is created with
|
||||||
|
correct permissions (PostgreSQL 12 and later).
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
</itemizedlist>
|
</itemizedlist>
|
||||||
</para>
|
</para>
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|||||||
@@ -6221,7 +6221,6 @@ check_upstream_config(PGconn *conn, int server_version_num, t_node_info *upstrea
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
printf("XXX %i\n", PQserverVersion(conn));
|
|
||||||
if (data_checksums == false && wal_log_hints == false)
|
if (data_checksums == false && wal_log_hints == false)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user