From dc7a0009f0b12fcae2cd6895552f8b8660d3551c Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Sat, 27 Jan 2001 10:19:52 +0000 Subject: [PATCH] Add permission check for CHECKPOINT. --- doc/src/sgml/ref/checkpoint.sgml | 7 ++++++- src/backend/tcop/utility.c | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/ref/checkpoint.sgml b/doc/src/sgml/ref/checkpoint.sgml index 83df9e6537..021035888b 100644 --- a/doc/src/sgml/ref/checkpoint.sgml +++ b/doc/src/sgml/ref/checkpoint.sgml @@ -1,4 +1,4 @@ - + @@ -40,6 +40,11 @@ CHECKPOINT PostgreSQL Administrator's Guide for more information about the WAL system. + + + Only superusers may call CHECKPOINT. The command is + not intended for use during normal operation. + diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index c886140c45..65b6baf535 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.106 2001/01/24 19:43:11 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.107 2001/01/27 10:19:52 petere Exp $ * *------------------------------------------------------------------------- */ @@ -18,6 +18,7 @@ #include "access/heapam.h" #include "catalog/catalog.h" +#include "catalog/pg_shadow.h" #include "commands/async.h" #include "commands/cluster.h" #include "commands/command.h" @@ -851,6 +852,8 @@ ProcessUtility(Node *parsetree, { set_ps_display(commandTag = "CHECKPOINT"); + if (!superuser()) + elog(ERROR, "permission denied"); CreateCheckPoint(false); } break; -- GitLab