modify logging mechanism to support redirection of std streams and logfile reopen
[archipelago] / xseg / sys / domain.h
1 #ifndef _SYS_DOMAIN_H
2 #define _SYS_DOMAIN_H
3
4 #define MAX_PEER_NAME 64
5 #define MAX_LOGFILE_LEN 1024
6
7 extern char __xseg_errbuf[4096];
8 void __xseg_log(const char *msg);
9 extern int (*xseg_snprintf)(char *str, size_t size, const char *format, ...);
10
11 struct log_ctx;
12 enum log_level { E = 0, W = 1, I = 2, D = 3};
13 extern int (*init_logctx)(struct log_ctx *lc, char *peer_name,
14                 enum log_level log_level, char *logfile, uint32_t flags);
15 extern int (*renew_logctx)(struct log_ctx *lc, char *peer_name,
16                 enum log_level log_level, char *logfile, uint32_t flags);
17 void __xseg_log2(struct log_ctx *lc, enum log_level level, char *fmt, ...);
18
19 void xseg_printtrace(void);
20 #endif