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

Reply via email to