From bb14e0a8aa3173c8a6d80b1a9c8b300a452ee9f1 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 12 Oct 2005 02:37:08 +0000 Subject: * drop AVAHI_RESOLVER_TIMEOUT, AVAHI_RESOLVER_NOT_FOUND and AVAHI_BROWSER_NOT_FOUND, use AVAHI_xxx_FAILURE instead * set the client/server errno variable when AVAHI_xxx_FAILURE happens * update DBUS interface accordingly, pass errno value with Failure events * Pass DNS return codes to the app by wrapping them in avahi error codes git-svn-id: file:///home/lennart/svn/public/avahi/trunk@732 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe --- avahi-core/resolve-service.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'avahi-core/resolve-service.c') diff --git a/avahi-core/resolve-service.c b/avahi-core/resolve-service.c index 85ac3d5..a897546 100644 --- a/avahi-core/resolve-service.c +++ b/avahi-core/resolve-service.c @@ -81,8 +81,6 @@ static void finish(AvahiSServiceResolver *r, AvahiResolverEvent event) { switch (event) { case AVAHI_RESOLVER_FAILURE: - case AVAHI_RESOLVER_NOT_FOUND: - case AVAHI_RESOLVER_TIMEOUT: r->callback( r, @@ -151,9 +149,8 @@ static void time_event_callback(AvahiTimeEvent *e, void *userdata) { assert(e); assert(r); - avahi_log_debug("timeout"); - - finish(r, AVAHI_RESOLVER_TIMEOUT); + avahi_server_set_errno(r->server, AVAHI_ERR_TIMEOUT); + finish(r, AVAHI_RESOLVER_FAILURE); } static void start_timeout(AvahiSServiceResolver *r) { @@ -346,9 +343,7 @@ static void record_browser_callback( case AVAHI_BROWSER_ALL_FOR_NOW: break; - case AVAHI_BROWSER_NOT_FOUND: case AVAHI_BROWSER_FAILURE: - if (rr == r->record_browser_a && r->record_browser_aaaa) { /* We were looking for both AAAA and A, and the other query is still living, so we'll not die */ @@ -364,7 +359,6 @@ static void record_browser_callback( break; } - /* Hmm, everything's lost, tell the user */ if (r->record_browser_srv) @@ -378,7 +372,7 @@ static void record_browser_callback( r->record_browser_srv = r->record_browser_txt = r->record_browser_a = r->record_browser_aaaa = NULL; - finish(r, event == AVAHI_BROWSER_FAILURE ? AVAHI_RESOLVER_FAILURE : AVAHI_RESOLVER_NOT_FOUND); + finish(r, AVAHI_RESOLVER_FAILURE); break; } } -- cgit