diff --git a/adapter/common/net/bluetooth/broadcast/manager/src/softbus_broadcast_mgr.c b/adapter/common/net/bluetooth/broadcast/manager/src/softbus_broadcast_mgr.c index 989ce09673d1851fbbf6bf8602468f57518a0136..b755c6dab82390f6434b57ae25fbbbf8b3315b77 100644 --- a/adapter/common/net/bluetooth/broadcast/manager/src/softbus_broadcast_mgr.c +++ b/adapter/common/net/bluetooth/broadcast/manager/src/softbus_broadcast_mgr.c @@ -419,7 +419,7 @@ static void ReportCurrentBroadcast(bool startBcResult) DiscEventExtra extra = { 0 }; for (int32_t managerId = 0; managerId < BC_NUM_MAX; managerId++) { if (g_bcManager[managerId].isAdvertising) { - extra.startTime = g_bcManager[managerId].time; + extra.startTime = (uint64_t)g_bcManager[managerId].time; extra.advHandle = g_bcManager[managerId].advHandle; extra.serverType = GetSrvType(g_bcManager[managerId].srvType); extra.minInterval = g_bcManager[managerId].minInterval; @@ -450,7 +450,7 @@ static void UpdateBcMaxExtra(void) for (int32_t managerId = 0; managerId < BC_NUM_MAX; managerId++) { if (g_bcManager[managerId].isAdvertising) { g_bcManagerExtra[managerId].isOn = 1; - g_bcManagerExtra[managerId].startTime = g_bcManager[managerId].time; + g_bcManagerExtra[managerId].startTime = (uint64_t)g_bcManager[managerId].time; g_bcManagerExtra[managerId].advHandle = g_bcManager[managerId].advHandle; g_bcManagerExtra[managerId].serverType = GetSrvType(g_bcManager[managerId].srvType); g_bcManagerExtra[managerId].minInterval = g_bcManager[managerId].minInterval; diff --git a/core/common/message_handler/message_handler.c b/core/common/message_handler/message_handler.c index 081ba03f5e730e9d69efd95c01a8cfb40e9d7c77..e16bfbc5a0b64f19eccf6741a163e8104f5e3a4f 100644 --- a/core/common/message_handler/message_handler.c +++ b/core/common/message_handler/message_handler.c @@ -230,6 +230,9 @@ static void DumpLooperLocked(const SoftBusLooperContext *context, const SoftBusH ListNode *item = NULL; LIST_FOR_EACH(item, &context->msgHead) { SoftBusMessageNode *itemNode = LIST_ENTRY(item, SoftBusMessageNode, node); + if (itemNode == NULL || itemNode->msg == NULL) { + continue; + } SoftBusMessage *msg = itemNode->msg; if (i > MAX_LOOPER_PRINT_CNT) { COMM_LOGW(COMM_UTILS, "many messages left unprocessed, msgSize=%{public}u", @@ -239,6 +242,9 @@ static void DumpLooperLocked(const SoftBusLooperContext *context, const SoftBusH if (handler != NULL && handler != msg->handler) { continue; } + if (msg->handler == NULL) { + continue; + } COMM_LOGD(COMM_UTILS, "DumpLooper. i=%{public}d, handler=%{public}s, what=%{public}" PRId32 ", arg1=%{public}" PRIu64 ", " "arg2=%{public}" PRIu64 ", time=%{public}" PRId64, diff --git a/core/discovery/ble/softbus_ble/src/disc_ble.c b/core/discovery/ble/softbus_ble/src/disc_ble.c index fd1ba0a8b01e2f0a0fc360227595b0d615560517..8b58f5361475aec5b16ce178af3cc45f04d1990f 100644 --- a/core/discovery/ble/softbus_ble/src/disc_ble.c +++ b/core/discovery/ble/softbus_ble/src/disc_ble.c @@ -1167,7 +1167,7 @@ static void CalcDurationTime(int32_t adv, uint32_t capabilityBitmap) { uint32_t tempCap = 0; DeConvertBitMap(&tempCap, &capabilityBitmap, 1); - int64_t stamptime = SoftBusGetSysTimeMs(); + uint64_t stamptime = SoftBusGetSysTimeMs(); const uint32_t event[] = { adv == CON_ADV_ID ? CAST_EVENT_CON : CAST_EVENT_NON, diff --git a/dfx/interface/include/form/disc_event_form.h b/dfx/interface/include/form/disc_event_form.h index c90ec40522f08628cc7c38d3df299110e7117ba4..dddba84a114bb089f1af01cec1fe65be06032b7b 100644 --- a/dfx/interface/include/form/disc_event_form.h +++ b/dfx/interface/include/form/disc_event_form.h @@ -143,9 +143,9 @@ typedef struct { const char *scanCycle; // SCAN_CYCLE int32_t discType; // DISC_TYPE int32_t discMode; // DISC_MODE - int64_t startTime; // BROADCAST_START_TIME - int64_t stopTime; // BROADCAST_STOP_TIME - int64_t costTime; // COST_TIME + uint64_t startTime; // BROADCAST_START_TIME + uint64_t stopTime; // BROADCAST_STOP_TIME + uint64_t costTime; // COST_TIME int32_t successCnt; // SUCCESS_COUNT int32_t failCnt; // FAIL_COUNT const char *localNetworkId; // LOCAL_NET_ID diff --git a/tests/core/bus_center/lnn/lane_link/lnn_lane_link_p2p_test.cpp b/tests/core/bus_center/lnn/lane_link/lnn_lane_link_p2p_test.cpp index 58a9427e7b1d16b87ef9524c03bf85385e56d1a0..01973e0638dbb07a826fb17fa0a6350067cfa9a8 100644 --- a/tests/core/bus_center/lnn/lane_link/lnn_lane_link_p2p_test.cpp +++ b/tests/core/bus_center/lnn/lane_link/lnn_lane_link_p2p_test.cpp @@ -355,84 +355,6 @@ HWTEST_F(LNNLaneLinkP2pTest, TRY_ADD_PRE_LINK_CONN_TEST_001, TestSize.Level1) DelP2pLinkReqByReqId(ASYNC_RESULT_AUTH, authReqId); } -/* -* @tc.name: GUIDE_CHANNEL_SELECT_TEST_001 -* @tc.desc: GuideChannelSelect test -* @tc.type: FUNC -* @tc.require: -*/ -HWTEST_F(LNNLaneLinkP2pTest, GUIDE_CHANNEL_SELECT_TEST_001, TestSize.Level1) -{ - P2pLinkReqList *reqInfo = (P2pLinkReqList *)SoftBusCalloc(sizeof(P2pLinkReqList)); - ASSERT_NE(reqInfo, nullptr); - reqInfo->laneRequestInfo.cb.onLaneLinkFail = nullptr; - int32_t ret = strcpy_s(reqInfo->laneRequestInfo.networkId, NETWORK_ID_BUF_LEN, NODE_NETWORK_ID); - EXPECT_EQ(ret, EOK); - reqInfo->laneRequestInfo.linkType = LANE_LINK_TYPE_BUTT; - reqInfo->laneRequestInfo.pid = 0; - reqInfo->laneRequestInfo.isSupportIpv6 = true; - reqInfo->p2pInfo.networkDelegate = true; - reqInfo->p2pInfo.p2pOnly = true; - reqInfo->p2pInfo.bandWidth = 0; - reqInfo->p2pInfo.triggerLinkTime = 0; - reqInfo->p2pInfo.availableLinkTime = 0; - - uint32_t laneReqId = 0; - SoftBusMessage *msg = (SoftBusMessage *)SoftBusCalloc(sizeof(SoftBusMessage)); - if (msg == nullptr) { - SoftBusFree(reqInfo); - ASSERT_NE(msg, nullptr); - } - msg->arg1 = laneReqId; - msg->obj = reqInfo; - EXPECT_NO_FATAL_FAILURE(GuideChannelSelect(msg)); - if (msg->obj != nullptr) { - SoftBusFree(msg->obj); - } - SoftBusFree(msg); -} - -/* -* @tc.name: UPDATE_P2P_LINK_TEST_001 -* @tc.desc: UpdateP2pLinkReconnTimesByReqId test -* @tc.type: FUNC -* @tc.require: -*/ -HWTEST_F(LNNLaneLinkP2pTest, UPDATE_P2P_LINK_TEST_001, TestSize.Level1) -{ - uint32_t requestId = 0; - int32_t ret = UpdateP2pLinkReconnTimesByReqId(ASYNC_RESULT_AUTH, requestId); - EXPECT_EQ(ret, SOFTBUS_INVALID_PARAM); - ret = UpdateP2pLinkReconnTimesByReqId(ASYNC_RESULT_P2P, requestId); - EXPECT_EQ(ret, SOFTBUS_LANE_NOT_FOUND); -} - -/* -* @tc.name: RECYCLE_P2P_LINK_REQ_BY_LINK_TYPE_TEST_001 -* @tc.desc: RecycleP2pLinkedReqByLinkType test -* @tc.type: FUNC -* @tc.require: -*/ -HWTEST_F(LNNLaneLinkP2pTest, RECYCLE_P2P_LINK_REQ_BY_LINK_TYPE_TEST_001, TestSize.Level1) -{ - NiceMock linkMock; - EXPECT_CALL(linkMock, GetWifiDirectManager).WillRepeatedly(Return(&g_manager)); - char peerNetWorkId[] = "testnetworkid"; - EXPECT_NO_FATAL_FAILURE(RecycleP2pLinkedReqByLinkType(peerNetWorkId, LANE_HML)); - uint32_t p2pRequestId = 0; - int32_t reason = SOFTBUS_LANE_NOT_FOUND; - EXPECT_NO_FATAL_FAILURE(HandleRawLinkResultByReqId(p2pRequestId, reason)); - int32_t linkId = 0; - LaneLinkInfo linkInfo = { - .linkInfo.rawWifiDirect.pid = 0, - }; - int32_t ret = AddRawLinkInfo(p2pRequestId, linkId, &linkInfo); - EXPECT_EQ(ret, SOFTBUS_OK); - EXPECT_NO_FATAL_FAILURE(HandleRawLinkResultByReqId(p2pRequestId, reason)); - EXPECT_NO_FATAL_FAILURE(LnnDestroyWifiDirectInfo()); - EXPECT_EQ(g_rawLinkList, nullptr); -} - /* * @tc.name: GET_HML_TWO_GUIDE_TYPE_TEST_001 * @tc.desc: GetHmlTwoGuideType test no availbe guide type @@ -540,4 +462,102 @@ HWTEST_F(LNNLaneLinkP2pTest, GET_HML_TWO_GUIDE_TYPE_TEST_004, TestSize.Level1) EXPECT_EQ(guideChannelNum, GUIDE_TYPE_NUMBERS_THREE); EXPECT_EQ(guideChannelList[2], LANE_BLE_TRIGGER); } + +/* +* @tc.name: GUIDE_CHANNEL_SELECT_TEST_001 +* @tc.desc: GuideChannelSelect test +* @tc.type: FUNC +* @tc.require: +*/ +HWTEST_F(LNNLaneLinkP2pTest, GUIDE_CHANNEL_SELECT_TEST_001, TestSize.Level1) +{ + P2pLinkReqList *reqInfo = (P2pLinkReqList *)SoftBusCalloc(sizeof(P2pLinkReqList)); + ASSERT_NE(reqInfo, nullptr); + reqInfo->laneRequestInfo.cb.onLaneLinkFail = nullptr; + int32_t ret = strcpy_s(reqInfo->laneRequestInfo.networkId, NETWORK_ID_BUF_LEN, NODE_NETWORK_ID); + EXPECT_EQ(ret, EOK); + reqInfo->laneRequestInfo.linkType = LANE_LINK_TYPE_BUTT; + reqInfo->laneRequestInfo.pid = 0; + reqInfo->laneRequestInfo.isSupportIpv6 = true; + reqInfo->p2pInfo.networkDelegate = true; + reqInfo->p2pInfo.p2pOnly = true; + reqInfo->p2pInfo.bandWidth = 0; + reqInfo->p2pInfo.triggerLinkTime = 0; + reqInfo->p2pInfo.availableLinkTime = 0; + + uint32_t laneReqId = 0; + SoftBusMessage *msg = (SoftBusMessage *)SoftBusCalloc(sizeof(SoftBusMessage)); + if (msg == nullptr) { + SoftBusFree(reqInfo); + ASSERT_NE(msg, nullptr); + } + msg->arg1 = laneReqId; + msg->obj = reqInfo; + EXPECT_NO_FATAL_FAILURE(GuideChannelSelect(msg)); + if (msg->obj != nullptr) { + SoftBusFree(msg->obj); + } + SoftBusFree(msg); +} + +/* +* @tc.name: UPDATE_P2P_LINK_TEST_001 +* @tc.desc: UpdateP2pLinkReconnTimesByReqId test +* @tc.type: FUNC +* @tc.require: +*/ +HWTEST_F(LNNLaneLinkP2pTest, UPDATE_P2P_LINK_TEST_001, TestSize.Level1) +{ + uint32_t requestId = 0; + int32_t ret = UpdateP2pLinkReconnTimesByReqId(ASYNC_RESULT_AUTH, requestId); + EXPECT_EQ(ret, SOFTBUS_INVALID_PARAM); + ret = UpdateP2pLinkReconnTimesByReqId(ASYNC_RESULT_P2P, requestId); + EXPECT_EQ(ret, SOFTBUS_LANE_NOT_FOUND); +} + +/* +* @tc.name: RECYCLE_P2P_LINK_REQ_BY_LINK_TYPE_TEST_001 +* @tc.desc: RecycleP2pLinkedReqByLinkType test +* @tc.type: FUNC +* @tc.require: +*/ +HWTEST_F(LNNLaneLinkP2pTest, RECYCLE_P2P_LINK_REQ_BY_LINK_TYPE_TEST_001, TestSize.Level1) +{ + NiceMock linkMock; + EXPECT_CALL(linkMock, GetWifiDirectManager).WillRepeatedly(Return(&g_manager)); + char peerNetWorkId[] = "testnetworkid"; + EXPECT_NO_FATAL_FAILURE(RecycleP2pLinkedReqByLinkType(peerNetWorkId, LANE_HML)); + uint32_t p2pRequestId = 0; + int32_t reason = SOFTBUS_LANE_NOT_FOUND; + EXPECT_NO_FATAL_FAILURE(HandleRawLinkResultByReqId(p2pRequestId, reason)); + int32_t linkId = 0; + LaneLinkInfo linkInfo = { + .linkInfo.rawWifiDirect.pid = 0, + }; + int32_t ret = AddRawLinkInfo(p2pRequestId, linkId, &linkInfo); + EXPECT_EQ(ret, SOFTBUS_OK); + EXPECT_NO_FATAL_FAILURE(HandleRawLinkResultByReqId(p2pRequestId, reason)); + EXPECT_NO_FATAL_FAILURE(LnnDestroyWifiDirectInfo()); + EXPECT_EQ(g_rawLinkList, nullptr); +} + +/* +* @tc.name: OPEN_ACTION_TO_CONN_TEST_001 +* @tc.desc: OpenActionToConn test +* @tc.type: FUNC +* @tc.require: +*/ +HWTEST_F(LNNLaneLinkP2pTest, OPEN_ACTION_TO_CONN_TEST_001, TestSize.Level1) +{ + NiceMock laneLinkMock; + EXPECT_CALL(laneLinkMock, GetTransReqInfoByLaneReqId).WillRepeatedly(Return(SOFTBUS_INVALID_PARAM)); + LinkRequest request = {}; + LaneLinkCb callback = {nullptr}; + int32_t ret = OpenActionToConn(nullptr, LANEREQID, &callback); + EXPECT_EQ(ret, SOFTBUS_INVALID_PARAM); + ret = OpenActionToConn(&request, LANEREQID, nullptr); + EXPECT_EQ(ret, SOFTBUS_INVALID_PARAM); + ret = OpenActionToConn(&request, LANEREQID, &callback); + EXPECT_EQ(ret, SOFTBUS_NOT_FIND); +} } \ No newline at end of file