Rename project to umdns
[project/mdnsd.git] / util.h
1 /*
2  * Copyright (C) 2014 John Crispin <blogic@openwrt.org>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 2.1
6  * as published by the Free Software Foundation
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  */
13
14 #ifndef _UTIL_H__
15 #define _UTIL_H__
16
17 #include <stdint.h>
18 #include <time.h>
19
20 #define DBG(level, fmt, ...) do { \
21         if (debug >= level) \
22                 fprintf(stderr, "mdnsd: %s (%d): " fmt, __func__, __LINE__, ## __VA_ARGS__); \
23         } while (0)
24
25 #define MDNS_BUF_LEN    (8 * 1024)
26 #define HOSTNAME_LEN    256
27
28 extern int debug;
29 extern uint8_t mdns_buf[MDNS_BUF_LEN];
30 extern char mdns_hostname[HOSTNAME_LEN];
31 extern char mdns_hostname_local[HOSTNAME_LEN + 6];
32
33 extern void get_hostname(void);
34 extern uint32_t rand_time_delta(uint32_t t);
35 extern time_t monotonic_time(void);
36
37 #endif