blob: f507f50cd54c9fb6e75f71708b9f6fba8a164d89 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
/*
* Copyright (C) 2007 Stig Venaas <venaas@uninett.no>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*/
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <stdarg.h>
#include "debug.h"
static uint8_t debug_level = 0;
void debug(uint8_t level, char *format, ...) {
extern int errno;
if (level >= debug_level) {
va_list ap;
va_start(ap, format);
vfprintf(stderr, format, ap);
va_end(ap);
if (errno) {
fprintf(stderr, ": ");
perror(NULL);
fprintf(stderr, "errno=%d\n", errno);
} else
fprintf(stderr, "\n");
}
if (level >= DBG_ERR)
exit(1);
}
|