Hi Samuel,
thanks for the comments to v1 patchset. This second version
fixes the issues you found out:
Patch #4:
- connman_service_indicate_state() prototype changed so that
only one state can be changed at a time
- is_connected() and is_connecting() function prototypes changed
back to what they were before
- unnecessary checks in service_compare() removed
- extra debugging removed
Patch #6:
- simplified the combined state checking (removed the counter that
was present in v1 patch)
Patch #9:
- fixed the incorrect state
Patch #11:
- reworked the patch, hope it looks more sane now
Patch #7:
- The IPv6 default gateway issue is still open, so far I have not
seen any problems with it (=not setting any routes in connman).
As you noticed the kernel automagically creates a default route
but that route is using link local address (at least in my test
system with 2.6.32 kernel). Also kernel creates routes to all
autoconfigured networks to specific interface.
I have a patch pending that clears the routes if user turns the
IPv6 off but I am not sure if that patch is really the correct way
to do it. I will send it to mailing list for comments after some
more testing. Anyway, this route problem should not affect this
patchset.
The v2 patchset adds additional patch #14 which was needed because
of reworking of patches #4 and #9.
Regards,
Jukka
Jukka Rissanen (15):
ipconfig: Clear the ipaddress pointers when address is deleted.
ipv6: Add property for IPv6 nameserver
ipconfig: Added helper function that returns the config type.
service: Split service state to IPv4 and IPv6 parts.
ipconfig: Enable or disable IPv6 when loading the saved service.
service: Only disconnect the service if both IPv4 and IPv6 states
agree.
network: Enable IPv6 autoconf to change the service state to ready.
network: Set service state correctly when network is disconnected.
network: Set service state correctly when ipconfig is cleared.
service: IPv6 autoconf will change the service state.
service: Check service state properly if user changes method.
service: Change IPv4 state when address is released.
ipconfig: Enable ipconfig if loading autoconfigurable IPv6 config.
service: Do not change state if combined state does not change.
todo: Remove IPv6 enhancements as they are implemented.
TODO | 13 --
include/property.h | 1 +
src/connection.c | 6 +-
src/connman.h | 5 +-
src/ipconfig.c | 30 ++++-
src/location.c | 3 +-
src/network.c | 72 ++++++++-
src/provider.c | 27 +++-
src/service.c | 416 ++++++++++++++++++++++++++++++++++++++++++++--------
9 files changed, 472 insertions(+), 101 deletions(-)
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman