summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv')
-rw-r--r--sysdeps/unix/sysv/linux/aio_sigqueue.c7
-rw-r--r--sysdeps/unix/sysv/linux/init-first.c1
-rw-r--r--sysdeps/unix/sysv/linux/sigqueue.c8
3 files changed, 5 insertions, 11 deletions
diff --git a/sysdeps/unix/sysv/linux/aio_sigqueue.c b/sysdeps/unix/sysv/linux/aio_sigqueue.c
index b962396291..1520ee1a29 100644
--- a/sysdeps/unix/sysv/linux/aio_sigqueue.c
+++ b/sysdeps/unix/sysv/linux/aio_sigqueue.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998 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
@@ -24,9 +24,8 @@
extern int __syscall_rt_sigqueueinfo (int, int, siginfo_t *);
-/* These variables are used quite often in the libc code. */
+/* This variable is used quite often in the libc code. */
extern pid_t __libc_pid;
-extern uid_t __libc_uid;
/* Return any pending signal or wait for one for the given time. */
@@ -46,7 +45,7 @@ __aio_sigqueue (sig, val)
__libc_pid = __getpid ();
info.si_pid = __libc_pid;
- info.si_uid = __libc_uid;
+ info.si_uid = getuid ();
info.si_value = val;
diff --git a/sysdeps/unix/sysv/linux/init-first.c b/sysdeps/unix/sysv/linux/init-first.c
index acaf5093a4..c6bf6fb1a4 100644
--- a/sysdeps/unix/sysv/linux/init-first.c
+++ b/sysdeps/unix/sysv/linux/init-first.c
@@ -45,7 +45,6 @@ char **__libc_argv;
/* We often need the UID and PID. Cache these values. */
pid_t __libc_pid = 0xf00baa;
-uid_t __libc_uid = 0xf00baa;
static void
diff --git a/sysdeps/unix/sysv/linux/sigqueue.c b/sysdeps/unix/sysv/linux/sigqueue.c
index 92026ef153..495238660d 100644
--- a/sysdeps/unix/sysv/linux/sigqueue.c
+++ b/sysdeps/unix/sysv/linux/sigqueue.c
@@ -23,7 +23,6 @@ extern int __syscall_rt_sigqueueinfo (int, int, siginfo_t *);
/* These variables are used quite often in the libc code. */
extern pid_t __libc_pid;
-extern uid_t __libc_uid;
/* Return any pending signal or wait for one for the given time. */
@@ -40,14 +39,11 @@ __sigqueue (pid, sig, val)
info.si_errno = 0;
info.si_code = SI_QUEUE;
- if (__libc_pid ==0xf00baa)
+ if (__libc_pid == 0xf00baa)
__libc_pid = __getpid ();
info.si_pid = __libc_pid;
- if (__libc_uid ==0xf00baa)
- __libc_pid = __getuid ();
- info.si_uid = __libc_uid;
-
+ info.si_uid = __getuid ();
info.si_value = val;
return __syscall_rt_sigqueueinfo (pid, sig, &info);