From: Tomasz Bursztyka Date: Mon, 29 Aug 2011 15:25:01 +0000 (+0300) Subject: wispr: Adding wispr logic entries in service and wpad X-Git-Tag: 2.0_alpha~1137 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b8f54ce4609bd3df87742d6a9b907fba9b84b7b6;p=framework%2Fconnectivity%2Fconnman.git wispr: Adding wispr logic entries in service and wpad --- diff --git a/src/service.c b/src/service.c index 195b8e9..841d9a3 100644 --- a/src/service.c +++ b/src/service.c @@ -4018,6 +4018,8 @@ static int service_indicate_state(struct connman_service *service) default_changed(); + __connman_wispr_stop(service); + __connman_wpad_stop(service); update_nameservers(service); @@ -4138,17 +4140,22 @@ static void check_proxy_setup(struct connman_service *service) */ if (service->proxy != CONNMAN_SERVICE_PROXY_METHOD_UNKNOWN) - return; + goto done; if (service->proxy_config != CONNMAN_SERVICE_PROXY_METHOD_UNKNOWN && (service->proxy_config != CONNMAN_SERVICE_PROXY_METHOD_AUTO || service->pac != NULL)) - return; + goto done; if (__connman_wpad_start(service) < 0) { service->proxy = CONNMAN_SERVICE_PROXY_METHOD_DIRECT; __connman_notifier_proxy_changed(service); } + + return; + +done: + __connman_wispr_start(service, CONNMAN_IPCONFIG_TYPE_IPV4); } int __connman_service_ipconfig_indicate_state(struct connman_service *service, @@ -4198,6 +4205,8 @@ int __connman_service_ipconfig_indicate_state(struct connman_service *service, if (type == CONNMAN_IPCONFIG_TYPE_IPV4) check_proxy_setup(service); + else + __connman_wispr_start(service, type); break; case CONNMAN_SERVICE_STATE_ONLINE: break; diff --git a/src/wpad.c b/src/wpad.c index 0069c49..931423c 100644 --- a/src/wpad.c +++ b/src/wpad.c @@ -85,6 +85,9 @@ static void wpad_result(GResolvResultStatus status, g_free(url); + __connman_wispr_start(wpad->service, + CONNMAN_IPCONFIG_TYPE_IPV4); + return; } @@ -113,6 +116,9 @@ static void wpad_result(GResolvResultStatus status, failed: connman_service_set_proxy_method(wpad->service, CONNMAN_SERVICE_PROXY_METHOD_DIRECT); + + __connman_wispr_start(wpad->service, + CONNMAN_IPCONFIG_TYPE_IPV4); } int __connman_wpad_start(struct connman_service *service)