summaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/name.c
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2000-09-19 18:18:04 +0000
committerPeter Eisentraut <peter_e@gmx.net>2000-09-19 18:18:04 +0000
commit457ac0331cd3e28ecc5d783e7504645837c41a1d (patch)
treeba4676d77b28de759955919a8dc14303fb7330bc /src/backend/utils/adt/name.c
parente9c3f0255fb54600e1c03533cc2e72d78928634d (diff)
Implement differentiation between CURRENT_USER and SESSION_USER as per SQL.
There is still no effective difference but it will kick in once setuid functions exist (not included here). Make old getpgusername() alias for current_user.
Diffstat (limited to 'src/backend/utils/adt/name.c')
-rw-r--r--src/backend/utils/adt/name.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/backend/utils/adt/name.c b/src/backend/utils/adt/name.c
index 3acf40e0d43..edc14303d42 100644
--- a/src/backend/utils/adt/name.c
+++ b/src/backend/utils/adt/name.c
@@ -12,7 +12,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/name.c,v 1.29 2000/08/03 16:34:22 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/name.c,v 1.30 2000/09/19 18:17:56 petere Exp $
*
*-------------------------------------------------------------------------
*/
@@ -136,13 +136,6 @@ namege(PG_FUNCTION_ARGS)
PG_RETURN_BOOL(strncmp(NameStr(*arg1), NameStr(*arg2), NAMEDATALEN) >= 0);
}
-/* SQL-function interface to GetPgUserName() */
-Datum
-getpgusername(PG_FUNCTION_ARGS)
-{
- PG_RETURN_DATUM(DirectFunctionCall1(namein,
- CStringGetDatum(GetPgUserName())));
-}
/* (see char.c for comparison/operation routines) */
@@ -218,6 +211,21 @@ namestrcmp(Name name, const char *str)
return strncmp(NameStr(*name), str, NAMEDATALEN);
}
+
+/* SQL-functions CURRENT_USER and SESSION_USER */
+Datum
+current_user(PG_FUNCTION_ARGS)
+{
+ PG_RETURN_DATUM(DirectFunctionCall1(namein, CStringGetDatum(GetUserName(GetUserId()))));
+}
+
+Datum
+session_user(PG_FUNCTION_ARGS)
+{
+ PG_RETURN_DATUM(DirectFunctionCall1(namein, CStringGetDatum(GetUserName(GetSessionUserId()))));
+}
+
+
/*****************************************************************************
* PRIVATE ROUTINES *
*****************************************************************************/