1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-07 06:43:00 +03:00

Fix conditions on checking versions of dprintf (bug 13775).

This commit is contained in:
Joseph Myers
2012-05-03 18:42:37 +00:00
parent d3dfcc4187
commit 54b71e0283
4 changed files with 54 additions and 28 deletions

View File

@@ -127,6 +127,32 @@ vfprintf (FILE *__restrict __stream,
return __vfprintf_chk (__stream, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
# ifdef __USE_XOPEN2K8
extern int __dprintf_chk (int __fd, int __flag, const char *__restrict __fmt,
...) __attribute__ ((__format__ (__printf__, 3, 4)));
extern int __vdprintf_chk (int __fd, int __flag,
const char *__restrict __fmt, _G_va_list __arg)
__attribute__ ((__format__ (__printf__, 3, 0)));
# ifdef __va_arg_pack
__fortify_function int
dprintf (int __fd, const char *__restrict __fmt, ...)
{
return __dprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt,
__va_arg_pack ());
}
# elif !defined __cplusplus
# define dprintf(fd, ...) \
__dprintf_chk (fd, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__)
# endif
__fortify_function int
vdprintf (int __fd, const char *__restrict __fmt, _G_va_list __ap)
{
return __vdprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
# endif
# ifdef __USE_GNU
extern int __asprintf_chk (char **__restrict __ptr, int __flag,
@@ -135,11 +161,6 @@ extern int __asprintf_chk (char **__restrict __ptr, int __flag,
extern int __vasprintf_chk (char **__restrict __ptr, int __flag,
const char *__restrict __fmt, _G_va_list __arg)
__THROW __attribute__ ((__format__ (__printf__, 3, 0))) __wur;
extern int __dprintf_chk (int __fd, int __flag, const char *__restrict __fmt,
...) __attribute__ ((__format__ (__printf__, 3, 4)));
extern int __vdprintf_chk (int __fd, int __flag,
const char *__restrict __fmt, _G_va_list __arg)
__attribute__ ((__format__ (__printf__, 3, 0)));
extern int __obstack_printf_chk (struct obstack *__restrict __obstack,
int __flag, const char *__restrict __format,
...)
@@ -166,13 +187,6 @@ __NTH (__asprintf (char **__restrict __ptr, const char *__restrict __fmt,
__va_arg_pack ());
}
__fortify_function int
dprintf (int __fd, const char *__restrict __fmt, ...)
{
return __dprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt,
__va_arg_pack ());
}
__fortify_function int
__NTH (obstack_printf (struct obstack *__restrict __obstack,
const char *__restrict __fmt, ...))
@@ -185,8 +199,6 @@ __NTH (obstack_printf (struct obstack *__restrict __obstack,
__asprintf_chk (ptr, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__)
# define __asprintf(ptr, ...) \
__asprintf_chk (ptr, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__)
# define dprintf(fd, ...) \
__dprintf_chk (fd, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__)
# define obstack_printf(obstack, ...) \
__obstack_printf_chk (obstack, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__)
# endif
@@ -198,12 +210,6 @@ __NTH (vasprintf (char **__restrict __ptr, const char *__restrict __fmt,
return __vasprintf_chk (__ptr, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
__fortify_function int
vdprintf (int __fd, const char *__restrict __fmt, _G_va_list __ap)
{
return __vdprintf_chk (__fd, __USE_FORTIFY_LEVEL - 1, __fmt, __ap);
}
__fortify_function int
__NTH (obstack_vprintf (struct obstack *__restrict __obstack,
const char *__restrict __fmt, _G_va_list __ap))