From: Robert Haas Date: Fri, 23 Sep 2011 13:25:20 +0000 (-0400) Subject: Add --{no-,}replication flags to createuser. X-Git-Tag: REL9_2_BETA1~1076 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b056b716e28562f5c53dfb143725294d44f14d38;p=postgresql Add --{no-,}replication flags to createuser. Fujii Masao, reviewed by Cédric Villemain, with some doc changes by me. --- diff --git a/doc/src/sgml/ref/createuser.sgml b/doc/src/sgml/ref/createuser.sgml index 0c47fb4997..4cbfd69148 100644 --- a/doc/src/sgml/ref/createuser.sgml +++ b/doc/src/sgml/ref/createuser.sgml @@ -240,6 +240,28 @@ PostgreSQL documentation + + + + + The new user will have the REPLICATION privilege, which is + described more fully in the documentation for + . + + + + + + + + + The new user will not have the REPLICATION privilege, which is + described more fully in the documentation for + . + + + + diff --git a/src/bin/scripts/createuser.c b/src/bin/scripts/createuser.c index 04bbebcaf3..d6e05dd793 100644 --- a/src/bin/scripts/createuser.c +++ b/src/bin/scripts/createuser.c @@ -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"));