From a7ae7682a558c68a58623f7ae9aedcd469ecb01a Mon Sep 17 00:00:00 2001 From: yanxiaotao Date: Sun, 12 Jun 2022 22:28:34 +0800 Subject: [PATCH 01/18] bugfix from master 0611 Signed-off-by: yanxiaotao --- wifi/frameworks/js/napi/inc/wifi_napi_p2p.h | 25 ++++++ .../js/napi/src/wifi_napi_entry.cpp | 2 + wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp | 78 +++++++++++++++++++ .../native/c_adapter/src/wifi_c_p2p.cpp | 12 +++ wifi/frameworks/native/include/wifi_p2p.h | 8 ++ wifi/frameworks/native/interfaces/define.h | 1 + .../frameworks/native/interfaces/i_wifi_p2p.h | 7 ++ wifi/frameworks/native/src/wifi_p2p_impl.cpp | 6 ++ wifi/frameworks/native/src/wifi_p2p_impl.h | 8 ++ wifi/frameworks/native/src/wifi_p2p_proxy.cpp | 36 ++++++++- .../wifi_manage/wifi_p2p/ip2p_service.h | 7 ++ .../wifi_manage/wifi_p2p_service_impl.cpp | 32 ++++++++ .../wifi_manage/wifi_p2p_service_impl.h | 8 ++ .../wifi_manage/wifi_p2p_stub.cpp | 14 ++++ 14 files changed, 242 insertions(+), 2 deletions(-) diff --git a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h index d030febfc..7e7da7072 100644 --- a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h +++ b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h @@ -33,6 +33,18 @@ napi_value StopDiscoverDevices(napi_env env, napi_callback_info info); napi_value DeletePersistentGroup(napi_env env, napi_callback_info info); napi_value SetDeviceName(napi_env env, napi_callback_info info); +class P2pLocalDeviceAsyncContext : public AsyncContext { +public: + WifiP2pDevice deviceInfo; + + P2pLocalDeviceAsyncContext(napi_env env, napi_async_work work = nullptr, napi_deferred deferred = nullptr) + : AsyncContext(env, work, deferred) {} + + P2pLocalDeviceAsyncContext() = delete; + + ~P2pLocalDeviceAsyncContext() override {} +}; + class QueryP2pDeviceAsyncContext : public AsyncContext { public: std::vector vecP2pDevices; @@ -68,6 +80,19 @@ public: ~P2pGroupInfoAsyncContext() override {} }; + +class P2pGroupInfoListAsyncContext : public AsyncContext { +public: + std::vector vecGroupInfoList; + + P2pGroupInfoListAsyncContext(napi_env env, napi_async_work work = nullptr, + napi_deferred deferred = nullptr) + : AsyncContext(env, work, deferred) {} + + P2pGroupInfoListAsyncContext() = delete; + + ~P2pGroupInfoListAsyncContext() override {} +}; } // namespace Wifi } // namespace OHOS diff --git a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp index c2c82497d..bbb36c367 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp @@ -63,6 +63,7 @@ static napi_value Init(napi_env env, napi_value exports) { DECLARE_NAPI_FUNCTION("getP2pLinkedInfo", GetP2pLinkedInfo), DECLARE_NAPI_FUNCTION("getCurrentGroup", GetCurrentGroup), DECLARE_NAPI_FUNCTION("getP2pPeerDevices", GetP2pDevices), + DECLARE_NAPI_FUNCTION("getP2pLocalDeviceInfo", getP2pLocalDeviceInfo), DECLARE_NAPI_FUNCTION("createGroup", CreateGroup), DECLARE_NAPI_FUNCTION("removeGroup", RemoveGroup), DECLARE_NAPI_FUNCTION("p2pConnect", P2pConnect), @@ -70,6 +71,7 @@ static napi_value Init(napi_env env, napi_value exports) { DECLARE_NAPI_FUNCTION("startDiscoverDevices", StartDiscoverDevices), DECLARE_NAPI_FUNCTION("stopDiscoverDevices", StopDiscoverDevices), DECLARE_NAPI_FUNCTION("deletePersistentGroup", DeletePersistentGroup), + DECLARE_NAPI_FUNCTION("GetP2pGroups", GetP2pGroups), DECLARE_NAPI_FUNCTION("setDeviceName", SetDeviceName), DECLARE_NAPI_FUNCTION("on", On), DECLARE_NAPI_FUNCTION("off", Off), diff --git a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp index 1ea02f156..91fc1be94 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp @@ -84,6 +84,23 @@ static ErrCode GroupInfosToJs(const napi_env& env, WifiP2pGroupInfo& groupInfo, return WIFI_OPT_SUCCESS; } +static ErrCode GroupsToJsArray(const napi_env& env, + const std::vector& vecGroups, napi_value& arrayResult) +{ + uint32_t idx = 0; + for (auto& each : vecGroups) { + napi_value eachObj; + napi_create_object(env, &eachObj); + GroupInfosToJs(env, each, eachObj); + napi_status status = napi_set_element(env, arrayResult, idx++, eachObj); + if (status != napi_ok) { + WIFI_LOGE("wifi napi set element error: %{public}d, idx: %{public}d", status, idx - 1); + return WIFI_OPT_FAILED; + } + } + return WIFI_OPT_SUCCESS; +} + napi_value GetCurrentGroup(napi_env env, napi_callback_info info) { TRACE_FUNC_CALL; @@ -114,6 +131,37 @@ napi_value GetCurrentGroup(napi_env env, napi_callback_info info) return DoAsyncWork(env, asyncContext, argc, argv, nonCallbackArgNum); } +napi_value GetP2pGroups(napi_env env, napi_callback_info info) +{ + TRACE_FUNC_CALL; + size_t argc = 1; + napi_value argv[argc]; + napi_value thisVar = nullptr; + void *data = nullptr; + NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, &data)); + + P2pGroupInfoListAsyncContext *asyncContext = new P2pGroupInfoListAsyncContext(env); + NAPI_ASSERT(env, asyncContext != nullptr, "asyncContext is null."); + napi_create_string_latin1(env, "GetP2pGroups", NAPI_AUTO_LENGTH, &asyncContext->resourceName); + + asyncContext->executeFunc = [&](void* data) -> void { + P2pGroupInfoListAsyncContext *context = static_cast(data); + TRACE_FUNC_CALL_NAME("wifiP2pPtr->QueryP2pGroups"); + context->errorCode = wifiP2pPtr->QueryP2pGroups(context->vecGroupInfoList); + }; + + asyncContext->completeFunc = [&](void* data) -> void { + P2pGroupInfoListAsyncContext *context = static_cast(data); + napi_create_object(context->env, &context->result); + context->errorCode = GroupsToJsArray(context->env, context->vecGroupInfoList, context->result); + WIFI_LOGI("Push get group info list to client"); + }; + + size_t nonCallbackArgNum = 0; + return DoAsyncWork(env, asyncContext, argc, argv, nonCallbackArgNum); +} + + napi_value DeletePersistentGroup(napi_env env, napi_callback_info info) { TRACE_FUNC_CALL; @@ -189,6 +237,36 @@ napi_value GetP2pDevices(napi_env env, napi_callback_info info) return DoAsyncWork(env, asyncContext, argc, argv, nonCallbackArgNum); } +napi_value GetP2pLocalDevice(napi_env env, napi_callback_info info) +{ + TRACE_FUNC_CALL; + size_t argc = 1; + napi_value argv[argc]; + napi_value thisVar = nullptr; + void *data = nullptr; + NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, &thisVar, &data)); + + P2pLocalDeviceAsyncContext *asyncContext = new P2pLocalDeviceAsyncContext(env); + NAPI_ASSERT(env, asyncContext != nullptr, "asyncContext is null."); + napi_create_string_latin1(env, "GetP2pLocalDevice", NAPI_AUTO_LENGTH, &asyncContext->resourceName); + + asyncContext->executeFunc = [&](void* data) -> void { + P2pLocalDeviceAsyncContext *context = static_cast(data); + TRACE_FUNC_CALL_NAME("wifiP2pPtr->QueryP2pLocalDevice"); + context->errorCode = wifiP2pPtr->QueryP2pLocalDevice(context->deviceInfo); + }; + + asyncContext->completeFunc = [&](void* data) -> void { + P2pLocalDeviceAsyncContext *context = static_cast(data); + napi_create_object(context->env, &context->result); + context->errorCode = DeviceInfoToJs(context->env, context->deviceInfo, context->result); + WIFI_LOGI("Push get p2p local device result to client"); + }; + + size_t nonCallbackArgNum = 0; + return DoAsyncWork(env, asyncContext, argc, argv, nonCallbackArgNum); +} + napi_value SetDeviceName(napi_env env, napi_callback_info info) { TRACE_FUNC_CALL; diff --git a/wifi/frameworks/native/c_adapter/src/wifi_c_p2p.cpp b/wifi/frameworks/native/c_adapter/src/wifi_c_p2p.cpp index dc37686da..d97eab639 100644 --- a/wifi/frameworks/native/c_adapter/src/wifi_c_p2p.cpp +++ b/wifi/frameworks/native/c_adapter/src/wifi_c_p2p.cpp @@ -279,6 +279,18 @@ WifiErrorCode GetP2pConnectedStatus(int* status) return GetCErrorCode(ret); } +WifiErrorCode QueryP2pLocalDevice(WifiP2pDevice* deviceInfo) +{ + CHECK_PTR_RETURN(wifiP2pPtr, ERROR_WIFI_NOT_AVAILABLE); + CHECK_PTR_RETURN(deviceInfo, ERROR_WIFI_INVALID_ARGS); + OHOS::Wifi::WifiP2pDevice cppDeviceInfo; + OHOS::Wifi::ErrCode ret = wifiP2pPtr->QueryP2pLocalDevice(cppDeviceInfo); + if (ret != OHOS::Wifi::WIFI_OPT_SUCCESS) { + WIFI_LOGE("QueryP2pLocalDevice return failed!"); + } + return GetCErrorCode(ConvertP2PDeviceCppToC(cppDeviceInfo, deviceInfo)); +} + WifiErrorCode QueryP2pDevices(WifiP2pDevice* clientDevices, int size, int* retSize) { CHECK_PTR_RETURN(wifiP2pPtr, ERROR_WIFI_NOT_AVAILABLE); diff --git a/wifi/frameworks/native/include/wifi_p2p.h b/wifi/frameworks/native/include/wifi_p2p.h index af51082f6..fc989ce7d 100644 --- a/wifi/frameworks/native/include/wifi_p2p.h +++ b/wifi/frameworks/native/include/wifi_p2p.h @@ -190,6 +190,14 @@ public: */ virtual ErrCode GetP2pConnectedStatus(int &status) = 0; + /** + * @Description Query the local device infor. + * + * @param devives - Get result of WifiP2pDevice + * @return ErrCode - operate result + */ + virtual ErrCode QueryP2pLocalDevice(WifiP2pDevice &device); + /** * @Description Query the information about the found devices. * diff --git a/wifi/frameworks/native/interfaces/define.h b/wifi/frameworks/native/interfaces/define.h index 9172825c8..0fe783e6e 100644 --- a/wifi/frameworks/native/interfaces/define.h +++ b/wifi/frameworks/native/interfaces/define.h @@ -116,6 +116,7 @@ #define WIFI_SVR_CMD_GET_5G_CHANNEL_LIST 0x2024 /* get recommended channel */ #define WIFI_SVR_CMD_GET_SELF_WIFI_CFG 0x2025 /* get self wifi configuration */ #define WIFI_SVR_CMD_SET_PEER_WIFI_CFG 0x2026 /* set peer wifi configuration */ +#define WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE 0x2027 /* query the information about the local device */ /* -----------register event type and message define-------------- */ #define WIFI_CBK_CMD_STATE_CHANGE 0x1001 /* STA state change event */ diff --git a/wifi/frameworks/native/interfaces/i_wifi_p2p.h b/wifi/frameworks/native/interfaces/i_wifi_p2p.h index b21b3ed9e..340060d36 100644 --- a/wifi/frameworks/native/interfaces/i_wifi_p2p.h +++ b/wifi/frameworks/native/interfaces/i_wifi_p2p.h @@ -199,6 +199,13 @@ public: */ virtual ErrCode QueryP2pDevices(std::vector &devives) = 0; + /** + * @Description - Query the information about own device. + * @param device - own device + * @return - ErrCode + */ + virtual ErrCode QueryP2pLocalDevice(WifiP2pDevice &device) = 0; + /** * @Description Query the information about the found groups. * diff --git a/wifi/frameworks/native/src/wifi_p2p_impl.cpp b/wifi/frameworks/native/src/wifi_p2p_impl.cpp index 92101d61b..ca0c00640 100644 --- a/wifi/frameworks/native/src/wifi_p2p_impl.cpp +++ b/wifi/frameworks/native/src/wifi_p2p_impl.cpp @@ -195,6 +195,12 @@ ErrCode WifiP2pImpl::QueryP2pDevices(std::vector &devives) return client_->QueryP2pDevices(devives); } +ErrCode WifiP2pImpl::QueryP2pLocalDevice(WifiP2pDevice &devives) +{ + RETURN_IF_FAIL(client_); + return client_->QueryP2pLocalDevice(devives); +} + ErrCode WifiP2pImpl::QueryP2pGroups(std::vector &groups) { RETURN_IF_FAIL(client_); diff --git a/wifi/frameworks/native/src/wifi_p2p_impl.h b/wifi/frameworks/native/src/wifi_p2p_impl.h index 06acde7de..977e5f8cd 100644 --- a/wifi/frameworks/native/src/wifi_p2p_impl.h +++ b/wifi/frameworks/native/src/wifi_p2p_impl.h @@ -198,6 +198,14 @@ public: */ ErrCode QueryP2pDevices(std::vector &devives) override; + /** + * @Description Query the information about the local device + * + * @param devives - Get result of WifiP2pDevice + * @return ErrCode - operate result + */ + ErrCode QueryP2pLocalDevice(WifiP2pDevice &devive) override; + /** * @Description Query the information about the found groups * diff --git a/wifi/frameworks/native/src/wifi_p2p_proxy.cpp b/wifi/frameworks/native/src/wifi_p2p_proxy.cpp index 6cdc7c52f..2aaef75ff 100644 --- a/wifi/frameworks/native/src/wifi_p2p_proxy.cpp +++ b/wifi/frameworks/native/src/wifi_p2p_proxy.cpp @@ -822,6 +822,38 @@ ErrCode WifiP2pProxy::QueryP2pDevices(std::vector &devices) return WIFI_OPT_SUCCESS; } +ErrCode WifiP2pProxy::QueryP2pLocalDevice(WifiP2pDevice &device) +{ + if (mRemoteDied) { + WIFI_LOGD("failed to `%{public}s`,remote service is died!", __func__); + return WIFI_OPT_FAILED; + } + MessageOption option; + MessageParcel data; + MessageParcel reply; + if (!data.WriteInterfaceToken(GetDescriptor())) { + WIFI_LOGE("Write interface token error: %{public}s", __func__); + return WIFI_OPT_FAILED; + } + data.WriteInt32(0); + int error = Remote()->SendRequest(WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE, data, reply, option); + if (error != ERR_NONE) { + WIFI_LOGE("Set Attr(%{public}d) failed,error code is %{public}d", WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE, error); + return WIFI_OPT_FAILED; + } + + int exception = reply.ReadInt32(); + if (exception) { + return WIFI_OPT_FAILED; + } + int ret = reply.ReadInt32(); + if (ErrCode(ret) != WIFI_OPT_SUCCESS) { + return ErrCode(ret); + } + ReadWifiP2pDeviceData(reply, device); + return WIFI_OPT_SUCCESS; +} + ErrCode WifiP2pProxy::QueryP2pGroups(std::vector &groups) { if (mRemoteDied) { @@ -1450,9 +1482,9 @@ ErrCode WifiP2pProxy::Hid2dSetPeerWifiCfgInfo(PeerCfgType cfgType, void WifiP2pProxy::OnRemoteDied(const wptr& remoteObject) { - WIFI_LOGD("Remote service is died!"); + WIFI_LOGE("Remote service is died!"); mRemoteDied = true; g_wifiP2pCallbackStub.SetRemoteDied(true); } } // namespace Wifi -} // namespace OHOS \ No newline at end of file +} // namespace OHOS diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h index 4a4388bcc..a222d374d 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h @@ -155,6 +155,13 @@ public: */ virtual ErrCode GetCurrentGroup(WifiP2pGroupInfo &group) = 0; + /** + * @DescriptionGet - The interface of get all existed groups. + * @param group - struct WifiP2pGroupInfo. + * @return - ErrCode + */ + virtual ErrCode GetP2pGroups(WifiP2pGroupInfo &group) = 0; + /** * @Description - The interface of get p2p running status. * @param status - information of status. diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp index f58d9ebaa..e4f0a412e 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp @@ -625,6 +625,38 @@ ErrCode WifiP2pServiceImpl::QueryP2pDevices(std::vector &devives) return pService->QueryP2pDevices(devives); } +ErrCode WifiP2pServiceImpl::QueryP2pLocalDevice(WifiP2pDevice &device) +{ + WIFI_LOGI("QueryP2pLocalDevice"); + if (WifiPermissionUtils::VerifyGetWifiInfoPermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pLocalDevice:VerifyGetWifiInfoPermission PERMISSION_DENIED!"); + return WIFI_OPT_PERMISSION_DENIED; + } + + if (WifiPermissionUtils::VerifyGetWifiConfigPermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pLocalDevice:VerifyGetWifiConfigPermission PERMISSION_DENIED!"); + return WIFI_OPT_PERMISSION_DENIED; + } + + if (!IsP2pServiceRunning()) { + WIFI_LOGE("P2pService is not runing!"); + return WIFI_OPT_P2P_NOT_OPENED; + } + + IP2pService *pService = WifiServiceManager::GetInstance().GetP2pServiceInst(); + if (pService == nullptr) { + WIFI_LOGE("Get P2P service failed!"); + return WIFI_OPT_P2P_NOT_OPENED; + } + + ErrCode ret = pService->QueryP2pLocalDevice(device); + if (WifiPermissionUtils::VerifyGetWifiLocalMacPermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pLocalDevice:VerifyGetWifiLocalMacPermission PERMISSION_DENIED!"); + device.SetDeviceAddress("00:00:00:00:00:00"); + } + return ret; +} + ErrCode WifiP2pServiceImpl::QueryP2pGroups(std::vector &groups) { WIFI_LOGI("QueryP2pGroups"); diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h index 0979e218b..9566a4d00 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h @@ -207,6 +207,14 @@ public: */ ErrCode QueryP2pDevices(std::vector &devives) override; + /** + * @Description Query the information about the local device + * + * @param devives - Get result of WifiP2pDevice + * @return ErrCode - operate result + */ + ErrCode QueryP2pLocalDevice(WifiP2pDevice &device) override; + /** * @Description Query the information about the found groups * diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp index 0eae23fad..3c6b6528c 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp @@ -73,6 +73,7 @@ void WifiP2pStub::InitHandleMap() handleFuncMap[WIFI_SVR_CMD_GET_5G_CHANNEL_LIST] = &WifiP2pStub::OnHid2dGetChannelListFor5G; handleFuncMap[WIFI_SVR_CMD_GET_SELF_WIFI_CFG] = &WifiP2pStub::OnHid2dGetSelfWifiCfgInfo; handleFuncMap[WIFI_SVR_CMD_SET_PEER_WIFI_CFG] = &WifiP2pStub::OnHid2dSetPeerWifiCfgInfo; + handleFuncMap[WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE] = &WifiP2pStub::OnHid2dSetPeerWifiCfgInfo; return; } @@ -367,6 +368,19 @@ void WifiP2pStub::OnQueryP2pDevices(uint32_t code, MessageParcel &data, MessageP return; } +void WifiP2pStub::OnQueryP2pLocalDevice(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) +{ + WIFI_LOGI("run %{public}s code %{public}u, datasize %{public}zu", __func__, code, data.GetRawDataSize()); + WifiP2pDevice devive; + ErrCode ret = QueryP2pLocalDevice(devive); + reply.WriteInt32(0); + reply.WriteInt32(ret); + if (ret == WIFI_OPT_SUCCESS) { + WriteWifiP2pDeviceData(reply, devive); + } + return; +} + void WifiP2pStub::OnQueryP2pGroups(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) { WIFI_LOGD("run %{public}s code %{public}u, datasize %{public}zu", __func__, code, data.GetRawDataSize()); -- Gitee From ea684b2190f9c2f5864fd7e4ec0ef814b9f8330b Mon Sep 17 00:00:00 2001 From: yanxiaotao Date: Sun, 12 Jun 2022 22:50:14 +0800 Subject: [PATCH 02/18] bugfix from master 0611 Signed-off-by: yanxiaotao --- .../wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h | 1 + 1 file changed, 1 insertion(+) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h index 67c98ba82..0b44233ad 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h @@ -91,6 +91,7 @@ private: bool ReadWifiP2pGroupData(MessageParcel &data, WifiP2pGroupInfo &info); void WriteWifiP2pGroupData(MessageParcel &reply, const WifiP2pGroupInfo &info); void ReadWifiP2pConfigData(MessageParcel &data, WifiP2pConfig &config); + void OnQueryP2pLocalDevice(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) private: HandleFuncMap handleFuncMap; -- Gitee From d044af3e5790991f817c396edb507b0be0c8f407 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 08:30:33 +0800 Subject: [PATCH 03/18] bugfix from master 0613 Signed-off-by: y00316381 --- .../wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h | 7 ------- .../wifi_framework/wifi_manage/wifi_p2p_stub.h | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h index a222d374d..4a4388bcc 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h @@ -155,13 +155,6 @@ public: */ virtual ErrCode GetCurrentGroup(WifiP2pGroupInfo &group) = 0; - /** - * @DescriptionGet - The interface of get all existed groups. - * @param group - struct WifiP2pGroupInfo. - * @return - ErrCode - */ - virtual ErrCode GetP2pGroups(WifiP2pGroupInfo &group) = 0; - /** * @Description - The interface of get p2p running status. * @param status - information of status. diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h index 0b44233ad..2421e27cb 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.h @@ -91,7 +91,7 @@ private: bool ReadWifiP2pGroupData(MessageParcel &data, WifiP2pGroupInfo &info); void WriteWifiP2pGroupData(MessageParcel &reply, const WifiP2pGroupInfo &info); void ReadWifiP2pConfigData(MessageParcel &data, WifiP2pConfig &config); - void OnQueryP2pLocalDevice(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) + void OnQueryP2pLocalDevice(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option); private: HandleFuncMap handleFuncMap; -- Gitee From 05239590576d511dd590f414dac3856a0317c3fe Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 08:53:02 +0800 Subject: [PATCH 04/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp index 91fc1be94..3174a61b9 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp @@ -91,7 +91,9 @@ static ErrCode GroupsToJsArray(const napi_env& env, for (auto& each : vecGroups) { napi_value eachObj; napi_create_object(env, &eachObj); - GroupInfosToJs(env, each, eachObj); + if (GroupInfosToJs(env, each, eachObj) != WIFI_OPT_SUCCESS) { + return WIFI_OPT_FAILED; + } napi_status status = napi_set_element(env, arrayResult, idx++, eachObj); if (status != napi_ok) { WIFI_LOGE("wifi napi set element error: %{public}d, idx: %{public}d", status, idx - 1); -- Gitee From 4fb99c2bd973972cd64bd58016481ceba050a9d7 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 09:04:51 +0800 Subject: [PATCH 05/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/native/src/wifi_p2p_proxy.cpp | 2 +- wifi/frameworks/native/src/wifi_p2p_proxy.h | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/wifi/frameworks/native/src/wifi_p2p_proxy.cpp b/wifi/frameworks/native/src/wifi_p2p_proxy.cpp index 2aaef75ff..ff5d33d97 100644 --- a/wifi/frameworks/native/src/wifi_p2p_proxy.cpp +++ b/wifi/frameworks/native/src/wifi_p2p_proxy.cpp @@ -825,7 +825,7 @@ ErrCode WifiP2pProxy::QueryP2pDevices(std::vector &devices) ErrCode WifiP2pProxy::QueryP2pLocalDevice(WifiP2pDevice &device) { if (mRemoteDied) { - WIFI_LOGD("failed to `%{public}s`,remote service is died!", __func__); + WIFI_LOGE("failed to `%{public}s`,remote service is died!", __func__); return WIFI_OPT_FAILED; } MessageOption option; diff --git a/wifi/frameworks/native/src/wifi_p2p_proxy.h b/wifi/frameworks/native/src/wifi_p2p_proxy.h index a510070d5..b40bdad1b 100644 --- a/wifi/frameworks/native/src/wifi_p2p_proxy.h +++ b/wifi/frameworks/native/src/wifi_p2p_proxy.h @@ -197,6 +197,14 @@ public: */ ErrCode QueryP2pDevices(std::vector &devices) override; + /** + * @Description Query the information about local device info + * + * @param devices - Get result of WifiP2pDevice + * @return ErrCode - operate result + */ + ErrCode QueryP2pLocalDevice(WifiP2pDevice &device); + /** * @Description Query the information about the found groups * -- Gitee From 920c98d44909e3d26f469ac370d046c857e5d34f Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 10:10:23 +0800 Subject: [PATCH 06/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/inc/wifi_napi_p2p.h | 1 + wifi/frameworks/js/napi/src/wifi_napi_entry.cpp | 2 +- wifi/frameworks/native/src/wifi_p2p_proxy.h | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h index 7e7da7072..6041a95ea 100644 --- a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h +++ b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h @@ -24,6 +24,7 @@ namespace Wifi { napi_value GetP2pLinkedInfo(napi_env env, napi_callback_info info); napi_value GetCurrentGroup(napi_env env, napi_callback_info info); napi_value GetP2pDevices(napi_env env, napi_callback_info info); +napi_value GetP2pLocalDevice(napi_env env, napi_callback_info info); napi_value CreateGroup(napi_env env, napi_callback_info info); napi_value RemoveGroup(napi_env env, napi_callback_info info); napi_value P2pConnect(napi_env env, napi_callback_info info); diff --git a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp index bbb36c367..3ae282667 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp @@ -63,7 +63,7 @@ static napi_value Init(napi_env env, napi_value exports) { DECLARE_NAPI_FUNCTION("getP2pLinkedInfo", GetP2pLinkedInfo), DECLARE_NAPI_FUNCTION("getCurrentGroup", GetCurrentGroup), DECLARE_NAPI_FUNCTION("getP2pPeerDevices", GetP2pDevices), - DECLARE_NAPI_FUNCTION("getP2pLocalDeviceInfo", getP2pLocalDeviceInfo), + DECLARE_NAPI_FUNCTION("GetP2pLocalDevice", GetP2pLocalDevice), DECLARE_NAPI_FUNCTION("createGroup", CreateGroup), DECLARE_NAPI_FUNCTION("removeGroup", RemoveGroup), DECLARE_NAPI_FUNCTION("p2pConnect", P2pConnect), diff --git a/wifi/frameworks/native/src/wifi_p2p_proxy.h b/wifi/frameworks/native/src/wifi_p2p_proxy.h index b40bdad1b..c3f23ccf4 100644 --- a/wifi/frameworks/native/src/wifi_p2p_proxy.h +++ b/wifi/frameworks/native/src/wifi_p2p_proxy.h @@ -203,7 +203,7 @@ public: * @param devices - Get result of WifiP2pDevice * @return ErrCode - operate result */ - ErrCode QueryP2pLocalDevice(WifiP2pDevice &device); + ErrCode QueryP2pLocalDevice(WifiP2pDevice &device) override; /** * @Description Query the information about the found groups -- Gitee From 3c21331d0b6315d1249fc56a4e048dfcd185edb2 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 10:33:26 +0800 Subject: [PATCH 07/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/inc/wifi_napi_p2p.h | 1 + wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h index 6041a95ea..d6ec710b8 100644 --- a/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h +++ b/wifi/frameworks/js/napi/inc/wifi_napi_p2p.h @@ -25,6 +25,7 @@ napi_value GetP2pLinkedInfo(napi_env env, napi_callback_info info); napi_value GetCurrentGroup(napi_env env, napi_callback_info info); napi_value GetP2pDevices(napi_env env, napi_callback_info info); napi_value GetP2pLocalDevice(napi_env env, napi_callback_info info); +napi_value GetP2pGroups(napi_env env, napi_callback_info info); napi_value CreateGroup(napi_env env, napi_callback_info info); napi_value RemoveGroup(napi_env env, napi_callback_info info); napi_value P2pConnect(napi_env env, napi_callback_info info); diff --git a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp index 3174a61b9..fcccffa06 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp @@ -261,7 +261,8 @@ napi_value GetP2pLocalDevice(napi_env env, napi_callback_info info) asyncContext->completeFunc = [&](void* data) -> void { P2pLocalDeviceAsyncContext *context = static_cast(data); napi_create_object(context->env, &context->result); - context->errorCode = DeviceInfoToJs(context->env, context->deviceInfo, context->result); + context->errorCode = WIFI_OPT_SUCCESS; + DeviceInfoToJs(context->env, context->deviceInfo, context->result); WIFI_LOGI("Push get p2p local device result to client"); }; -- Gitee From 074542a7aae312b0dbd3dc5814f0a93a3fd53974 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 10:47:33 +0800 Subject: [PATCH 08/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c b/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c index 5bb1a72fa..d6f38c51f 100644 --- a/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c +++ b/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c @@ -141,6 +141,10 @@ int StartModuleInternal(const char *moduleName, const char *startCmd, pid_t *pPr LOGE("Create wpa thread failed!"); return HAL_FAILURE; } + ret = pthread_setname_np(tid, moduleName); + if (ret != 0) { + LOGE("pthread_setname_np return failed: %d!", ret); + } pthread_join(tid, NULL); exit(0); } else { -- Gitee From 5f69935131f500c8e1bc7f7d4d21af4dd5f8440e Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 16:00:33 +0800 Subject: [PATCH 09/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp index fcccffa06..6b9b887bd 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp @@ -91,7 +91,8 @@ static ErrCode GroupsToJsArray(const napi_env& env, for (auto& each : vecGroups) { napi_value eachObj; napi_create_object(env, &eachObj); - if (GroupInfosToJs(env, each, eachObj) != WIFI_OPT_SUCCESS) { + int errorCode = GroupInfosToJs(env, each, eachObj); + if (errorCode != WIFI_OPT_SUCCESS) { return WIFI_OPT_FAILED; } napi_status status = napi_set_element(env, arrayResult, idx++, eachObj); -- Gitee From 9f429244f0f23c3df0ee1c60a46a752c51a7489a Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 17:42:56 +0800 Subject: [PATCH 10/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp index 6b9b887bd..746d15ccd 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_p2p.cpp @@ -47,7 +47,7 @@ static ErrCode DevicesToJsArray(const napi_env& env, return WIFI_OPT_SUCCESS; } -static ErrCode GroupInfosToJs(const napi_env& env, WifiP2pGroupInfo& groupInfo, napi_value& result) +static ErrCode GroupInfosToJs(const napi_env& env, const WifiP2pGroupInfo& groupInfo, napi_value& result) { SetValueBool(env, "isP2pGo", groupInfo.IsGroupOwner(), result); @@ -91,8 +91,8 @@ static ErrCode GroupsToJsArray(const napi_env& env, for (auto& each : vecGroups) { napi_value eachObj; napi_create_object(env, &eachObj); - int errorCode = GroupInfosToJs(env, each, eachObj); - if (errorCode != WIFI_OPT_SUCCESS) { + int ret = GroupInfosToJs(env, each, eachObj); + if (ret != WIFI_OPT_SUCCESS) { return WIFI_OPT_FAILED; } napi_status status = napi_set_element(env, arrayResult, idx++, eachObj); -- Gitee From 74b74499363c1da993fea9ed85f427f9849a4f41 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 13 Jun 2022 20:36:28 +0800 Subject: [PATCH 11/18] bugfix from master 0613 Signed-off-by: y00316381 --- wifi/frameworks/native/include/wifi_p2p.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wifi/frameworks/native/include/wifi_p2p.h b/wifi/frameworks/native/include/wifi_p2p.h index fc989ce7d..49e22b6b9 100644 --- a/wifi/frameworks/native/include/wifi_p2p.h +++ b/wifi/frameworks/native/include/wifi_p2p.h @@ -191,12 +191,12 @@ public: virtual ErrCode GetP2pConnectedStatus(int &status) = 0; /** - * @Description Query the local device infor. + * @Description Query the local device information. * * @param devives - Get result of WifiP2pDevice * @return ErrCode - operate result */ - virtual ErrCode QueryP2pLocalDevice(WifiP2pDevice &device); + virtual ErrCode QueryP2pLocalDevice(WifiP2pDevice &device) = 0; /** * @Description Query the information about the found devices. -- Gitee From 5363b9bc6f232b7ce276edf395a99dd9c4fe7a99 Mon Sep 17 00:00:00 2001 From: yanxiaotao Date: Mon, 13 Jun 2022 22:00:40 +0800 Subject: [PATCH 12/18] bugfix from master 0613 Signed-off-by: yanxiaotao --- wifi/frameworks/native/include/wifi_p2p.h | 4 ++-- wifi/frameworks/native/interfaces/i_wifi_p2p.h | 4 ++-- wifi/frameworks/native/src/wifi_p2p_impl.cpp | 8 ++++---- wifi/frameworks/native/src/wifi_p2p_impl.h | 4 ++-- .../wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h | 4 ++-- .../wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp | 4 ++-- .../wifi_framework/wifi_manage/wifi_p2p_service_impl.h | 4 ++-- .../wifi_framework/wifi_manage/wifi_p2p_stub.cpp | 9 ++++----- .../wifi_manage/unittest/wifi_mock_p2p_service.cpp | 2 +- .../wifi_manage/unittest/wifi_mock_p2p_service.h | 2 +- 10 files changed, 22 insertions(+), 23 deletions(-) diff --git a/wifi/frameworks/native/include/wifi_p2p.h b/wifi/frameworks/native/include/wifi_p2p.h index 49e22b6b9..2da82aabe 100644 --- a/wifi/frameworks/native/include/wifi_p2p.h +++ b/wifi/frameworks/native/include/wifi_p2p.h @@ -201,10 +201,10 @@ public: /** * @Description Query the information about the found devices. * - * @param devives - Get result vector of WifiP2pDevice + * @param devices - Get result vector of WifiP2pDevice * @return ErrCode - operate result */ - virtual ErrCode QueryP2pDevices(std::vector &devives) = 0; + virtual ErrCode QueryP2pDevices(std::vector &devices) = 0; /** * @Description Query the information about the found groups. diff --git a/wifi/frameworks/native/interfaces/i_wifi_p2p.h b/wifi/frameworks/native/interfaces/i_wifi_p2p.h index 340060d36..e7182e74f 100644 --- a/wifi/frameworks/native/interfaces/i_wifi_p2p.h +++ b/wifi/frameworks/native/interfaces/i_wifi_p2p.h @@ -194,10 +194,10 @@ public: /** * @Description Query the information about the found devices. * - * @param devives - Get result vector of WifiP2pDevice + * @param devices - Get result vector of WifiP2pDevice * @return ErrCode - operate result */ - virtual ErrCode QueryP2pDevices(std::vector &devives) = 0; + virtual ErrCode QueryP2pDevices(std::vector &devices) = 0; /** * @Description - Query the information about own device. diff --git a/wifi/frameworks/native/src/wifi_p2p_impl.cpp b/wifi/frameworks/native/src/wifi_p2p_impl.cpp index ca0c00640..2ec46b974 100644 --- a/wifi/frameworks/native/src/wifi_p2p_impl.cpp +++ b/wifi/frameworks/native/src/wifi_p2p_impl.cpp @@ -189,16 +189,16 @@ ErrCode WifiP2pImpl::GetP2pConnectedStatus(int &status) return client_->GetP2pConnectedStatus(status); } -ErrCode WifiP2pImpl::QueryP2pDevices(std::vector &devives) +ErrCode WifiP2pImpl::QueryP2pDevices(std::vector &devices) { RETURN_IF_FAIL(client_); - return client_->QueryP2pDevices(devives); + return client_->QueryP2pDevices(devices); } -ErrCode WifiP2pImpl::QueryP2pLocalDevice(WifiP2pDevice &devives) +ErrCode WifiP2pImpl::QueryP2pLocalDevice(WifiP2pDevice &devices) { RETURN_IF_FAIL(client_); - return client_->QueryP2pLocalDevice(devives); + return client_->QueryP2pLocalDevice(devices); } ErrCode WifiP2pImpl::QueryP2pGroups(std::vector &groups) diff --git a/wifi/frameworks/native/src/wifi_p2p_impl.h b/wifi/frameworks/native/src/wifi_p2p_impl.h index 977e5f8cd..c8e486c37 100644 --- a/wifi/frameworks/native/src/wifi_p2p_impl.h +++ b/wifi/frameworks/native/src/wifi_p2p_impl.h @@ -193,10 +193,10 @@ public: /** * @Description Query the information about the found devices * - * @param devives - Get result vector of WifiP2pDevice + * @param devices - Get result vector of WifiP2pDevice * @return ErrCode - operate result */ - ErrCode QueryP2pDevices(std::vector &devives) override; + ErrCode QueryP2pDevices(std::vector &devices) override; /** * @Description Query the information about the local device diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h index 4a4388bcc..d3a0e64d1 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p/ip2p_service.h @@ -178,10 +178,10 @@ public: /** * @Description - The interface of query p2p devices information. - * @param devives - information of devices. + * @param devices - information of devices. * @return - ErrCode */ - virtual ErrCode QueryP2pDevices(std::vector &devives) = 0; + virtual ErrCode QueryP2pDevices(std::vector &devices) = 0; /** * @Description - Query the information about own device. diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp index e4f0a412e..78c4d810b 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp @@ -595,7 +595,7 @@ ErrCode WifiP2pServiceImpl::GetP2pConnectedStatus(int &status) return pService->GetP2pConnectedStatus(status); } -ErrCode WifiP2pServiceImpl::QueryP2pDevices(std::vector &devives) +ErrCode WifiP2pServiceImpl::QueryP2pDevices(std::vector &devices) { WIFI_LOGI("QueryP2pDevices"); if (WifiPermissionUtils::VerifyGetWifiInfoInternalPermission() == PERMISSION_DENIED) { @@ -622,7 +622,7 @@ ErrCode WifiP2pServiceImpl::QueryP2pDevices(std::vector &devives) WIFI_LOGE("Get P2P service failed!"); return WIFI_OPT_P2P_NOT_OPENED; } - return pService->QueryP2pDevices(devives); + return pService->QueryP2pDevices(devices); } ErrCode WifiP2pServiceImpl::QueryP2pLocalDevice(WifiP2pDevice &device) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h index 9566a4d00..9ba5582b6 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.h @@ -202,10 +202,10 @@ public: /** * @Description Query the information about the found devices * - * @param devives - Get result vector of WifiP2pDevice + * @param devices - Get result vector of WifiP2pDevice * @return ErrCode - operate result */ - ErrCode QueryP2pDevices(std::vector &devives) override; + ErrCode QueryP2pDevices(std::vector &devices) override; /** * @Description Query the information about the local device diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp index 3c6b6528c..386560524 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp @@ -352,17 +352,16 @@ void WifiP2pStub::OnGetP2pConnectedStatus( void WifiP2pStub::OnQueryP2pDevices(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) { WIFI_LOGD("run %{public}s code %{public}u, datasize %{public}zu", __func__, code, data.GetRawDataSize()); - std::vector devives; - ErrCode ret = QueryP2pDevices(devives); + std::vector devices; + ErrCode ret = QueryP2pDevices(devices); reply.WriteInt32(0); reply.WriteInt32(ret); - if (ret == WIFI_OPT_SUCCESS) { - int size = devives.size(); + int size = devices.size(); reply.WriteInt32(size); for (int i = 0; i < size; ++i) { - WriteWifiP2pDeviceData(reply, devives[i]); + WriteWifiP2pDeviceData(reply, devices[i]); } } return; diff --git a/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.cpp b/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.cpp index f7448969c..4b6b995c2 100644 --- a/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.cpp +++ b/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.cpp @@ -323,7 +323,7 @@ ErrCode WifiMockP2pService::GetP2pConnectedStatus(int &status) return WIFI_OPT_SUCCESS; } -ErrCode WifiMockP2pService::QueryP2pDevices(std::vector &devives) +ErrCode WifiMockP2pService::QueryP2pDevices(std::vector &devices) { LOGI("Mock_p2p:QueryP2pDevices"); WifiP2pDevice device1; diff --git a/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.h b/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.h index 5ffb68586..61b51ab3a 100644 --- a/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.h +++ b/wifi/test/wifi_standard/wifi_framework/wifi_manage/unittest/wifi_mock_p2p_service.h @@ -47,7 +47,7 @@ public: ErrCode GetP2pEnableStatus(int &status); ErrCode GetP2pDiscoverStatus(int &status); ErrCode GetP2pConnectedStatus(int &status); - ErrCode QueryP2pDevices(std::vector &devives); + ErrCode QueryP2pDevices(std::vector &devices); ErrCode QueryP2pGroups(std::vector &groups); ErrCode QueryP2pServices(std::vector &services); ErrCode RegisterP2pServiceCallbacks(const IP2pServiceCallbacks &callbacks); -- Gitee From 637262daefbcfefefa7342dc929c1a48c0933640 Mon Sep 17 00:00:00 2001 From: yanxiaotao Date: Mon, 13 Jun 2022 22:20:26 +0800 Subject: [PATCH 13/18] bugfix from master 0613 Signed-off-by: yanxiaotao --- .../wifi_framework/wifi_manage/wifi_p2p_stub.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp index 386560524..645c75745 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp @@ -370,12 +370,12 @@ void WifiP2pStub::OnQueryP2pDevices(uint32_t code, MessageParcel &data, MessageP void WifiP2pStub::OnQueryP2pLocalDevice(uint32_t code, MessageParcel &data, MessageParcel &reply, MessageOption &option) { WIFI_LOGI("run %{public}s code %{public}u, datasize %{public}zu", __func__, code, data.GetRawDataSize()); - WifiP2pDevice devive; - ErrCode ret = QueryP2pLocalDevice(devive); + WifiP2pDevice device; + ErrCode ret = QueryP2pLocalDevice(device); reply.WriteInt32(0); reply.WriteInt32(ret); if (ret == WIFI_OPT_SUCCESS) { - WriteWifiP2pDeviceData(reply, devive); + WriteWifiP2pDeviceData(reply, device); } return; } -- Gitee From d55ebae4ea65915732c1a715f905b3ceb34914be Mon Sep 17 00:00:00 2001 From: y00316381 Date: Wed, 15 Jun 2022 10:45:09 +0800 Subject: [PATCH 14/18] bugfix from master 0615 Signed-off-by: y00316381 --- .../wifi_manage/common/wifi_permission_helper.cpp | 2 +- .../wifi_manage/wifi_p2p_service_impl.cpp | 14 +++++++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/common/wifi_permission_helper.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/common/wifi_permission_helper.cpp index 221091629..c4ddd9f18 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/common/wifi_permission_helper.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/common/wifi_permission_helper.cpp @@ -245,7 +245,7 @@ int WifiPermissionHelper::VerifyWifiConnectionPermission(const int &pid, const i int WifiPermissionHelper::VerifyGetWifiDirectDevicePermission(const int &pid, const int &uid) { - if (VerifyPermission("ohos.permission.GET_P2P_DEVICE_LOCATION", pid, uid) == PERMISSION_DENIED) { + if (VerifyPermission("ohos.permission.LOCATION", pid, uid) == PERMISSION_DENIED) { return PERMISSION_DENIED; } return PERMISSION_GRANTED; diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp index 78c4d810b..d6b829931 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_service_impl.cpp @@ -660,9 +660,17 @@ ErrCode WifiP2pServiceImpl::QueryP2pLocalDevice(WifiP2pDevice &device) ErrCode WifiP2pServiceImpl::QueryP2pGroups(std::vector &groups) { WIFI_LOGI("QueryP2pGroups"); - if (WifiPermissionUtils::VerifyGetWifiDirectDevicePermission() == PERMISSION_DENIED) { - WIFI_LOGE("QueryP2pGroups:VerifyGetWifiDirectDevicePermission PERMISSION_DENIED!"); - return WIFI_OPT_PERMISSION_DENIED; + if (WifiPermissionUtils::VerifyGetWifiInfoInternalPermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pGroups:VerifyGetWifiInfoInternalPermission PERMISSION_DENIED!"); + if (WifiPermissionUtils::VerifyGetWifiDirectDevicePermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pGroups:VerifyGetWifiDirectDevicePermission PERMISSION_DENIED!"); + return WIFI_OPT_PERMISSION_DENIED; + } + + if (WifiPermissionUtils::VerifyGetWifiInfoPermission() == PERMISSION_DENIED) { + WIFI_LOGE("QueryP2pGroups:VerifyGetWifiInfoPermission PERMISSION_DENIED!"); + return WIFI_OPT_PERMISSION_DENIED; + } } if (!IsP2pServiceRunning()) { -- Gitee From b81ba6fd48c0f457a847def7bae98120c479ab74 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 20 Jun 2022 20:15:39 +0800 Subject: [PATCH 15/18] bugfix from master 0620 Signed-off-by: y00316381 --- wifi/interfaces/kits/c/wifi_p2p.h | 7 +++++++ .../wifi_framework/wifi_manage/wifi_p2p_stub.cpp | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/wifi/interfaces/kits/c/wifi_p2p.h b/wifi/interfaces/kits/c/wifi_p2p.h index 446babc24..25e7c727f 100644 --- a/wifi/interfaces/kits/c/wifi_p2p.h +++ b/wifi/interfaces/kits/c/wifi_p2p.h @@ -159,6 +159,13 @@ WifiErrorCode GetP2pConnectedStatus(int* status); */ WifiErrorCode QueryP2pDevices(WifiP2pDevice* clientDevices, int size, int* retSize); + * @Description Query the information about the local device info. + * + * @param deviceInfo - the WifiP2pDevice object + * @return ErrCode - operate result + */ +WifiErrorCode QueryP2pLocalDevice(WifiP2pDevice *deviceInfo); + /** * @Description Query the information about the found groups. * diff --git a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp index 645c75745..75d01827a 100644 --- a/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp +++ b/wifi/services/wifi_standard/wifi_framework/wifi_manage/wifi_p2p_stub.cpp @@ -73,7 +73,7 @@ void WifiP2pStub::InitHandleMap() handleFuncMap[WIFI_SVR_CMD_GET_5G_CHANNEL_LIST] = &WifiP2pStub::OnHid2dGetChannelListFor5G; handleFuncMap[WIFI_SVR_CMD_GET_SELF_WIFI_CFG] = &WifiP2pStub::OnHid2dGetSelfWifiCfgInfo; handleFuncMap[WIFI_SVR_CMD_SET_PEER_WIFI_CFG] = &WifiP2pStub::OnHid2dSetPeerWifiCfgInfo; - handleFuncMap[WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE] = &WifiP2pStub::OnHid2dSetPeerWifiCfgInfo; + handleFuncMap[WIFI_SVR_CMD_P2P_QUERY_LOCAL_DEVICE] = &WifiP2pStub::OnQueryP2pLocalDevice; return; } -- Gitee From 3628a82fe14331775840d6b68b7fb597a8069278 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 20 Jun 2022 20:26:35 +0800 Subject: [PATCH 16/18] bugfix from master 0620 Signed-off-by: y00316381 --- wifi/frameworks/js/napi/src/wifi_napi_entry.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp index 3ae282667..eca881211 100644 --- a/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp +++ b/wifi/frameworks/js/napi/src/wifi_napi_entry.cpp @@ -63,7 +63,7 @@ static napi_value Init(napi_env env, napi_value exports) { DECLARE_NAPI_FUNCTION("getP2pLinkedInfo", GetP2pLinkedInfo), DECLARE_NAPI_FUNCTION("getCurrentGroup", GetCurrentGroup), DECLARE_NAPI_FUNCTION("getP2pPeerDevices", GetP2pDevices), - DECLARE_NAPI_FUNCTION("GetP2pLocalDevice", GetP2pLocalDevice), + DECLARE_NAPI_FUNCTION("getP2pLocalDevice", GetP2pLocalDevice), DECLARE_NAPI_FUNCTION("createGroup", CreateGroup), DECLARE_NAPI_FUNCTION("removeGroup", RemoveGroup), DECLARE_NAPI_FUNCTION("p2pConnect", P2pConnect), @@ -71,7 +71,7 @@ static napi_value Init(napi_env env, napi_value exports) { DECLARE_NAPI_FUNCTION("startDiscoverDevices", StartDiscoverDevices), DECLARE_NAPI_FUNCTION("stopDiscoverDevices", StopDiscoverDevices), DECLARE_NAPI_FUNCTION("deletePersistentGroup", DeletePersistentGroup), - DECLARE_NAPI_FUNCTION("GetP2pGroups", GetP2pGroups), + DECLARE_NAPI_FUNCTION("getP2pGroups", GetP2pGroups), DECLARE_NAPI_FUNCTION("setDeviceName", SetDeviceName), DECLARE_NAPI_FUNCTION("on", On), DECLARE_NAPI_FUNCTION("off", Off), -- Gitee From 8aba914ea0e8f61cf121c8b42b2be4aebdaa21d2 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 20 Jun 2022 20:47:36 +0800 Subject: [PATCH 17/18] bugfix from master 0620 Signed-off-by: y00316381 --- wifi/interfaces/kits/c/wifi_p2p.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/wifi/interfaces/kits/c/wifi_p2p.h b/wifi/interfaces/kits/c/wifi_p2p.h index 25e7c727f..54c217692 100644 --- a/wifi/interfaces/kits/c/wifi_p2p.h +++ b/wifi/interfaces/kits/c/wifi_p2p.h @@ -159,12 +159,13 @@ WifiErrorCode GetP2pConnectedStatus(int* status); */ WifiErrorCode QueryP2pDevices(WifiP2pDevice* clientDevices, int size, int* retSize); +/** * @Description Query the information about the local device info. * * @param deviceInfo - the WifiP2pDevice object * @return ErrCode - operate result */ -WifiErrorCode QueryP2pLocalDevice(WifiP2pDevice *deviceInfo); +WifiErrorCode QueryP2pLocalDevice(WifiP2pDevice* deviceInfo); /** * @Description Query the information about the found groups. -- Gitee From 576a1506e0bb31dee42c92c722ee9293e3413ec2 Mon Sep 17 00:00:00 2001 From: y00316381 Date: Mon, 20 Jun 2022 20:53:03 +0800 Subject: [PATCH 18/18] bugfix from master 0620 Signed-off-by: y00316381 --- wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c b/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c index d6f38c51f..5bb1a72fa 100644 --- a/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c +++ b/wifi/services/wifi_standard/wifi_hal/wifi_hal_module_manage.c @@ -141,10 +141,6 @@ int StartModuleInternal(const char *moduleName, const char *startCmd, pid_t *pPr LOGE("Create wpa thread failed!"); return HAL_FAILURE; } - ret = pthread_setname_np(tid, moduleName); - if (ret != 0) { - LOGE("pthread_setname_np return failed: %d!", ret); - } pthread_join(tid, NULL); exit(0); } else { -- Gitee