notifier: Add proxy changed hook
authorSamuel Ortiz <sameo@linux.intel.com>
Wed, 12 Jan 2011 22:56:58 +0000 (23:56 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Wed, 12 Jan 2011 23:37:26 +0000 (00:37 +0100)
With asynchronous WPAD operations, the proxy_changed notifier hook will
allow for a proper pacrunner configuration to be created.

include/notifier.h
src/connman.h
src/notifier.c

index 7c1714e..db2ea5c 100644 (file)
@@ -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);
index 7c1395b..37946f6 100644 (file)
@@ -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);
index bf6aaa1..23774ef 100644 (file)
@@ -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);