summaryrefslogtreecommitdiffstats
path: root/avahi-client/resolver.c
diff options
context:
space:
mode:
Diffstat (limited to 'avahi-client/resolver.c')
-rw-r--r--avahi-client/resolver.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/avahi-client/resolver.c b/avahi-client/resolver.c
index aaff502..c564a97 100644
--- a/avahi-client/resolver.c
+++ b/avahi-client/resolver.c
@@ -517,6 +517,7 @@ int avahi_host_name_resolver_block(AvahiHostNameResolver *r) {
AvahiAddressResolver * avahi_address_resolver_new_a(
AvahiClient *client,
AvahiIfIndex interface,
+ AvahiProtocol protocol,
const AvahiAddress *a,
AvahiAddressResolverCallback callback,
void *userdata) {
@@ -525,11 +526,15 @@ AvahiAddressResolver * avahi_address_resolver_new_a(
assert (a);
- avahi_address_snprint (addr, sizeof (addr), a);
+ if (!avahi_address_snprint (addr, sizeof (addr), a)) {
+ avahi_client_set_errno(client, AVAHI_ERR_INVALID_ADDRESS);
+ return NULL;
+ }
- return avahi_address_resolver_new (client, interface,
- a->family, addr,
- callback, userdata);
+ return avahi_address_resolver_new (
+ client, interface, protocol,
+ addr,
+ callback, userdata);
}
AvahiAddressResolver * avahi_address_resolver_new(