--- /dev/null
+#ifndef FAILURES_PRIVATE_H
+#define FAILURES_PRIVATE_H
+
+typedef int
+failure_write_to_file_t(enum log_type type, string_t *data, size_t prefix_len);
+typedef string_t *
+failure_format_str_t(const struct failure_context *ctx, size_t *prefix_len_r,
+ const char *format, va_list args);
+typedef void failure_on_handler_failure_t(const struct failure_context *ctx);
+typedef void failure_post_handler_t(const struct failure_context *ctx);
+
+struct failure_handler_vfuncs {
+ failure_write_to_file_t *write;
+ failure_format_str_t *format;
+ failure_on_handler_failure_t *on_handler_failure;
+ failure_post_handler_t *post_handler;
+};
+
+struct failure_handler_config {
+ int fatal_err_reset;
+ struct failure_handler_vfuncs *v;
+};
+
+extern struct failure_handler_config failure_handler;
+
+#endif
#include "backtrace-string.h"
#include "printf-format-fix.h"
#include "write-full.h"
+#include "failures-private.h"
#include <unistd.h>
#include <fcntl.h>
static void i_failure_send_option(const char *key, const char *value);
static int internal_send_split(string_t *full_str, size_t prefix_len);
-typedef int (*failure_write_to_file_t)(enum log_type type, string_t *data, size_t prefix_len);
-typedef string_t *(*failure_format_str_t)(const struct failure_context *ctx,
- size_t *prefix_len_r, const char *format,
- va_list args);
-typedef void (*failure_on_handler_failure_t)(const struct failure_context *ctx);
-typedef void (*failure_post_handler_t)(const struct failure_context *ctx);
-
static string_t * ATTR_FORMAT(3, 0) default_format(const struct failure_context *ctx,
size_t *prefix_len_r ATTR_UNUSED,
const char *format,
{
}
-struct failure_handler_vfuncs {
- failure_write_to_file_t write;
- failure_format_str_t format;
- failure_on_handler_failure_t on_handler_failure;
- failure_post_handler_t post_handler;
-};
-
-struct failure_handler_config {
- int fatal_err_reset;
- struct failure_handler_vfuncs *v;
-};
-
static struct failure_handler_vfuncs default_handler_vfuncs = {
.write = &default_write,
.format = &default_format,