diff --git a/cert_mgr_service/interfaces/innerkits/native_cpp/src/cert_mgr_service_proxy.cpp b/cert_mgr_service/interfaces/innerkits/native_cpp/src/cert_mgr_service_proxy.cpp index cb6f733fa174e87443f3fa5dd36266f2718dbe7e..f73ff7fecb49a9ca3afddf3c16f4a626e49701c2 100644 --- a/cert_mgr_service/interfaces/innerkits/native_cpp/src/cert_mgr_service_proxy.cpp +++ b/cert_mgr_service/interfaces/innerkits/native_cpp/src/cert_mgr_service_proxy.cpp @@ -55,7 +55,11 @@ int32_t CertMgrServiceProxy::GetCertStatus(CertResultInfo &certResultInfo) if (authRet == CERTMANAGER_SUCCESS) { sptr certResultInfoPtr = CertResultInfo::Unmarshalling(reply); certResultInfo = *certResultInfoPtr; + } else { + HILOGE("GetCertStatus: authRet failed code %{public}d", authRet); + return CERTMANAGER_FAIL; } + return CERTMANAGER_SUCCESS; } } diff --git a/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_service_stub.cpp b/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_service_stub.cpp index 98337cef50ebc2ce5fd916324437535f1e08dc3b..2c76d0b030cf5a161bf8fdb404bd962e2624350a 100644 --- a/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_service_stub.cpp +++ b/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_service_stub.cpp @@ -77,6 +77,9 @@ int CertMgrServiceStub::GetCertStatusInner(MessageParcel& data, MessageParcel& r HILOGE("GetCertStatusInner stub Marshalling failed"); return CERTMANAGER_FAIL; } + } else { + HILOGE("GetCertStatusInner: GetCertStatus fail, %{public}d", ret); + return CERTMANAGER_FAIL; } return CERTMANAGER_SUCCESS; } diff --git a/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_system_ability_listener.cpp b/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_system_ability_listener.cpp index 5f9df854fce23557dc1151af51f92b6bd7ee57ad..296793ab5d2ebeed058236dc467d67696dd823fe 100644 --- a/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_system_ability_listener.cpp +++ b/cert_mgr_service/services/cert_mgr_ability/src/cert_mgr_system_ability_listener.cpp @@ -16,6 +16,7 @@ #include "cert_mgr_system_ability_listener.h" #include "cstdint" +#include #include "net_conn_client.h" #include "net_conn_constants.h" @@ -30,6 +31,7 @@ namespace OHOS { namespace CertManager { using namespace NetManagerStandard; +constexpr std::int32_t WAIT_FOR_KVSTORE = 1000; void CertMgrSystemAbilityListener::OnAddSystemAbility(int32_t systemAbilityId, const std::string& deviceId) { @@ -42,7 +44,15 @@ void CertMgrSystemAbilityListener::OnAddSystemAbility(int32_t systemAbilityId, c } sptr callback = (std::make_unique()).release(); - int32_t ret = netManager->RegisterNetConnCallback(callback); + int32_t ret = 0; + for (size_t i = 0; i < 5; i++) { + std::this_thread::sleep_for(std::chrono::milliseconds(WAIT_FOR_KVSTORE)); + ret = netManager->RegisterNetConnCallback(callback); + if (ret == NetConnResultCode::NET_CONN_SUCCESS) { + break; + } + } + if (ret == NetConnResultCode::NET_CONN_SUCCESS) { HILOGE("RegisterNetConnCallback success."); } else { diff --git a/cert_mgr_service/services/core/network/cert_network.c b/cert_mgr_service/services/core/network/cert_network.c index b135e8e7dfeda4936eef5786378e3c50e146d276..181b465b422d2538042cea2edffa533fd9195428 100644 --- a/cert_mgr_service/services/core/network/cert_network.c +++ b/cert_mgr_service/services/core/network/cert_network.c @@ -262,14 +262,14 @@ static int32_t InitSocketClient(int32_t *socketFd) HttpPacket msgHttpPack = { 0 }; if (socketFd == NULL) { - CERT_LOG_ERROR("[InitSocketClient] InitSocket Parameter is NULL \n"); + CERT_LOG_ERROR("[InitSocketClient] InitSocket Parameter is NULL"); return CERT_ERR; } /* 获取网络基础数据 */ retCode = InitReqHost(&msgHttpPack); if (retCode != CERT_OK) { - CERT_LOG_ERROR("[InitSocketClient] Init Request Host failed \n"); + CERT_LOG_ERROR("[InitSocketClient] Init Request Host failed"); return retCode; } @@ -279,7 +279,7 @@ static int32_t InitSocketClient(int32_t *socketFd) retCode = memset_s(&hints, sizeof(struct addrinfo), 0, sizeof(struct addrinfo)); if (retCode != CERT_OK) { - CERT_LOG_ERROR("[InitSocketClient] Init template hints failed \n"); + CERT_LOG_ERROR("[InitSocketClient] Init template hints failed"); return retCode; } @@ -289,7 +289,7 @@ static int32_t InitSocketClient(int32_t *socketFd) retCode = getaddrinfo(msgHttpPack.reqHost, msgHttpPack.reqPort, &hints, &resAddr); if (retCode != 0) { - CERT_LOG_ERROR("[InitSocketClient] InitSocket getaddr %s fail, error:%d\n", msgHttpPack.reqHost, h_errno); + CERT_LOG_ERROR("[InitSocketClient] InitSocket getaddr %s fail, error:%d", msgHttpPack.reqHost, h_errno); return CERT_ERR; } @@ -311,23 +311,23 @@ static int32_t InitSocketClient(int32_t *socketFd) freeaddrinfo(resAddr); if (retCode != CERT_OK) { - CERT_LOG_ERROR("[InitSocketClient] InitSocket connect fail, \n"); + CERT_LOG_ERROR("[InitSocketClient] InitSocket connect fail"); return CERT_ERR; } /* 设置socket连接的一些属性,超时时间,发送缓冲区Buffer等 */ if (setsockopt(sockfd, SOL_SOCKET, SO_SNDTIMEO, (const char *)&timeout, sizeof(timeout)) < 0) { - CERT_LOG_ERROR("[InitSocketClient] Setsockopt send timeout fail\n"); + CERT_LOG_ERROR("[InitSocketClient] Setsockopt send timeout fail"); return CERT_ERR; } if (setsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (const char *)&bufLen, 4) < 0) { - CERT_LOG_ERROR("[InitSocketClient] Setsockopt sendbuffer fail\n"); + CERT_LOG_ERROR("[InitSocketClient] Setsockopt sendbuffer fail"); return CERT_ERR; } if (setsockopt(sockfd, SOL_SOCKET, SO_RCVTIMEO, (const char *)&timeout, sizeof(timeout)) < 0) { - CERT_LOG_ERROR("[InitSocketClient] Setsockopt rcv fail\n"); + CERT_LOG_ERROR("[InitSocketClient] Setsockopt rcv fail"); return CERT_ERR; }