summary refs log tree commit diff
path: root/libio
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-07-19 17:12:59 +0000
committerUlrich Drepper <drepper@redhat.com>2007-07-19 17:12:59 +0000
commitb257c726a4fe95d3dfb7ecdb3b97bb05fb446465 (patch)
treef80d07f2bbe70337d44a7dbe33201579665d9c13 /libio
parentd5078b9f6562f0b8f51c7d6d4ddf8f96a6994f1d (diff)
downloadglibc-b257c726a4fe95d3dfb7ecdb3b97bb05fb446465.tar.gz
glibc-b257c726a4fe95d3dfb7ecdb3b97bb05fb446465.tar.xz
glibc-b257c726a4fe95d3dfb7ecdb3b97bb05fb446465.zip
* libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
	* debug/vfwprintf_chk.c (__vfwprintf_chk): Use
	_IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
	* debug/vprintf_chk.c (__vprintf_chk): Likewise.
	* debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
	* debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
	* debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
	* debug/printf_chk.c (__printf_chk): Likewise.
	* debug/fprintf_chk.c (__fprintf_chk): Likewise.
	* debug/wprintf_chk.c (__wprintf_chk): Likewise.

	* sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
	Define.
Diffstat (limited to 'libio')
-rw-r--r--libio/libioP.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/libio/libioP.h b/libio/libioP.h
index a574b40f77..b99b81743f 100644
--- a/libio/libioP.h
+++ b/libio/libioP.h
@@ -968,3 +968,13 @@ _IO_acquire_lock_fct (_IO_FILE **p)
   if ((fp->_flags & _IO_USER_LOCK) == 0)
     _IO_funlockfile (fp);
 }
+
+static inline void
+__attribute__ ((__always_inline__))
+_IO_acquire_lock_clear_flags2_fct (_IO_FILE **p)
+{
+  _IO_FILE *fp = *p;
+  fp->_flags &= ~_IO_FLAGS2_FORTIFY;
+  if ((fp->_flags & _IO_USER_LOCK) == 0)
+    _IO_funlockfile (fp);
+}