Skip to content
Snippets Groups Projects
Commit b056b716 authored by Robert Haas's avatar Robert Haas
Browse files

Add --{no-,}replication flags to createuser.

Fujii Masao, reviewed by Cédric Villemain, with some doc changes by me.
parent e5e2f7b0
No related branches found
No related tags found
No related merge requests found
...@@ -240,6 +240,28 @@ PostgreSQL documentation ...@@ -240,6 +240,28 @@ PostgreSQL documentation
</listitem> </listitem>
</varlistentry> </varlistentry>
<varlistentry>
<term><option>--replication</></term>
<listitem>
<para>
The new user will have the REPLICATION privilege, which is
described more fully in the documentation for
<xref linkend="sql-createrole">.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--no-replication</></term>
<listitem>
<para>
The new user will not have the REPLICATION privilege, which is
described more fully in the documentation for
<xref linkend="sql-createrole">.
</para>
</listitem>
</varlistentry>
<varlistentry> <varlistentry>
<term><option>-V</></term> <term><option>-V</></term>
<term><option>--version</></term> <term><option>--version</></term>
......
...@@ -37,6 +37,8 @@ main(int argc, char *argv[]) ...@@ -37,6 +37,8 @@ main(int argc, char *argv[])
{"no-inherit", no_argument, NULL, 'I'}, {"no-inherit", no_argument, NULL, 'I'},
{"login", no_argument, NULL, 'l'}, {"login", no_argument, NULL, 'l'},
{"no-login", no_argument, NULL, 'L'}, {"no-login", no_argument, NULL, 'L'},
{"replication", no_argument, NULL, 1},
{"no-replication", no_argument, NULL, 2},
/* adduser is obsolete, undocumented spelling of superuser */ /* adduser is obsolete, undocumented spelling of superuser */
{"adduser", no_argument, NULL, 'a'}, {"adduser", no_argument, NULL, 'a'},
{"no-adduser", no_argument, NULL, 'A'}, {"no-adduser", no_argument, NULL, 'A'},
...@@ -66,6 +68,7 @@ main(int argc, char *argv[]) ...@@ -66,6 +68,7 @@ main(int argc, char *argv[])
createrole = TRI_DEFAULT, createrole = TRI_DEFAULT,
inherit = TRI_DEFAULT, inherit = TRI_DEFAULT,
login = TRI_DEFAULT, login = TRI_DEFAULT,
replication = TRI_DEFAULT,
encrypted = TRI_DEFAULT; encrypted = TRI_DEFAULT;
PQExpBufferData sql; PQExpBufferData sql;
...@@ -145,6 +148,12 @@ main(int argc, char *argv[]) ...@@ -145,6 +148,12 @@ main(int argc, char *argv[])
case 'N': case 'N':
encrypted = TRI_NO; encrypted = TRI_NO;
break; break;
case 1:
replication = TRI_YES;
break;
case 2:
replication = TRI_NO;
break;
default: default:
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname); fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
exit(1); exit(1);
...@@ -271,6 +280,10 @@ main(int argc, char *argv[]) ...@@ -271,6 +280,10 @@ main(int argc, char *argv[])
appendPQExpBuffer(&sql, " LOGIN"); appendPQExpBuffer(&sql, " LOGIN");
if (login == TRI_NO) if (login == TRI_NO)
appendPQExpBuffer(&sql, " NOLOGIN"); appendPQExpBuffer(&sql, " NOLOGIN");
if (replication == TRI_YES)
appendPQExpBuffer(&sql, " REPLICATION");
if (replication == TRI_NO)
appendPQExpBuffer(&sql, " NOREPLICATION");
if (conn_limit != NULL) if (conn_limit != NULL)
appendPQExpBuffer(&sql, " CONNECTION LIMIT %s", conn_limit); appendPQExpBuffer(&sql, " CONNECTION LIMIT %s", conn_limit);
appendPQExpBuffer(&sql, ";\n"); appendPQExpBuffer(&sql, ";\n");
...@@ -316,6 +329,8 @@ help(const char *progname) ...@@ -316,6 +329,8 @@ help(const char *progname)
printf(_(" -R, --no-createrole role cannot create roles\n")); printf(_(" -R, --no-createrole role cannot create roles\n"));
printf(_(" -s, --superuser role will be superuser\n")); printf(_(" -s, --superuser role will be superuser\n"));
printf(_(" -S, --no-superuser role will not be superuser\n")); printf(_(" -S, --no-superuser role will not be superuser\n"));
printf(_(" --replication role can initiate replication\n"));
printf(_(" --no-replication role cannot initiate replication\n"));
printf(_(" --help show this help, then exit\n")); printf(_(" --help show this help, then exit\n"));
printf(_(" --version output version information, then exit\n")); printf(_(" --version output version information, then exit\n"));
printf(_("\nConnection options:\n")); printf(_("\nConnection options:\n"));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment