From ddfd0535776c47ec01231ac91fabe8b2e128cfa3 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 24 May 2007 23:55:28 +0000 Subject: * Makerules (sysd-rules): Define PTW for ptw-* files. * Versions: Define GLIBC_2.7 for libc. * include/stdio.h: Declare __fortify_fail. * debug/fortify_fail.c: New file. * debug/Makefile (routines): Add fortify_fail. * debug/chk_fail.c: Use __fortify_fail. * debug/stack_chk_fail.c: Likewise. * io/Versions: Export __open_2, __open64_2, __openat_2, and __openat64_2 for GLIBC_2.7. * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h. * io/open.c: Define *_2 variant of function which checks for O_CREAT and fails if necessary. * io/open64.c: Likewise. * io/openat.c: Likewise. * io/openat64.c: Likewise. * sysdeps/unix/sysv/linux/open64.c: Likewise. * sysdeps/unix/sysv/linux/openat.c: Likewise. * sysdeps/unix/sysv/linux/openat64.c: Likewise. * io/bits/fcntl2.h: New file. * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and __openat64_2. * include/bits/fcntl2.h: New file. * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines): Add open_2. * sysdeps/unix/sysv/linux/open_2.c: New file. --- include/bits/fcntl2.h | 1 + include/fcntl.h | 5 +++++ include/stdio.h | 1 + 3 files changed, 7 insertions(+) create mode 100644 include/bits/fcntl2.h (limited to 'include') diff --git a/include/bits/fcntl2.h b/include/bits/fcntl2.h new file mode 100644 index 0000000..832b2c9 --- /dev/null +++ b/include/bits/fcntl2.h @@ -0,0 +1 @@ +#include "../../io/bits/fcntl2.h" diff --git a/include/fcntl.h b/include/fcntl.h index e23af1c..1e919be 100644 --- a/include/fcntl.h +++ b/include/fcntl.h @@ -24,6 +24,11 @@ extern int __openat64 (int __fd, __const char *__file, int __oflag, ...) __nonnull ((2)); libc_hidden_proto (__openat64) +extern int __open_2 (__const char *__path, int __oflag); +extern int __open64_2 (__const char *__path, int __oflag); +extern int __openat_2 (int __fd, __const char *__path, int __oflag); +extern int __openat64_2 (int __fd, __const char *__path, int __oflag); + /* Helper functions for the various *at functions. For Linux. */ extern void __atfct_seterrno (int errval, int fd, const char *buf) diff --git a/include/stdio.h b/include/stdio.h index b293b8f..6fe881c 100644 --- a/include/stdio.h +++ b/include/stdio.h @@ -65,6 +65,7 @@ extern int __gen_tempname (char *__tmpl, int __kind); extern void __libc_fatal (__const char *__message) __attribute__ ((__noreturn__)); extern void __libc_message (int do_abort, __const char *__fnt, ...); +extern void __fortify_fail (const char *msg) __attribute__ ((noreturn)); /* Acquire ownership of STREAM. */ extern void __flockfile (FILE *__stream); -- cgit v1.1