+static void update_wide_area_servers(void) {
+ AvahiAddress a[AVAHI_MAX_WIDE_AREA_SERVERS];
+ unsigned n = 0;
+ char **p;
+
+ for (p = resolv_conf; *p && n < AVAHI_MAX_WIDE_AREA_SERVERS; p++) {
+ if (!avahi_address_parse(*p, AVAHI_PROTO_UNSPEC, &a[n]))
+ avahi_log_warn("Failed to parse address '%s', ignoring.", *p);
+ else
+ n++;
+ }
+
+ avahi_server_set_wide_area_servers(avahi_server, a, n);
+
+}
+