diff options
-rw-r--r-- | doc/overview-api.txt | 21 | ||||
-rw-r--r-- | doc/service-api.txt | 4 | ||||
-rw-r--r-- | include/service.h | 7 | ||||
-rw-r--r-- | src/service.c | 6 |
4 files changed, 26 insertions, 12 deletions
diff --git a/doc/overview-api.txt b/doc/overview-api.txt index 90ae4df9..8ab687f8 100644 --- a/doc/overview-api.txt +++ b/doc/overview-api.txt @@ -292,15 +292,18 @@ the "idle" state since the service is not connected. V | | +---------------+ | | | configuration |-----------------+ | - +---------------+ error | - | | - | success | - V | - +---------------+ | - | ready | | - +---------------+ | - | | - | success | + +---------------+ error | | + | | | + | success | | + V | | + +---------------+ +-------------+ | + | ready |----------->| login | | + +---------------+ +-------------+ | + | | | + | success | | + | | | + +---------------------------+ | + | authentication | V | +---------------+ | | online |<----------------+ | diff --git a/doc/service-api.txt b/doc/service-api.txt index b5617a6f..e488d7af 100644 --- a/doc/service-api.txt +++ b/doc/service-api.txt @@ -116,6 +116,10 @@ Properties string State [readonly] Valid states are "idle", "failure", "association", "configuration" and "ready". + Also "login" and "online" states are used. The + state "online" signals that an Internet connection + is available and has been verified. + string Error [readonly] The service error status details. diff --git a/include/service.h b/include/service.h index 170cd6c8..8abca13f 100644 --- a/include/service.h +++ b/include/service.h @@ -71,9 +71,10 @@ enum connman_service_state { CONNMAN_SERVICE_STATE_ASSOCIATION = 2, CONNMAN_SERVICE_STATE_CONFIGURATION = 3, CONNMAN_SERVICE_STATE_READY = 4, - CONNMAN_SERVICE_STATE_ONLINE = 5, - CONNMAN_SERVICE_STATE_DISCONNECT = 6, - CONNMAN_SERVICE_STATE_FAILURE = 7, + CONNMAN_SERVICE_STATE_LOGIN = 5, + CONNMAN_SERVICE_STATE_ONLINE = 6, + CONNMAN_SERVICE_STATE_DISCONNECT = 7, + CONNMAN_SERVICE_STATE_FAILURE = 8, }; enum connman_service_error { diff --git a/src/service.c b/src/service.c index 4e5a43fc..1eccbac4 100644 --- a/src/service.c +++ b/src/service.c @@ -203,6 +203,8 @@ static const char *state2string(enum connman_service_state state) return "configuration"; case CONNMAN_SERVICE_STATE_READY: return "ready"; + case CONNMAN_SERVICE_STATE_LOGIN: + return "login"; case CONNMAN_SERVICE_STATE_ONLINE: return "online"; case CONNMAN_SERVICE_STATE_DISCONNECT: @@ -431,6 +433,7 @@ static void append_ethernet(DBusMessageIter *iter, void *user_data) case CONNMAN_SERVICE_STATE_ASSOCIATION: case CONNMAN_SERVICE_STATE_CONFIGURATION: case CONNMAN_SERVICE_STATE_READY: + case CONNMAN_SERVICE_STATE_LOGIN: case CONNMAN_SERVICE_STATE_ONLINE: break; } @@ -452,6 +455,7 @@ static void append_ipv4(DBusMessageIter *iter, void *user_data) case CONNMAN_SERVICE_STATE_CONFIGURATION: return; case CONNMAN_SERVICE_STATE_READY: + case CONNMAN_SERVICE_STATE_LOGIN: case CONNMAN_SERVICE_STATE_ONLINE: break; } @@ -481,6 +485,7 @@ static void append_proxy(DBusMessageIter *iter, void *user_data) case CONNMAN_SERVICE_STATE_CONFIGURATION: return; case CONNMAN_SERVICE_STATE_READY: + case CONNMAN_SERVICE_STATE_LOGIN: case CONNMAN_SERVICE_STATE_ONLINE: break; } @@ -846,6 +851,7 @@ static connman_bool_t is_connecting(struct connman_service *service) case CONNMAN_SERVICE_STATE_FAILURE: case CONNMAN_SERVICE_STATE_DISCONNECT: case CONNMAN_SERVICE_STATE_READY: + case CONNMAN_SERVICE_STATE_LOGIN: case CONNMAN_SERVICE_STATE_ONLINE: break; case CONNMAN_SERVICE_STATE_ASSOCIATION: |