summaryrefslogtreecommitdiff
path: root/sysdeps/mach/hurd/getresuid.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/mach/hurd/getresuid.c')
-rw-r--r--sysdeps/mach/hurd/getresuid.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sysdeps/mach/hurd/getresuid.c b/sysdeps/mach/hurd/getresuid.c
index 668e463a39..f4bfaeaf56 100644
--- a/sysdeps/mach/hurd/getresuid.c
+++ b/sysdeps/mach/hurd/getresuid.c
@@ -1,5 +1,5 @@
-/* getresuid -- fetch real user ID, effective user ID, and saved-set user ID
- Copyright (C) 2002, 2006 Free Software Foundation, Inc.
+/* getresuid -- fetch effective user ID, real user ID, and saved-set user ID
+ Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -22,13 +22,13 @@
#include <hurd.h>
#include <hurd/id.h>
-/* Fetch the real user ID, effective user ID, and saved-set user ID,
+/* Fetch the effective user ID, real user ID, and saved-set user ID,
of the calling process. */
int
-__getresuid (uid_t *ruid, uid_t *euid, uid_t *suid)
+__getresuid (uid_t *euid, uid_t *ruid, uid_t *suid)
{
error_t err;
- uid_t real, eff, saved;
+ uid_t eff, real, saved;
HURD_CRITICAL_BEGIN;
__mutex_lock (&_hurd_id.lock);
@@ -42,8 +42,8 @@ __getresuid (uid_t *ruid, uid_t *euid, uid_t *suid)
else
{
real = _hurd_id.aux.uids[0];
+ saved = _hurd_id.aux.nuids < 2 ? real :_hurd_id.aux.uids[1];
eff = _hurd_id.gen.nuids < 1 ? real : _hurd_id.gen.uids[0];
- saved = _hurd_id.aux.nuids < 2 ? real : _hurd_id.aux.uids[1];
}
}
@@ -53,8 +53,8 @@ __getresuid (uid_t *ruid, uid_t *euid, uid_t *suid)
if (err)
return __hurd_fail (err);
- *ruid = real;
*euid = eff;
+ *ruid = real;
*suid = saved;
return 0;
}