From a3c6d105752c28dbd19d0558733a2157e6ab55e0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 21 Apr 2010 00:51:57 +0000 Subject: Move the check for whether walreceiver has authenticated as a superuser from walsender.c, where it didn't really belong, to postinit.c where it does belong (and is essentially free, too). --- src/backend/utils/init/postinit.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/backend/utils/init/postinit.c') diff --git a/src/backend/utils/init/postinit.c b/src/backend/utils/init/postinit.c index 1fc41cce67..b812c40ac0 100644 --- a/src/backend/utils/init/postinit.c +++ b/src/backend/utils/init/postinit.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.210 2010/04/20 23:48:47 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.211 2010/04/21 00:51:57 tgl Exp $ * * *------------------------------------------------------------------------- @@ -624,6 +624,11 @@ InitPostgres(const char *in_dbname, Oid dboid, const char *username, if (am_walsender) { Assert(!bootstrap); + /* must have authenticated as a superuser */ + if (!am_superuser) + ereport(FATAL, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("must be superuser to start walsender"))); /* report this backend in the PgBackendStatus array */ pgstat_bestart(); /* close the transaction we started above */ -- cgit v1.2.1