From 970e2f1f36c5f91066d5d989d9129553617f33ff Mon Sep 17 00:00:00 2001 From: Samuel Ortiz Date: Wed, 12 Jan 2011 23:56:58 +0100 Subject: [PATCH] notifier: Add proxy changed hook With asynchronous WPAD operations, the proxy_changed notifier hook will allow for a proper pacrunner configuration to be created. --- include/notifier.h | 1 + src/connman.h | 1 + src/notifier.c | 12 ++++++++++++ 3 files changed, 14 insertions(+) diff --git a/include/notifier.h b/include/notifier.h index 7c1714e..db2ea5c 100644 --- a/include/notifier.h +++ b/include/notifier.h @@ -45,6 +45,7 @@ struct connman_notifier { void (*service_enabled) (enum connman_service_type type, connman_bool_t enabled); void (*offline_mode) (connman_bool_t enabled); + void (*proxy_changed) (struct connman_service *service); }; int connman_notifier_register(struct connman_notifier *notifier); diff --git a/src/connman.h b/src/connman.h index 7c1395b..37946f6 100644 --- a/src/connman.h +++ b/src/connman.h @@ -556,6 +556,7 @@ void __connman_notifier_connect(enum connman_service_type type); void __connman_notifier_disconnect(enum connman_service_type type); void __connman_notifier_offlinemode(connman_bool_t enabled); void __connman_notifier_default_changed(struct connman_service *service); +void __connman_notifier_proxy_changed(struct connman_service *service); connman_bool_t __connman_notifier_is_registered(enum connman_service_type type); connman_bool_t __connman_notifier_is_enabled(enum connman_service_type type); diff --git a/src/notifier.c b/src/notifier.c index bf6aaa1..23774ef 100644 --- a/src/notifier.c +++ b/src/notifier.c @@ -385,6 +385,18 @@ void __connman_notifier_default_changed(struct connman_service *service) } } +void __connman_notifier_proxy_changed(struct connman_service *service) +{ + GSList *list; + + for (list = notifier_list; list; list = list->next) { + struct connman_notifier *notifier = list->data; + + if (notifier->proxy_changed) + notifier->proxy_changed(service); + } +} + static void offlinemode_changed(dbus_bool_t enabled) { DBG("enabled %d", enabled); -- 2.7.4