aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog77
-rw-r--r--stdlib/longlong.h8
-rw-r--r--sysdeps/generic/backtrace.c1
-rw-r--r--sysdeps/sparc/sparc32/bits/wordsize.h2
-rw-r--r--sysdeps/sparc/sparc64/bits/wordsize.h2
-rw-r--r--sysdeps/unix/sysv/linux/arm/chown.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/fchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/getegid.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/geteuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/getgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/getuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/arm/lchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/ftruncate64.c8
-rw-r--r--sysdeps/unix/sysv/linux/getresgid.c34
-rw-r--r--sysdeps/unix/sysv/linux/getresuid.c33
-rw-r--r--sysdeps/unix/sysv/linux/i386/chown.c46
-rw-r--r--sysdeps/unix/sysv/linux/i386/fchown.c73
-rw-r--r--sysdeps/unix/sysv/linux/i386/getegid.c62
-rw-r--r--sysdeps/unix/sysv/linux/i386/geteuid.c62
-rw-r--r--sysdeps/unix/sysv/linux/i386/getgid.c63
-rw-r--r--sysdeps/unix/sysv/linux/i386/getgroups.c38
-rw-r--r--sysdeps/unix/sysv/linux/i386/getuid.c63
-rw-r--r--sysdeps/unix/sysv/linux/i386/lchown.c79
-rw-r--r--sysdeps/unix/sysv/linux/i386/setegid.c12
-rw-r--r--sysdeps/unix/sysv/linux/i386/seteuid.c11
-rw-r--r--sysdeps/unix/sysv/linux/i386/setfsgid.c33
-rw-r--r--sysdeps/unix/sysv/linux/i386/setfsuid.c32
-rw-r--r--sysdeps/unix/sysv/linux/i386/setgid.c33
-rw-r--r--sysdeps/unix/sysv/linux/i386/setgroups.c37
-rw-r--r--sysdeps/unix/sysv/linux/i386/setregid.c32
-rw-r--r--sysdeps/unix/sysv/linux/i386/setresgid.c33
-rw-r--r--sysdeps/unix/sysv/linux/i386/setresuid.c33
-rw-r--r--sysdeps/unix/sysv/linux/i386/setreuid.c32
-rw-r--r--sysdeps/unix/sysv/linux/i386/setuid.c31
-rw-r--r--sysdeps/unix/sysv/linux/kernel-features.h5
-rw-r--r--sysdeps/unix/sysv/linux/m68k/chown.c57
-rw-r--r--sysdeps/unix/sysv/linux/m68k/fchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/getegid.c1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/geteuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/getgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/getuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/m68k/lchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/setegid.c52
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/fcntl.h1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/chown.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/fchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/getegid.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/geteuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/getgid.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/getuid.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/lchown.c1
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h11
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h7
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sys/procfs.h109
-rw-r--r--sysdeps/unix/sysv/linux/truncate64.c8
55 files changed, 1171 insertions, 69 deletions
diff --git a/ChangeLog b/ChangeLog
index 8b1325ab94..9f95028d83 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,80 @@
+2000-01-12 Andreas Jaeger <aj@suse.de>
+
+ * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_32BITUIDS):
+ Added for Linux 2.3.39+.
+
+ * sysdeps/unix/sysv/linux/getresgid.c: Support 32bit UIDs and
+ 32bit GIDs.
+ * sysdeps/unix/sysv/linux/getresuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setegid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/seteuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
+ * sysdeps/unix/sysv/linux/setegid.c: Likewise.
+
+ * sysdeps/unix/sysv/linux/arm/chown.c: New file.
+ * sysdeps/unix/sysv/linux/arm/fchown.c: New file.
+ * sysdeps/unix/sysv/linux/arm/geteuid.c: New file.
+ * sysdeps/unix/sysv/linux/arm/getegid.c: New file.
+ * sysdeps/unix/sysv/linux/arm/getuid.c: New file.
+ * sysdeps/unix/sysv/linux/arm/getgid.c: New file.
+ * sysdeps/unix/sysv/linux/arm/lchown.c: New file.
+ * sysdeps/unix/sysv/linux/i386/fchown.c: New file.
+ * sysdeps/unix/sysv/linux/i386/getegid.c: New file.
+ * sysdeps/unix/sysv/linux/i386/geteuid.c: New file.
+ * sysdeps/unix/sysv/linux/i386/getgid.c: New file.
+ * sysdeps/unix/sysv/linux/i386/getuid.c: New file.
+ * sysdeps/unix/sysv/linux/i386/lchown.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/chown.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/fchown.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/getegid.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/geteuid.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/getgid.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/getuid.c: New file.
+ * sysdeps/unix/sysv/linux/m68k/lchown.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/chown.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/fchown.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/getegid.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/geteuid.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/getgid.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/getuid.c: New file.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/lchown.c: New file.
+ Based on a patch by Chris Wing <wingc@engin.umich.edu>.
+
+2000-01-14 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/unix/sysv/linux/sparc/sys/procfs.h: New file.
+
+2000-01-13 Jakub Jelinek <jakub@redhat.com>
+
+ * sysdeps/generic/backtrace.c: Include signal.h which
+ sigcontextinfo.h headers are used to expect.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/register-dump.h
+ (register_dump): Fix a typo in the printout.
+ Avoid using reg_window, so that asm/ptrace.h is not necessary.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/sigcontextinfo.h
+ (ADVANCE_STACK_FRAME): Likewise.
+
+ * stdlib/longlong.h: Avoid using __sparc_v9__ ifdefs.
+ * sysdeps/sparc/sparc32/bits/wordsize.h: Likewise.
+ * sysdeps/sparc/sparc64/bits/wordsize.h: Likewise.
+
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Include bits/wordsize.h
+ to make it clear this file depends on __WORDSIZE.
+ * sysdeps/unix/sysv/linux/ftruncate64.c (__have_no_truncate64):
+ Renamed from have_no_truncate64.
+ * sysdeps/unix/sysv/linux/truncate64.c (__have_no_truncate64):
+ Likewise.
+
2000-01-16 Ulrich Drepper <drepper@cygnus.com>
* Makeconfig (rpath-dirs): Remove db2.
diff --git a/stdlib/longlong.h b/stdlib/longlong.h
index 6d349e2b3a..58a301c610 100644
--- a/stdlib/longlong.h
+++ b/stdlib/longlong.h
@@ -993,8 +993,8 @@ UDItype __umulsidi3 (USItype, USItype);
#define UMUL_TIME 5
#endif
-#if defined (__sparc__) && !defined (__sparc_v9__) && !defined(__arch64__) \
- && !defined(__sparc_v9) && W_TYPE_SIZE == 32
+#if defined (__sparc__) && !defined(__arch64__) \
+ && !defined(__sparcv9) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("addcc %r4,%5,%1
addx %r2,%3,%0" \
@@ -1182,7 +1182,7 @@ UDItype __umulsidi3 (USItype, USItype);
#endif /* __sparc_v8__ */
#endif /* __sparc__ */
-#if (defined (__sparc_v9__) || (defined (__sparc__) && defined (__arch64__)) \
+#if (defined (__sparc__) && defined (__arch64__)) \
|| defined (__sparcv9)) && W_TYPE_SIZE == 64
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("addcc %r4,%5,%1
@@ -1246,7 +1246,7 @@ UDItype __umulsidi3 (USItype, USItype);
} while (0)
#define UMUL_TIME 96
#define UDIV_TIME 230
-#endif /* __sparc_v9__ */
+#endif /* sparc64 */
#if defined (__vax__) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
diff --git a/sysdeps/generic/backtrace.c b/sysdeps/generic/backtrace.c
index 3eae3f44f7..b9242b587b 100644
--- a/sysdeps/generic/backtrace.c
+++ b/sysdeps/generic/backtrace.c
@@ -19,6 +19,7 @@
Boston, MA 02111-1307, USA. */
#include <execinfo.h>
+#include <signal.h>
#include <frame.h>
#include <sigcontextinfo.h>
diff --git a/sysdeps/sparc/sparc32/bits/wordsize.h b/sysdeps/sparc/sparc32/bits/wordsize.h
index 2ad12e1e7f..98c588450f 100644
--- a/sysdeps/sparc/sparc32/bits/wordsize.h
+++ b/sysdeps/sparc/sparc32/bits/wordsize.h
@@ -1,6 +1,6 @@
/* Determine the wordsize from the preprocessor defines. */
-#if defined __sparc_v9__ || defined __arch64__ || defined __sparcv9
+#if defined __arch64__ || defined __sparcv9
# define __WORDSIZE 64
#else
# define __WORDSIZE 32
diff --git a/sysdeps/sparc/sparc64/bits/wordsize.h b/sysdeps/sparc/sparc64/bits/wordsize.h
index 2ad12e1e7f..98c588450f 100644
--- a/sysdeps/sparc/sparc64/bits/wordsize.h
+++ b/sysdeps/sparc/sparc64/bits/wordsize.h
@@ -1,6 +1,6 @@
/* Determine the wordsize from the preprocessor defines. */
-#if defined __sparc_v9__ || defined __arch64__ || defined __sparcv9
+#if defined __arch64__ || defined __sparcv9
# define __WORDSIZE 64
#else
# define __WORDSIZE 32
diff --git a/sysdeps/unix/sysv/linux/arm/chown.c b/sysdeps/unix/sysv/linux/arm/chown.c
new file mode 100644
index 0000000000..1961622564
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/chown.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/m68k/chown.c>
diff --git a/sysdeps/unix/sysv/linux/arm/fchown.c b/sysdeps/unix/sysv/linux/arm/fchown.c
new file mode 100644
index 0000000000..3a69ecc9e7
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/fchown.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/fchown.c>
diff --git a/sysdeps/unix/sysv/linux/arm/getegid.c b/sysdeps/unix/sysv/linux/arm/getegid.c
new file mode 100644
index 0000000000..37b4b4a530
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/getegid.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/getegid.c>
diff --git a/sysdeps/unix/sysv/linux/arm/geteuid.c b/sysdeps/unix/sysv/linux/arm/geteuid.c
new file mode 100644
index 0000000000..ebcb555b5e
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/geteuid.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/geteuid.c>
diff --git a/sysdeps/unix/sysv/linux/arm/getgid.c b/sysdeps/unix/sysv/linux/arm/getgid.c
new file mode 100644
index 0000000000..0a4d6061f0
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/getgid.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/getgid.c>
diff --git a/sysdeps/unix/sysv/linux/arm/getuid.c b/sysdeps/unix/sysv/linux/arm/getuid.c
new file mode 100644
index 0000000000..d682c79a49
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/getuid.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/getuid.c>
diff --git a/sysdeps/unix/sysv/linux/arm/lchown.c b/sysdeps/unix/sysv/linux/arm/lchown.c
new file mode 100644
index 0000000000..c89de99ba2
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/arm/lchown.c
@@ -0,0 +1 @@
+#include <sysdeps/unix/sysv/linux/i386/lchown.c>
diff --git a/sysdeps/unix/sysv/linux/ftruncate64.c b/sysdeps/unix/sysv/linux/ftruncate64.c
index 49133e8dd0..a38d5bd560 100644
--- a/sysdeps/unix/sysv/linux/ftruncate64.c
+++ b/sysdeps/unix/sysv/linux/ftruncate64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
+/* Copyright (C) 1997, 1998, 1999, 2000 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
@@ -28,7 +28,7 @@
#ifdef __NR_ftruncate64
#ifndef __ASSUME_TRUNCATE64_SYSCALL
/* The variable is shared between all wrappers around *truncate64 calls. */
-extern int have_no_truncate64;
+extern int __have_no_truncate64;
#endif
extern int __syscall_ftruncate64 (int fd, int high_length, int low_length);
@@ -41,7 +41,7 @@ ftruncate64 (fd, length)
off64_t length;
{
#ifndef __ASSUME_TRUNCATE64_SYSCALL
- if (! have_no_truncate64)
+ if (! __have_no_truncate64)
#endif
{
unsigned int low = length & 0xffffffff;
@@ -58,7 +58,7 @@ ftruncate64 (fd, length)
#ifndef __ASSUME_TRUNCATE64_SYSCALL
__set_errno (saved_errno);
- have_no_truncate64 = 1;
+ __have_no_truncate64 = 1;
#endif
}
diff --git a/sysdeps/unix/sysv/linux/getresgid.c b/sysdeps/unix/sysv/linux/getresgid.c
index 475592ead4..ce7d7aa649 100644
--- a/sysdeps/unix/sysv/linux/getresgid.c
+++ b/sysdeps/unix/sysv/linux/getresgid.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1998, 2000 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,16 +24,47 @@
#include <sysdep.h>
#include <sys/syscall.h>
+#include "kernel-features.h"
+
#ifdef __NR_getresgid
extern int __syscall_getresgid (__kernel_gid_t *rgid, __kernel_gid_t *egid,
__kernel_gid_t *sgid);
+# ifdef __NR_getresgid32