mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
lib/replace: replace all *printf function if we replace snprintf (bug #9390)
This fixes segfaults in log level = 10 on Solaris. Signed-off-by: Stefan Metzmacher <metze@samba.org> Signed-off-by: Björn Jacke <bj@sernet.de> Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Wed Nov 14 19:41:14 CET 2012 on sn-devel-104
This commit is contained in:
parent
a53caea7a2
commit
a15da36258
@ -741,7 +741,7 @@ void *rep_memmem(const void *haystack, size_t haystacklen,
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VDPRINTF
|
||||
#if !defined(HAVE_VDPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int rep_vdprintf(int fd, const char *format, va_list ap)
|
||||
{
|
||||
char *s = NULL;
|
||||
@ -758,7 +758,7 @@ int rep_vdprintf(int fd, const char *format, va_list ap)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_DPRINTF
|
||||
#if !defined(HAVE_DPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int rep_dprintf(int fd, const char *format, ...)
|
||||
{
|
||||
int ret;
|
||||
|
@ -376,16 +376,6 @@ int rep_dlclose(void *handle);
|
||||
/* prototype is in system/network.h */
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VDPRINTF
|
||||
#define vdprintf rep_vdprintf
|
||||
int rep_vdprintf(int fd, const char *format, va_list ap);
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_DPRINTF
|
||||
#define dprintf rep_dprintf
|
||||
int rep_dprintf(int fd, const char *format, ...);
|
||||
#endif
|
||||
|
||||
#ifndef PRINTF_ATTRIBUTE
|
||||
#if (__GNUC__ >= 3) && (__GNUC_MINOR__ >= 1 )
|
||||
/** Use gcc attribute to check printf fns. a1 is the 1-based index of
|
||||
@ -406,7 +396,17 @@ int rep_dprintf(int fd, const char *format, ...);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VASPRINTF
|
||||
#if !defined(HAVE_VDPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
#define vdprintf rep_vdprintf
|
||||
int rep_vdprintf(int fd, const char *format, va_list ap) PRINTF_ATTRIBUTE(2,0);
|
||||
#endif
|
||||
|
||||
#if !defined(HAVE_DPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
#define dprintf rep_dprintf
|
||||
int rep_dprintf(int fd, const char *format, ...) PRINTF_ATTRIBUTE(2,3);
|
||||
#endif
|
||||
|
||||
#if !defined(HAVE_VASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
#define vasprintf rep_vasprintf
|
||||
int rep_vasprintf(char **ptr, const char *format, va_list ap) PRINTF_ATTRIBUTE(2,0);
|
||||
#endif
|
||||
@ -421,11 +421,29 @@ int rep_snprintf(char *,size_t ,const char *, ...) PRINTF_ATTRIBUTE(3,4);
|
||||
int rep_vsnprintf(char *,size_t ,const char *, va_list ap) PRINTF_ATTRIBUTE(3,0);
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_ASPRINTF
|
||||
#if !defined(HAVE_ASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
#define asprintf rep_asprintf
|
||||
int rep_asprintf(char **,const char *, ...) PRINTF_ATTRIBUTE(2,3);
|
||||
#endif
|
||||
|
||||
#if !defined(HAVE_C99_VSNPRINTF)
|
||||
#ifdef REPLACE_BROKEN_PRINTF
|
||||
/*
|
||||
* We do not redefine printf by default
|
||||
* as it breaks the build if system headers
|
||||
* use __attribute__((format(printf, 3, 0)))
|
||||
* instead of __attribute__((format(__printf__, 3, 0)))
|
||||
*/
|
||||
#define printf rep_printf
|
||||
#endif
|
||||
int rep_printf(const char *, ...) PRINTF_ATTRIBUTE(1,2);
|
||||
#endif
|
||||
|
||||
#if !defined(HAVE_C99_VSNPRINTF)
|
||||
#define fprintf rep_fprintf
|
||||
int rep_fprintf(FILE *stream, const char *, ...) PRINTF_ATTRIBUTE(2,3);
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VSYSLOG
|
||||
#ifdef HAVE_SYSLOG
|
||||
#define vsyslog rep_vsyslog
|
||||
|
@ -1256,7 +1256,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
|
||||
|
||||
#endif
|
||||
|
||||
#ifndef HAVE_VASPRINTF
|
||||
#if !defined(HAVE_VASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int rep_vasprintf(char **ptr, const char *format, va_list ap)
|
||||
{
|
||||
int ret;
|
||||
@ -1278,8 +1278,7 @@ static int add_cnk_list_entry(struct pr_chunk_x **list,
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef HAVE_ASPRINTF
|
||||
#if !defined(HAVE_ASPRINTF) || !defined(HAVE_C99_VSNPRINTF)
|
||||
int rep_asprintf(char **ptr, const char *format, ...)
|
||||
{
|
||||
va_list ap;
|
||||
|
Loading…
Reference in New Issue
Block a user