From: Patrik Flykt <[email protected]>
Hi,
There are two semi-dependent things in this patch set: first
PreferredTechnologies fixes and after that a SingleConnection implementation.
The autoconnection request for PreferredTechnologies is removed as being mostly
useless (patch 01) whereafter PreferredTechnologies is simpified to stop
connecting once it discovers an already connected service either in 'ready'
or 'online' state (patch 02). As a result, the behavioral description in
main.conf is updated (patch 03). A real bug was discovered, it turned out that
switching of the service order was done the wrong way and thus the order was
still the same as after the switch attempt. It was also discovered that
if __connman_connection_update_gateway() was left to be called later in
service_indicate_state(), the service order was not updated properly (patch
04).
SingleConnection documentation has been added (patch 05) and main.conf variable
added (patch 06) with the implementation itself called from
service_indicate_state() (patch 07). When enabled, SingleConnection will
disconnect all other connected services leaving only the current one connected.
When SingleConnection is enabled and PreferredTechnologies is set, a user
manually connecting to a non-preferred or less preferred service will notice
PreferredTechnology to kick in, connect a service from a more preferred
technology, and remove the user connected service due to the enabled
SingleConnection. To mitigate this, the service's user connected status is now
remembered until disconnect (patch 08) and in the case of enabled
SingleConnection setting, PreferredTechnologies is not run (patch 09).
Please review,
Patrik
Patrik Flykt (9):
service: Don't trigger autoconnect when neither service is preferred
service: A preferred service in state ready is good enough
main.conf: Update preferred technology description
service: Fix default service switching and setting gateway
main.conf: Add SingleConnection description
main: Add SingleConnection main.conf variable
service: Keep only a single connection if configured to do so
service: Clear user connected flag on disconnect
service: Prefer user connected services in SingleConnection
src/main.c | 12 ++++++++++
src/main.conf | 19 +++++++++++-----
src/service.c | 69 +++++++++++++++++++++++++++++++++++++++++++++++----------
3 files changed, 82 insertions(+), 18 deletions(-)
--
1.7.10.4
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman