summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-01-19 10:00:23 +0000
committerRoland McGrath <roland@gnu.org>1996-01-19 10:00:23 +0000
commit97aa195cf78ad62825df0e381f20df1ea227ec18 (patch)
treed30cfc243e151bfd34c5e0786a7f92407469375a
parent9b29e6f7a31d9ae5534d420137454e086b9980fc (diff)
* io/Makefile (routines): Add mknod, xstat fxstat lxstat xmknod.cvs/libc-960119
* sysdeps/unix/sysv/linux/ptrace.c: Use ... decl, and stdarg.h to get args. * posix/glob.c (_GNU_SOURCE): Define if undefined, so glob.h defines GNU extensions. * posix/fnmatch.c: Likewise.
-rw-r--r--ChangeLog9
-rw-r--r--io/Makefile5
-rw-r--r--posix/fnmatch.c7
-rw-r--r--posix/glob.c5
-rw-r--r--sysdeps/unix/sysv/linux/ptrace.c26
5 files changed, 42 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 93a726d3f1..47e8d7e01a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
Thu Jan 18 00:32:43 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
+ * io/Makefile (routines): Add mknod, xstat fxstat lxstat xmknod.
+
+ * sysdeps/unix/sysv/linux/ptrace.c: Use ... decl, and stdarg.h to
+ get args.
+
+ * posix/glob.c (_GNU_SOURCE): Define if undefined, so glob.h
+ defines GNU extensions.
+ * posix/fnmatch.c: Likewise.
+
Replaced all simple system call files *.S throughout sysdeps/unix
with syscalls.list files to be processed by make-syscalls.sh.
* sysdeps/unix/s-proto.S: New file.
diff --git a/io/Makefile b/io/Makefile
index c484e4024f..cf8d21b24f 100644
--- a/io/Makefile
+++ b/io/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996 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
@@ -29,7 +29,8 @@ headers := sys/stat.h statbuf.h \
routines := \
utime \
mkfifo \
- stat fstat lstat \
+ stat fstat lstat mknod \
+ xstat fxstat lxstat xmknod \
umask chmod fchmod mkdir \
open close read write lseek access euidaccess \
fcntl flock lockf \
diff --git a/posix/fnmatch.c b/posix/fnmatch.c
index 1ef5599e23..1ddea80961 100644
--- a/posix/fnmatch.c
+++ b/posix/fnmatch.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
+/* Copyright (C) 1991, 1992, 1993, 1996 Free Software Foundation, Inc.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
@@ -19,6 +19,11 @@ Cambridge, MA 02139, USA. */
#include <config.h>
#endif
+/* Enable GNU extensions in fnmatch.h. */
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE 1
+#endif
+
#include <errno.h>
#include <fnmatch.h>
#include <ctype.h>
diff --git a/posix/glob.c b/posix/glob.c
index 259ac020d2..d628b84617 100644
--- a/posix/glob.c
+++ b/posix/glob.c
@@ -24,6 +24,11 @@ Cambridge, MA 02139, USA. */
#include <config.h>
#endif
+/* Enable GNU extensions in glob.h. */
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE 1
+#endif
+
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
diff --git a/sysdeps/unix/sysv/linux/ptrace.c b/sysdeps/unix/sysv/linux/ptrace.c
index 2c04830c42..32cc990119 100644
--- a/sysdeps/unix/sysv/linux/ptrace.c
+++ b/sysdeps/unix/sysv/linux/ptrace.c
@@ -17,16 +17,28 @@ not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <errno.h>
+#include <sys/types.h>
#include <sys/ptrace.h>
-#include <sys/syscall.h>
+#include <stdarg.h>
+
+extern int __syscall_ptrace (int, pid_t, void *, void *);
int
-ptrace (int request, int pid, int addr, int data)
+ptrace (enum __ptrace_request request, ...)
{
- long int ret;
- long int res;
+ int res, ret;
+ va_list ap;
+ pid_t pid;
+ void *addr, *data;
+
+ va_start (ap, request);
+ pid = va_arg (ap, pid_t);
+ addr = va_arg (ap, void *);
+ data = va_arg (ap, void *);
+ va_end (ap);
+
if (request > 0 && request < 4)
- (long int *) data = &ret;
+ data = &ret;
res = __syscall_ptrace (request, pid, addr, data);
@@ -35,9 +47,9 @@ ptrace (int request, int pid, int addr, int data)
if (request > 0 && request < 4)
{
errno = 0;
- return (ret);
+ return ret;
}
- return (int) res;
+ return res;
}
errno = -res;