diff options
author | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-01-27 15:10:58 +0100 |
---|---|---|
committer | Daniel Wagner <daniel.wagner@bmw-carit.de> | 2012-02-01 10:13:19 +0100 |
commit | 6ffce0e2a18ca49e82bde88d84ce593f5d8e29b3 (patch) | |
tree | b13bc660737656df6b89a5d2415f7d4a97b97b68 /src/ipconfig.c | |
parent | 772c408e91c52c9feedec9c5bf8ba936ab13e5fe (diff) | |
download | connman-6ffce0e2a18ca49e82bde88d84ce593f5d8e29b3.tar.gz connman-6ffce0e2a18ca49e82bde88d84ce593f5d8e29b3.tar.bz2 connman-6ffce0e2a18ca49e82bde88d84ce593f5d8e29b3.zip |
ipconfig: Add/del IP address from IP pool
Diffstat (limited to 'src/ipconfig.c')
-rw-r--r-- | src/ipconfig.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ipconfig.c b/src/ipconfig.c index 34a8ddcb..1f79d2ed 100644 --- a/src/ipconfig.c +++ b/src/ipconfig.c @@ -806,6 +806,9 @@ void __connman_ipconfig_newaddr(int index, int family, const char *label, connman_info("%s {add} address %s/%u label %s family %d", ipdevice->ifname, address, prefixlen, label, family); + if (type == CONNMAN_IPCONFIG_TYPE_IPV4) + __connman_ippool_newaddr(index, address); + if (ipdevice->config_ipv4 != NULL && family == AF_INET) connman_ipaddress_copy(ipdevice->config_ipv4->system, ipaddress); @@ -871,6 +874,9 @@ void __connman_ipconfig_deladdr(int index, int family, const char *label, connman_info("%s {del} address %s/%u label %s", ipdevice->ifname, address, prefixlen, label); + if (type == CONNMAN_IPCONFIG_TYPE_IPV4) + __connman_ippool_deladdr(index, address); + if ((ipdevice->flags & (IFF_RUNNING | IFF_LOWER_UP)) != (IFF_RUNNING | IFF_LOWER_UP)) return; |