diff options
author | Maneesh Jain <maneesh.jain@samsung.com> | 2017-10-26 17:27:35 +0530 |
---|---|---|
committer | Maneesh Jain <maneesh.jain@samsung.com> | 2017-11-03 10:18:34 +0000 |
commit | 5b04daf30f54e0728d91a65d71e1dc6a47075a11 (patch) | |
tree | e81d8fcc932c3743caff8679f0b1070d1b14cf95 /src | |
parent | 29893040d7906f1f70960726b3037d1b363955ca (diff) | |
download | connman-5b04daf30f54e0728d91a65d71e1dc6a47075a11.tar.gz connman-5b04daf30f54e0728d91a65d71e1dc6a47075a11.tar.bz2 connman-5b04daf30f54e0728d91a65d71e1dc6a47075a11.zip |
Added handling of "AssocStatusCode" signal
Description : This can be used by application in case AP is denying association with status code
Change-Id: I195492be4320032b460b708034f044eec03b71dd
Signed-off-by: Maneesh Jain <maneesh.jain@samsung.com>
Diffstat (limited to 'src')
-rwxr-xr-x | src/network.c | 21 | ||||
-rwxr-xr-x | src/service.c | 4 |
2 files changed, 25 insertions, 0 deletions
diff --git a/src/network.c b/src/network.c index 546479c2..08b1319a 100755 --- a/src/network.c +++ b/src/network.c @@ -101,6 +101,7 @@ struct connman_network { char *keymgmt_type; bool rsn_mode; int disconnect_reason; + int assoc_status_code; void *wifi_vsie; unsigned int wifi_vsie_len; #endif @@ -2092,6 +2093,26 @@ int connman_network_get_disconnect_reason(struct connman_network *network) return network->wifi.disconnect_reason; } + +int connman_network_set_assoc_status_code(struct connman_network *network, + int assoc_status_code) +{ + + if (network == NULL) + return 0; + + network->wifi.assoc_status_code = assoc_status_code; + return 0; +} + +int connman_network_get_assoc_status_code(struct connman_network *network) +{ + if (network == NULL) + return 0; + + return network->wifi.assoc_status_code; +} + #endif int connman_network_set_nameservers(struct connman_network *network, diff --git a/src/service.c b/src/service.c index 0c9c8977..468a327b 100755 --- a/src/service.c +++ b/src/service.c @@ -160,6 +160,7 @@ struct connman_service { */ char *keymgmt_type; int disconnect_reason; + int assoc_status_code; #endif #ifdef TIZEN_EXT enum connman_dnsconfig_method dns_config_method_ipv4; @@ -7172,6 +7173,9 @@ static int service_indicate_state(struct connman_service *service) case CONNMAN_SERVICE_STATE_FAILURE: #if defined TIZEN_EXT + + service->assoc_status_code = connman_network_get_assoc_status_code(service->network); + if (service->type == CONNMAN_SERVICE_TYPE_WIFI) service->order = 5; __connman_service_auto_connect(CONNMAN_SERVICE_CONNECT_REASON_AUTO); |