#include <errno.h>
#include <stdarg.h>
#include <stdio.h>
-#include <share.h>
+#include <ust-share.h>
#include "ust-tid.h"
+#include "ust-snprintf.h"
enum ust_loglevel {
UST_LOGLEVEL_UNKNOWN = 0,
/* We sometimes print in the tracing path, and tracing can occur in
* signal handlers, so we must use a print method which is signal safe.
*/
-
-extern int ust_safe_snprintf(char *str, size_t n, const char *fmt, ...)
- __attribute__ ((format (printf, 3, 4)));
-
/* Can't use dynamic allocation. Limit ourselves to USTERR_MAX_LEN chars. */
/* Add end of string in case of buffer overflow. */
#define sigsafe_print_err(fmt, args...) \
____saved_errno = errno; /* signal-safety */ \
ust_safe_snprintf(____buf, sizeof(____buf), fmt, ## args); \
____buf[sizeof(____buf) - 1] = 0; \
- patient_write(STDERR_FILENO, ____buf, strlen(____buf)); \
+ ust_patient_write(STDERR_FILENO, ____buf, strlen(____buf)); \
errno = ____saved_errno; /* signal-safety */ \
fflush(stderr); \
} \