summaryrefslogtreecommitdiff
path: root/include/ipconfig.h
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2012-01-03 14:36:26 +0200
committerDaniel Wagner <daniel.wagner@bmw-carit.de>2012-01-05 11:09:16 +0100
commitfc3d4097fcdbbcc6ca870ed24fec47bfb15ad90a (patch)
treea5c67ed314738ce1c385cd39a4b8a7edbad23057 /include/ipconfig.h
parent86adee5b6fa2ee97ff28d412a620dc3028a209e0 (diff)
downloadconnman-fc3d4097fcdbbcc6ca870ed24fec47bfb15ad90a.tar.gz
connman-fc3d4097fcdbbcc6ca870ed24fec47bfb15ad90a.tar.bz2
connman-fc3d4097fcdbbcc6ca870ed24fec47bfb15ad90a.zip
ipconfig: Have separate callbacks for route changes.
Route changes should not trigger ip_bound or ip_release callbacks in service.c as that can cause too early transition into IPv6 ready state. The ip_bound (in __connman_ipconfig_newaddr()) and ip_release (in __connman_ipconfig_deladdr()) are enough to trigger a transition in IPv6 state. This also prevents too many notifier calls in session as we only notify session when address changes.
Diffstat (limited to 'include/ipconfig.h')
-rw-r--r--include/ipconfig.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/ipconfig.h b/include/ipconfig.h
index 34463eb9..295bba8d 100644
--- a/include/ipconfig.h
+++ b/include/ipconfig.h
@@ -81,6 +81,8 @@ struct connman_ipconfig_ops {
void (*lower_down) (struct connman_ipconfig *ipconfig);
void (*ip_bound) (struct connman_ipconfig *ipconfig);
void (*ip_release) (struct connman_ipconfig *ipconfig);
+ void (*route_set) (struct connman_ipconfig *ipconfig);
+ void (*route_unset) (struct connman_ipconfig *ipconfig);
};
struct connman_ipconfig *connman_ipconfig_create(int index,