]> granicus.if.org Git - postgresql/commitdiff
Disallow LOAD to non-superusers. Per report from John Heasman.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 24 Jan 2005 17:46:41 +0000 (17:46 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 24 Jan 2005 17:46:41 +0000 (17:46 +0000)
src/backend/tcop/utility.c

index 200fc3599b1a72788f67f9b2fc71e5ce9bfed439..577da0cbebe6b8d211aca8749a406704eacfc6c5 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.208 2003/10/02 06:34:04 petere Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.208.2.1 2005/01/24 17:46:41 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -814,6 +814,10 @@ ProcessUtility(Node *parsetree,
                        {
                                LoadStmt   *stmt = (LoadStmt *) parsetree;
 
+                               if (!superuser())
+                                       ereport(ERROR,
+                                                       (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE),
+                                                        errmsg("must be superuser to do LOAD")));
                                closeAllVfds(); /* probably not necessary... */
                                load_file(stmt->filename);
                        }