]> jfr.im git - irc/evilnet/x3.git/blame - src/slab-read.c
Added tempshun support to OpServ trace and addalert
[irc/evilnet/x3.git] / src / slab-read.c
CommitLineData
1136f709 1#include "compat.h"
2
3struct slab_log_entry
4{
5 struct timeval tv;
6 void *slab;
7 ssize_t size;
8};
9
10static void
11read_log_file(const char *name)
12{
13 struct slab_log_entry sle;
14 FILE *log;
15
16 log = fopen(name, "r");
17 if (!log)
18 {
19 fprintf(stderr, "Unable to open %s: %s\n", name, strerror(errno));
20 return;
21 }
22
23 while (fread(&sle, sizeof(sle), 1, log) == 1)
24 {
25 fprintf(stdout, "%ld.%06ld %p ", (long)sle.tv.tv_sec, (long)sle.tv.tv_usec, sle.slab);
26 if (sle.size > 0)
27 {
28 fprintf(stdout, "-> %zd\n", sle.size);
29 }
30 else if (sle.size < 0)
31 {
32 fprintf(stdout, "<- %zd\n", -sle.size);
33 }
34 else /* slze.size == 0 */
35 {
36 fprintf(stdout, "unmap\n");
37 }
38 }
39}
40
41int
42main(int argc, char *argv[])
43{
44 int ii;
45
46 if (argc < 2)
47 {
48 fprintf(stderr, "Usage: %s <logfile ...>\n", argv[0]);
49 return 1;
50 }
51
52 for (ii = 1; ii < argc; ++ii)
53 {
54 read_log_file(argv[ii]);
55 }
56 return 0;
57}