MINOR: standard: add a new debug macro : fddebug()

This macro is usable like printf but sends messages to fd #-1, which has no
visible effect but is easy to spot in strace. This is very useful to put
tracers at many points during debugging sessions.
This commit is contained in:
Willy Tarreau 2012-05-13 00:21:17 +02:00
parent ce887fd3b2
commit 3d2f16f3c3
1 changed files with 6 additions and 0 deletions

View File

@ -705,4 +705,10 @@ char *gmt2str_log(char *dst, struct tm *tm, size_t size);
char *memprintf(char **out, const char *format, ...)
__attribute__ ((format(printf, 2, 3)));
/* debugging macro to emit messages using write() on fd #-1 so that strace sees
* them.
*/
#define fddebug(msg...) do { char *_m = NULL; memprintf(&_m, ##msg); if (_m) write(-1, _m, strlen(_m)); free(_m); } while (0)
#endif /* _COMMON_STANDARD_H */