X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fmdnsd.git;a=blobdiff_plain;f=util.c;h=05f02b2061181e03c167aa3737b8fbd8d797c091;hp=0c4a4eed68da2e336ffe1341b8c5d664e2312140;hb=444987db98c88dfef6b3965051bf2aba6114aaa2;hpb=f13f07d145515b80b6f7cc3e1b06dc262ded174d diff --git a/util.c b/util.c index 0c4a4ee..05f02b2 100644 --- a/util.c +++ b/util.c @@ -33,8 +33,12 @@ #include "dns.h" #include "util.h" +uint8_t mdns_buf[MDNS_BUF_LEN]; int debug = 0; +char mdns_hostname[HOSTNAME_LEN]; +char mdns_hostname_local[HOSTNAME_LEN + 6]; + static void signal_shutdown(int signal) { @@ -72,15 +76,18 @@ rand_time_delta(uint32_t t) return val; } -char* -get_hostname(void) +void get_hostname(void) { - static struct utsname utsname; + struct utsname utsname; + + mdns_hostname[0] = 0; + mdns_hostname_local[0] = 0; if (uname(&utsname) < 0) - return NULL; + return; - return utsname.nodename; + snprintf(mdns_hostname, sizeof(mdns_hostname), "%s", utsname.nodename); + snprintf(mdns_hostname_local, sizeof(mdns_hostname_local), "%s.local", utsname.nodename); } void*