libc: enable FORTIFY_SOURCE snprintf under clang

Change-Id: I8b8059782a720104722b0841994b38f873ed02aa
This commit is contained in:
Nick Kralevich
2013-06-25 10:02:35 -07:00
parent 1642edb520
commit 621b19dddb
5 changed files with 52 additions and 4 deletions

View File

@@ -468,15 +468,19 @@ int vsprintf(char *dest, const char *format, __va_list ap)
{
return __builtin___vsprintf_chk(dest, 0, __bos(dest), format, ap);
}
#endif /* !defined(__clang__) */
#if defined(__clang__)
#define snprintf(dest, size, ...) __builtin___snprintf_chk(dest, size, 0, __bos(dest), __VA_ARGS__)
#else
__BIONIC_FORTIFY_INLINE
__printflike(3, 4)
int snprintf(char *str, size_t size, const char *format, ...)
int snprintf(char *dest, size_t size, const char *format, ...)
{
return __builtin___snprintf_chk(str, size, 0,
__bos(str), format, __builtin_va_arg_pack());
return __builtin___snprintf_chk(dest, size, 0,
__bos(dest), format, __builtin_va_arg_pack());
}
#endif /* !defined(__clang__) */
#endif
#if defined(__clang__)
#define sprintf(dest, ...) __builtin___sprintf_chk(dest, 0, __bos(dest), __VA_ARGS__)