summaryrefslogtreecommitdiff
path: root/src/ipconfig.c
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 /src/ipconfig.c
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 'src/ipconfig.c')
-rw-r--r--src/ipconfig.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ipconfig.c b/src/ipconfig.c
index 20207a1f..950229de 100644
--- a/src/ipconfig.c
+++ b/src/ipconfig.c
@@ -941,8 +941,8 @@ void __connman_ipconfig_newroute(int index, int family, unsigned char scope,
if (ipconfig->ops == NULL)
continue;
- if (ipconfig->ops->ip_bound)
- ipconfig->ops->ip_bound(ipconfig);
+ if (ipconfig->ops->route_set)
+ ipconfig->ops->route_set(ipconfig);
}
}
@@ -1003,8 +1003,8 @@ void __connman_ipconfig_delroute(int index, int family, unsigned char scope,
if (ipconfig->ops == NULL)
continue;
- if (ipconfig->ops->ip_release)
- ipconfig->ops->ip_release(ipconfig);
+ if (ipconfig->ops->route_unset)
+ ipconfig->ops->route_unset(ipconfig);
}
}