From: Patrik Flykt <[email protected]>
Hi,
Here's a fix for bug #17738. The bug was that after disconnecting a service
with static IP addresses was never able to be reconnected again.
Two things causing this was found:
- When disconnecting, the ipconfig information is zeroed out. This is not
a problem for DHCP, as the address information is always received from
the server when connecting. For static IP adresses there is nothing
external configuring them, thus we re-read them for a service (from
storage) when connecting (patches 01 and 02).
- All service related information is saved in every state. In unknown,
associating and idle, the ipconfig is not valid. IP addresses are left
as is in the configuration file, because the code does not save IP
strings that point to NULL. The integer prefix length is always saved,
and thus it's always saved as zero in these states. Patch 03 attempts
to fix this logic by not saving ipconfig in all states.
Cheers,
Patrik
Patrik Flykt (3):
service: Factor out reading ipconfigs from create functions
network: Re-read ipconfig from service when setting manual addresses
service: Save ipconfig in states where ipconfig is set up
src/connman.h | 3 +-
src/network.c | 4 +++
src/service.c | 81 +++++++++++++++++++++++++++++++++++++-------------------
3 files changed, 59 insertions(+), 29 deletions(-)
--
1.7.2.5
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman