diff options
author | Peter Eisentraut <peter_e@gmx.net> | 2000-01-14 22:11:38 +0000 |
---|---|---|
committer | Peter Eisentraut <peter_e@gmx.net> | 2000-01-14 22:11:38 +0000 |
commit | 4ceb2d0cb619bba2ecbf5d72a10c8fa7ba321366 (patch) | |
tree | fedda3351400f98ed990320516f0eed80d6c1b73 /src/backend/tcop/utility.c | |
parent | 2af360ed1c5036b8d488cdb6dc94f96608375769 (diff) |
* User management commands no longer user pg_exec_query_dest -> more robust
* Let unprivileged users change their own passwords.
* The password is now an Sconst in the parser, which better reflects its text datatype and also
forces users to quote them.
* If your password is NULL you won't be written to the password file, meaning you can't connect
until you have a password set up (if you use password authentication).
* When you drop a user that owns a database you get an error. The database is not gone.
Diffstat (limited to 'src/backend/tcop/utility.c')
-rw-r--r-- | src/backend/tcop/utility.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index 0a97e3acacf..ed1cf862e7f 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.77 2000/01/13 18:26:10 petere Exp $ + * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.78 2000/01/14 22:11:35 petere Exp $ * *------------------------------------------------------------------------- */ @@ -266,11 +266,7 @@ ProcessUtility(Node *parsetree, */ stmt->filename, stmt->delimiter, - stmt->null_print, - /* - * specify 022 umask while writing files with COPY. - */ - 0022); + stmt->null_print); } break; @@ -775,21 +771,21 @@ ProcessUtility(Node *parsetree, PS_SET_STATUS(commandTag = "CREATE USER"); CHECK_IF_ABORTED(); - DefineUser((CreateUserStmt *) parsetree, dest); + CreateUser((CreateUserStmt *) parsetree); break; case T_AlterUserStmt: PS_SET_STATUS(commandTag = "ALTER USER"); CHECK_IF_ABORTED(); - AlterUser((AlterUserStmt *) parsetree, dest); + AlterUser((AlterUserStmt *) parsetree); break; case T_DropUserStmt: PS_SET_STATUS(commandTag = "DROP USER"); CHECK_IF_ABORTED(); - RemoveUser(((DropUserStmt *) parsetree)->user, dest); + DropUser((DropUserStmt *) parsetree); break; case T_LockStmt: @@ -810,21 +806,21 @@ ProcessUtility(Node *parsetree, PS_SET_STATUS(commandTag = "CREATE GROUP"); CHECK_IF_ABORTED(); - CreateGroup((CreateGroupStmt *) parsetree, dest); + CreateGroup((CreateGroupStmt *) parsetree); break; case T_AlterGroupStmt: PS_SET_STATUS(commandTag = "ALTER GROUP"); CHECK_IF_ABORTED(); - AlterGroup((AlterGroupStmt *) parsetree, dest); + AlterGroup((AlterGroupStmt *) parsetree, "ALTER GROUP"); break; case T_DropGroupStmt: PS_SET_STATUS(commandTag = "DROP GROUP"); CHECK_IF_ABORTED(); - DropGroup((DropGroupStmt *) parsetree, dest); + DropGroup((DropGroupStmt *) parsetree); break; /* |