diff options
-rw-r--r-- | avahi-core/entry.c | 2 | ||||
-rw-r--r-- | avahi-core/wide-area.c | 16 |
2 files changed, 17 insertions, 1 deletions
diff --git a/avahi-core/entry.c b/avahi-core/entry.c index 807efe5..5db8908 100644 --- a/avahi-core/entry.c +++ b/avahi-core/entry.c @@ -226,7 +226,7 @@ static AvahiEntry * server_add_internal( printf("+++ record of type %d named %s observed at entrypoint\n", r->key->type, r->key->name); /* sketch publishing function */ - /*wide_area_publish(r);*/ + /*wide_area_publish();*/ if (flags & AVAHI_PUBLISH_UPDATE) { AvahiRecord *old_record; diff --git a/avahi-core/wide-area.c b/avahi-core/wide-area.c index 40cca61..2f45b06 100644 --- a/avahi-core/wide-area.c +++ b/avahi-core/wide-area.c @@ -784,9 +784,25 @@ void wide_area_publish(AvahiRecord *r, char *zone, uint16_t id) { AvahiKey *k; p = avahi_dns_packet_new_update(0); /* TODO: revisit MTU */ + if (!p) { /*OOM check */ + avahi_log_error("avahi_dns_packet_new_update() failed."); + assert(); + } avahi_dns_packet_set_field(p, AVAHI_DNS_FIELD_ID, id); + /*zone to be updated */ k = avahi_key_new(zone, AVAHI_DNS_CLASS_ANY, AVAHI_DNS_TYPE_SOA); + if (!k) { /*OOM check */ + avahi_log_error("avahi_key_new() failed."); + assert(); + } + + p = avahi_dns_packet_append_key(p, k, 0); + + if (!p) { /*OOM check */ + avahi_log_error("appending of rdata failed."); + assert(); + } }
\ No newline at end of file |