From e5a36e9eac0d60af2590f1017b57a409e3df3ed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E7=8F=9E=E9=A3=8E?= Date: Thu, 10 Mar 2022 08:17:35 +0000 Subject: [PATCH 1/3] 1 --- services/bundlemgr_lite/src/bundle_util.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/services/bundlemgr_lite/src/bundle_util.cpp b/services/bundlemgr_lite/src/bundle_util.cpp index 7458161..2afa9fb 100755 --- a/services/bundlemgr_lite/src/bundle_util.cpp +++ b/services/bundlemgr_lite/src/bundle_util.cpp @@ -504,6 +504,14 @@ void BundleUtil::CreateRandStr(char *str, uint32_t len) #else srand(LOS_TickCountGet()); #endif + + int fd; + fd = open("/dev/random", O_RDONLY); + if (fd > 0) { + read(fd, &r, sizeof(int)); + } + close(fd); + uint32_t i; for (i = 0; i < len - 1; ++i) { switch ((rand() % NUM_OF_TYPE)) { -- Gitee From c188bfe909e68c86555d175fd8629ee2d1743541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E7=8F=9E=E9=A3=8E?= Date: Thu, 10 Mar 2022 08:33:01 +0000 Subject: [PATCH 2/3] 2 --- services/bundlemgr_lite/src/bundle_util.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/services/bundlemgr_lite/src/bundle_util.cpp b/services/bundlemgr_lite/src/bundle_util.cpp index 2afa9fb..f43daa3 100755 --- a/services/bundlemgr_lite/src/bundle_util.cpp +++ b/services/bundlemgr_lite/src/bundle_util.cpp @@ -506,6 +506,7 @@ void BundleUtil::CreateRandStr(char *str, uint32_t len) #endif int fd; + int r = 0; fd = open("/dev/random", O_RDONLY); if (fd > 0) { read(fd, &r, sizeof(int)); -- Gitee From d8ccff95667299f708fa709c4f5590d0827a746d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E7=8F=9E=E9=A3=8E?= Date: Thu, 10 Mar 2022 09:55:39 +0000 Subject: [PATCH 3/3] 2 --- services/bundlemgr_lite/src/bundle_util.cpp | 24 ++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/services/bundlemgr_lite/src/bundle_util.cpp b/services/bundlemgr_lite/src/bundle_util.cpp index f43daa3..00afe24 100755 --- a/services/bundlemgr_lite/src/bundle_util.cpp +++ b/services/bundlemgr_lite/src/bundle_util.cpp @@ -494,6 +494,18 @@ cJSON *BundleUtil::ConvertInstallRecordToJson(const InstallRecord &installRecord return root; } +int CreateRand(void) +{ + int fd; + int r = 0; + fd = open("/dev/random", O_RDONLY); + if (fd > 0) { + read(fd, &r, sizeof(int)); + } + close(fd); + return r; +} + void BundleUtil::CreateRandStr(char *str, uint32_t len) { if (str == nullptr) { @@ -504,20 +516,12 @@ void BundleUtil::CreateRandStr(char *str, uint32_t len) #else srand(LOS_TickCountGet()); #endif - - int fd; - int r = 0; - fd = open("/dev/random", O_RDONLY); - if (fd > 0) { - read(fd, &r, sizeof(int)); - } - close(fd); - + uint32_t i; for (i = 0; i < len - 1; ++i) { switch ((rand() % NUM_OF_TYPE)) { case 0: - str[i] = 'A' + rand() % MAX_CHARACTER_VALUE; + str[i] = 'A' + CreateRand() % MAX_CHARACTER_VALUE; break; case 1: str[i] = 'a' + rand() % MAX_CHARACTER_VALUE; -- Gitee