diff --git a/glibc-fedora.patch b/glibc-fedora.patch index 460a7d1..ecc24cd 100644 --- a/glibc-fedora.patch +++ b/glibc-fedora.patch @@ -2348,3 +2348,39 @@ else \ { \ while (runp->__next != &mutex->__data.__list) \ +--- libc/sysdeps/unix/sysv/linux/not-cancel.h 13 Feb 2006 07:30:05 -0000 1.5.2.1 ++++ libc/sysdeps/unix/sysv/linux/not-cancel.h 13 Feb 2006 09:39:09 -0000 +@@ -28,18 +28,26 @@ + INLINE_SYSCALL (open, 2, (const char *) (name), (flags)) + + /* Uncancelable openat. */ +-extern int __openat_not_cancel (int fd, const char *fname, int oflag, ++#if !defined NOT_IN_libc || defined IS_IN_libpthread || defined IS_IN_librt ++extern int __openat_nocancel (int fd, const char *fname, int oflag, ++ mode_t mode) attribute_hidden; ++extern int __openat64_nocancel (int fd, const char *fname, int oflag, + mode_t mode) attribute_hidden; ++#else ++# define __openat_nocancel(fd, fname, oflag, mode) \ ++ openat (fd, fname, oflag, mode) ++# define __openat64_nocancel(fd, fname, oflag, mode) \ ++ openat64 (fd, fname, oflag, mode) ++#endif ++ + #define openat_not_cancel(fd, fname, oflag, mode) \ +- __openat_not_cancel (fd, fname, oflag, mode) ++ __openat_nocancel (fd, fname, oflag, mode) + #define openat_not_cancel_3(fd, fname, oflag) \ +- __openat_not_cancel (fd, fname, oflag, 0) +-extern int __openat64_not_cancel (int fd, const char *fname, int oflag, +- mode_t mode) attribute_hidden; ++ __openat_nocancel (fd, fname, oflag, 0) + #define openat64_not_cancel(fd, fname, oflag, mode) \ +- __openat64_not_cancel (fd, fname, oflag, mode) ++ __openat64_nocancel (fd, fname, oflag, mode) + #define openat64_not_cancel_3(fd, fname, oflag) \ +- __openat64_not_cancel (fd, fname, oflag, 0) ++ __openat64_nocancel (fd, fname, oflag, 0) + + /* Uncancelable close. */ + #define close_not_cancel(fd) \ diff --git a/glibc.spec b/glibc.spec index 979b836..0453909 100644 --- a/glibc.spec +++ b/glibc.spec @@ -631,6 +631,10 @@ cat > override_headers/asm/unistd.h < override_headers/asm/errno.h <