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

Fujii Masao, reviewed by Cédric Villemain, with some doc changes by me.
This commit is contained in:
Robert Haas 2011-09-23 09:25:20 -04:00
parent e5e2f7b054
commit b056b716e2
2 changed files with 37 additions and 0 deletions

View File

@ -240,6 +240,28 @@ PostgreSQL documentation
</listitem>
</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>
<term><option>-V</></term>
<term><option>--version</></term>

View File

@ -37,6 +37,8 @@ main(int argc, char *argv[])
{"no-inherit", no_argument, NULL, 'I'},
{"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", no_argument, NULL, 'a'},
{"no-adduser", no_argument, NULL, 'A'},
@ -66,6 +68,7 @@ main(int argc, char *argv[])
createrole = TRI_DEFAULT,
inherit = TRI_DEFAULT,
login = TRI_DEFAULT,
replication = TRI_DEFAULT,
encrypted = TRI_DEFAULT;
PQExpBufferData sql;
@ -145,6 +148,12 @@ main(int argc, char *argv[])
case 'N':
encrypted = TRI_NO;
break;
case 1:
replication = TRI_YES;
break;
case 2:
replication = TRI_NO;
break;
default:
fprintf(stderr, _("Try \"%s --help\" for more information.\n"), progname);
exit(1);
@ -271,6 +280,10 @@ main(int argc, char *argv[])
appendPQExpBuffer(&sql, " LOGIN");
if (login == TRI_NO)
appendPQExpBuffer(&sql, " NOLOGIN");
if (replication == TRI_YES)
appendPQExpBuffer(&sql, " REPLICATION");
if (replication == TRI_NO)
appendPQExpBuffer(&sql, " NOREPLICATION");
if (conn_limit != NULL)
appendPQExpBuffer(&sql, " CONNECTION LIMIT %s", conn_limit);
appendPQExpBuffer(&sql, ";\n");
@ -316,6 +329,8 @@ help(const char *progname)
printf(_(" -R, --no-createrole role cannot create roles\n"));
printf(_(" -s, --superuser role will 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(_(" --version output version information, then exit\n"));
printf(_("\nConnection options:\n"));