vine_disc_error nan_init(void **plugin_handle, void *disc_handle)
{
+ int ret = wifi_aware_initialize();
+ if (ret != WIFI_AWARE_ERROR_NONE && ret != WIFI_AWARE_ERROR_ALREADY_INITIALIZED) {
+ VINE_LOGE("wifi_aware_initialize() fails");
+ return __convert_nan_error_to_vine_disc_error(ret);
+ }
+
vine_nan_s *handle = new vine_nan_s;
+ VINE_LOGD("Create plugin_handle[%p]", handle);
handle->disc_handle = disc_handle;
handle->publish_config = nullptr;
handle->port = -1;
+ *plugin_handle = handle;
// NAN will be enabled when publish() or subscribe()
// because enable function works asynchronously.
// , and if NAN data path is broken or not when NAN is disabled.
delete nan_handle;
+ wifi_aware_deinitialize();
}
static void __published_cb(wifi_aware_session_h session,
static void __subscribed_cb(wifi_aware_session_h session,
wifi_aware_error_e error, void *user_data)
{
- RET_IF(error == WIFI_AWARE_ERROR_NONE, "No error");
+ if (error == WIFI_AWARE_ERROR_NONE) {
+ VINE_LOGD("No error");
+ return;
+ }
- VINE_LOGE("Fails to subscribe. error: %s", __convert_nan_error_to_vine_disc_error(error));
+ VINE_LOGE("Fails to subscribe. error: %d", __convert_nan_error_to_vine_disc_error(error));
__subscribe_failed((vine_nan_s *)user_data);
}