Hi Patrik,

On 03/30/2012 04:24 PM, patrik.fl...@linux.intel.com wrote:
From: Patrik Flykt<patrik.fl...@linux.intel.com>

        Hi,

This patch set implements PreferredTechnologies described in
http://lists.connman.net/pipermail/connman/2012-March/008605.html.
It took some time longer than expected, as I went in the wrong direction
a couple of times on the way.

With this patch set ordering of the services is not changed. Instead
when autoconnecting, a new sequence of preferred services is created
which is tried first. Should none of the services in the preferred
service list start connecting, a normal autoconnect using the service
list/sequence is run. The autoconnection code is refactored with some
modifications for preferred services, and can thus work with either
the service list or the preferred technology list (patch 07).

The preferred technology list is created by going through the service
list one technology at a time (patch 05). The list of preferred
technologies is read from main.conf (patch 02) and converted to service
types with a helper function (patch 04).

When a preferred service could go online or ready (patch 09), the current
service is compared against the previous default (patch 08). If the service
is found to be more preferred than the default online one, the order of these
services are switched (patch 06). Also, if neither service is preferred or
the online check failed for the new service, make a new autoconnect
attempt to find another preferred service that could go online (patch 09).

Two minor issues were also fixed (patches 01 and 03) and TODO updated
(patch 10).

Cheers,

        Patrik


Patrik Flykt (10):
   main: Free g_key_file config immediately after use
   main: Add 'PreferredTechnologies' configuration file option
   main: Consistently use semicolon as list separator
   service: Add __connman_service_string2type() function
   service: Create preferred technology list
   service: Factor out code for switching two services
   service: Try preferred technologies first, then normal autoconnect
   service: Function for checking and updating service ordering
   service: Update ordering regarding connected preferred service
   TODO: Mark PreferredTechnologies (PriorityTechnologies) done

  TODO              |   11 ---
  include/setting.h |    1 +
  src/connman.h     |    1 +
  src/main.c        |   30 ++++++--
  src/service.c     |  216 ++++++++++++++++++++++++++++++++++++++++++++---------
  5 files changed, 206 insertions(+), 53 deletions(-)

I have questions about PreferredTechnologies(or am I correct?):
+ If PreferredTechnologies is empty, nothing changes.
+ PreferredTechnologies is used for both autoconnect and auto switching.
  (example of autocnnect is autoconnect when system reboots)
+ For autoconnect, connman will connect service one by one and will stop
  connect to other services if a service is connected.
+ For auto switching, connman will try to connect to a service if:
        + it's the new service of higher priority technology
                + Is it necessary that favorite and autoconnect of
                  the service must be true?
        + Anything else? (For example, connman fails to connect to an
          higher priority WiFi service with weak signal, so then connected
          to a 3G service. Later, the wifi service signal becomes strong
          enough to connect)
+ "connected" in auto switching means that a service state is ready/online
        + If current connection is 'online', and connman finds a higher
          priority service in state 'ready', what will happen?

Bests
Jeff

_______________________________________________
connman mailing list
connman@connman.net
http://lists.connman.net/listinfo/connman

Reply via email to