Hi,
I'm currently doing some tests after moving from connman-0.64 to last
release. Maybe I"m wrong but it seems that now ip v4 address is not
correctly released when changing configuration from dhcp to manual. That
leads to have multiple IP on interface (is it quite similar to
http://lists.connman.net/pipermail/connman/2011-April/004699.html ?)
my test:
ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UNKNOWN qlen 1000
link/ether 00:1a:92:db:f2:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.0.11/24 brd 192.168.0.255 scope global eth0
./set-ipv4-method ethernet_001a92dbf27a_cable manual 10.23.23.23
255.255.255.0
ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UNKNOWN qlen 1000
link/ether 00:1a:92:db:f2:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.0.11/24 brd 192.168.0.255 scope global eth0
inet 10.23.23.23/24 brd 10.23.23.255 scope global eth0
./set-ipv4-method ethernet_001a92dbf27a_cable dhcp
ip addr show dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
state UNKNOWN qlen 1000
link/ether 00:1a:92:db:f2:7a brd ff:ff:ff:ff:ff:ff
inet 192.168.0.11/24 brd 192.168.0.255 scope global eth0
I found something which seems to correct this, but I'm not sure it's the
correct way to do it
---
src/network.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/src/network.c b/src/network.c
index 123857e..1082e2d 100644
--- a/src/network.c
+++ b/src/network.c
@@ -1137,6 +1137,7 @@ int __connman_network_clear_ipconfig(struct
connman_network *network,
__connman_ipconfig_address_remove(ipconfig);
break;
case CONNMAN_IPCONFIG_METHOD_DHCP:
+ __connman_ipconfig_address_remove(ipconfig);
__connman_dhcp_stop(network);
break;
}
--
1.7.1
regards
Thierry
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman