Add type checking to 16/32/64 endianness converters
[fio.git] / log.c
1 #include <unistd.h>
2 #include <fcntl.h>
3 #include <string.h>
4 #include <stdarg.h>
5 #include <syslog.h>
6
7 #include "fio.h"
8
9 int log_valist(const char *str, va_list args)
10 {
11         if (log_syslog) {
12                 vsyslog(LOG_INFO, str, args);
13                 return 0;
14         } else {
15                 char buffer[1024];
16                 size_t len;
17
18                 len = vsnprintf(buffer, sizeof(buffer), str, args);
19                 return fwrite(buffer, len, 1, f_out);
20         }
21 }
22
23 int log_local(const char *format, ...)
24 {
25         char buffer[1024];
26         va_list args;
27         size_t len;
28
29         va_start(args, format);
30
31         if (log_syslog) {
32                 vsyslog(LOG_INFO, format, args);
33                 va_end(args);
34                 return 0;
35         } else {
36                 len = vsnprintf(buffer, sizeof(buffer), format, args);
37                 va_end(args);
38                 return fwrite(buffer, len, 1, f_out);
39         }
40 }
41
42 int log_info(const char *format, ...)
43 {
44         char buffer[1024];
45         va_list args;
46         size_t len;
47
48         va_start(args, format);
49         len = vsnprintf(buffer, sizeof(buffer), format, args);
50         va_end(args);
51
52         if (is_backend)
53                 return fio_server_text_output(buffer, len);
54         else
55                 return fwrite(buffer, len, 1, f_out);
56 }
57
58 int log_err(const char *format, ...)
59 {
60         char buffer[1024];
61         va_list args;
62         size_t len;
63
64         va_start(args, format);
65         len = vsnprintf(buffer, sizeof(buffer), format, args);
66         va_end(args);
67
68         if (is_backend)
69                 return fio_server_text_output(buffer, len);
70         else {
71                 if (f_err != stderr)
72                         fwrite(buffer, len, 1, stderr);
73
74                 return fwrite(buffer, len, 1, f_err);
75         }
76 }