service: Simplify nameserver route adding and removing
[framework/connectivity/connman.git] / include / notifier.h
index 046b8bf..4412717 100644 (file)
@@ -2,7 +2,7 @@
  *
  *  Connection Manager
  *
- *  Copyright (C) 2007-2009  Intel Corporation. All rights reserved.
+ *  Copyright (C) 2007-2012  Intel Corporation. All rights reserved.
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License version 2 as
@@ -22,7 +22,8 @@
 #ifndef __CONNMAN_NOTIFIER_H
 #define __CONNMAN_NOTIFIER_H
 
-#include <connman/device.h>
+#include <connman/service.h>
+#include <connman/ipconfig.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -41,13 +42,23 @@ extern "C" {
 struct connman_notifier {
        const char *name;
        int priority;
-       void (*device_enabled) (enum connman_device_type type,
+       void (*default_changed) (struct connman_service *service);
+       void (*service_add) (struct connman_service *service,
+                               const char *name);
+       void (*service_remove) (struct connman_service *service);
+       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);
+       void (*service_state_changed) (struct connman_service *service,
+                                       enum connman_service_state state);
+       void (*ipconfig_changed) (struct connman_service *service,
+                                       struct connman_ipconfig *ipconfig);
+       void (*idle_state) (connman_bool_t idle);
 };
 
-extern int connman_notifier_register(struct connman_notifier *notifier);
-extern void connman_notifier_unregister(struct connman_notifier *notifier);
+int connman_notifier_register(struct connman_notifier *notifier);
+void connman_notifier_unregister(struct connman_notifier *notifier);
 
 #ifdef __cplusplus
 }