diff options
author | Steve Kondik <steve@cyngn.com> | 2016-08-15 02:06:33 -0700 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-08-15 02:06:33 -0700 |
commit | dc6ca4340a7ad6005a2e13b66bb2995e8010aa82 (patch) | |
tree | a10cfe90c813fea4f55682d918759aa5e2c54aab /src/eap_peer/eap_proxy_qmi.c | |
parent | a08fd9e9b66b23ceb7f14aaba3150e2146393b37 (diff) | |
parent | dff13b397b9dc3a1bb9120c2c3fcc8793cdb97b9 (diff) | |
download | android_external_wpa_supplicant_8-dc6ca4340a7ad6005a2e13b66bb2995e8010aa82.tar.gz android_external_wpa_supplicant_8-dc6ca4340a7ad6005a2e13b66bb2995e8010aa82.tar.bz2 android_external_wpa_supplicant_8-dc6ca4340a7ad6005a2e13b66bb2995e8010aa82.zip |
Merge branch 'wlan-service.lnx.1.0-rel.1.0' of git://codeaurora.org/platform/external/wpa_supplicant_8 into cm-13.0replicant-6.0-0002replicant-6.0-0001
Change-Id: I110d3aa8efe7861b7a5b0dd570bfe5b0ec88e6be
Diffstat (limited to 'src/eap_peer/eap_proxy_qmi.c')
-rw-r--r-- | src/eap_peer/eap_proxy_qmi.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/eap_peer/eap_proxy_qmi.c b/src/eap_peer/eap_proxy_qmi.c index 60710306..fc469e64 100644 --- a/src/eap_peer/eap_proxy_qmi.c +++ b/src/eap_peer/eap_proxy_qmi.c @@ -716,6 +716,20 @@ int eap_auth_end_eap_session(qmi_client_type qmi_auth_svc_client_ptr) return 0; } +static void eap_proxy_schedule_thread(void *eloop_ctx, void *timeout_ctx) +{ + struct eap_proxy_sm *eap_proxy = eloop_ctx; + pthread_attr_t attr; + int ret = -1; + + pthread_attr_init(&attr); + pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); + ret = pthread_create(&eap_proxy->thread_id, &attr, eap_proxy_post_init, eap_proxy); + if(ret < 0) + wpa_printf(MSG_ERROR, "eap_proxy: starting thread is failed %d\n", ret); +} + + struct eap_proxy_sm * eap_proxy_init(void *eapol_ctx, struct eapol_callbacks *eapol_cb, void *msg_ctx) @@ -724,8 +738,6 @@ eap_proxy_init(void *eapol_ctx, struct eapol_callbacks *eapol_cb, int qmiRetCode; struct eap_proxy_sm *eap_proxy; qmi_idl_service_object_type qmi_client_service_obj; - pthread_attr_t attr; - int ret = -1; eap_proxy = os_malloc(sizeof(struct eap_proxy_sm)); if (NULL == eap_proxy) { @@ -751,11 +763,7 @@ eap_proxy_init(void *eapol_ctx, struct eapol_callbacks *eapol_cb, * parent process that created the qmi client context. */ - pthread_attr_init(&attr); - pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); - ret = pthread_create(&eap_proxy->thread_id, &attr, eap_proxy_post_init, eap_proxy); - if(ret < 0) - wpa_printf(MSG_ERROR, "eap_proxy: starting thread is failed %d\n", ret); + eloop_register_timeout(0, 0, eap_proxy_schedule_thread, eap_proxy, NULL); return eap_proxy; } |