From e0fd4257b04fe9c3e2fdfb53748ae2bd8c8ee9cd Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 16:54:32 +0800 Subject: [PATCH 1/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 14e03e3e..0ff81dbd 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -31,6 +31,12 @@ namespace DistributedHardware { #undef DH_LOG_TAG #define DH_LOG_TAG "ComponentLoader" +#ifdef __LP64__ +#define LIB_LOAD_PATH = "system/lib64" +#else +#define LIB_LOAD_PATH = "system/lib" +#endif + IMPLEMENT_SINGLE_INSTANCE(ComponentLoader); using GetHardwareClass = IHardwareHandler *(*)(); using GetSourceHardwareClass = IDistributedHardwareSource *(*)(); @@ -131,7 +137,8 @@ void *ComponentLoader::GetHandler(const std::string &soName) return nullptr; } char path[PATH_MAX + 1] = {0x00}; - if (soName.length() == 0 || soName.length() > PATH_MAX || realpath(soName.c_str(), path) == nullptr) { + if (soName.length() == 0 || soName.length() > PATH_MAX || + realpath(LIB_LOAD_PATH + soName.c_str(), path) == nullptr) { DHLOGE("File canonicalization failed"); return nullptr; } -- Gitee From 7863ed2238ec04fd9764a4620e4b87a9b1ad4350 Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 17:22:28 +0800 Subject: [PATCH 2/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 0ff81dbd..aa40d3b3 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -31,12 +31,6 @@ namespace DistributedHardware { #undef DH_LOG_TAG #define DH_LOG_TAG "ComponentLoader" -#ifdef __LP64__ -#define LIB_LOAD_PATH = "system/lib64" -#else -#define LIB_LOAD_PATH = "system/lib" -#endif - IMPLEMENT_SINGLE_INSTANCE(ComponentLoader); using GetHardwareClass = IHardwareHandler *(*)(); using GetSourceHardwareClass = IDistributedHardwareSource *(*)(); @@ -48,6 +42,11 @@ const std::string DEFAULT_SOURCE_LOC = ""; const std::string DEFAULT_SINK_LOC = ""; const std::string DEFAULT_TYPE = "UNKNOWN"; const std::string DEFAULT_VERSION = "1.0"; +#ifdef __LP64__ +const std::string LIB_LOAD_PATH = "system/lib64"; +#else +const std::string LIB_LOAD_PATH = "system/lib" +#endif } std::map g_mapDhTypeName = { { "UNKNOWN", DHType::UNKNOWN }, -- Gitee From 2fb72ed3b5dc7b1d0f3fd05d204ea76f86757e73 Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 17:32:10 +0800 Subject: [PATCH 3/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index aa40d3b3..3cf56849 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -136,7 +136,7 @@ void *ComponentLoader::GetHandler(const std::string &soName) return nullptr; } char path[PATH_MAX + 1] = {0x00}; - if (soName.length() == 0 || soName.length() > PATH_MAX || + if (soName.length() == 0 || soName.length() + LIB_LOAD_PATH.length() > PATH_MAX || realpath(LIB_LOAD_PATH + soName.c_str(), path) == nullptr) { DHLOGE("File canonicalization failed"); return nullptr; -- Gitee From 1353481b4c441ec904441e125cd63dbed4386bc6 Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 17:37:24 +0800 Subject: [PATCH 4/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 3cf56849..85f380fa 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -137,7 +137,7 @@ void *ComponentLoader::GetHandler(const std::string &soName) } char path[PATH_MAX + 1] = {0x00}; if (soName.length() == 0 || soName.length() + LIB_LOAD_PATH.length() > PATH_MAX || - realpath(LIB_LOAD_PATH + soName.c_str(), path) == nullptr) { + realpath(LIB_LOAD_PATH + soName.c_str(), path) == nullptr) { DHLOGE("File canonicalization failed"); return nullptr; } -- Gitee From 7f66af332c47291a32456b34e61d10c84b7a511b Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 18:03:36 +0800 Subject: [PATCH 5/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 85f380fa..cea8032b 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -137,7 +137,7 @@ void *ComponentLoader::GetHandler(const std::string &soName) } char path[PATH_MAX + 1] = {0x00}; if (soName.length() == 0 || soName.length() + LIB_LOAD_PATH.length() > PATH_MAX || - realpath(LIB_LOAD_PATH + soName.c_str(), path) == nullptr) { + realpath((LIB_LOAD_PATH + soName).c_str(), path) == nullptr) { DHLOGE("File canonicalization failed"); return nullptr; } -- Gitee From 801fd77ab058521f5766b0d95694de0a3543e5d8 Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Wed, 13 Apr 2022 18:29:37 +0800 Subject: [PATCH 6/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index cea8032b..20fa485d 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -45,7 +45,7 @@ const std::string DEFAULT_VERSION = "1.0"; #ifdef __LP64__ const std::string LIB_LOAD_PATH = "system/lib64"; #else -const std::string LIB_LOAD_PATH = "system/lib" +const std::string LIB_LOAD_PATH = "system/lib"; #endif } std::map g_mapDhTypeName = { -- Gitee From 5f751351431fe2a63a058240e86598a9ec5551bf Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Thu, 14 Apr 2022 09:36:34 +0800 Subject: [PATCH 7/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 20fa485d..e5c77c4c 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -43,9 +43,9 @@ const std::string DEFAULT_SINK_LOC = ""; const std::string DEFAULT_TYPE = "UNKNOWN"; const std::string DEFAULT_VERSION = "1.0"; #ifdef __LP64__ -const std::string LIB_LOAD_PATH = "system/lib64"; +const std::string LIB_LOAD_PATH = "/system/lib64"; #else -const std::string LIB_LOAD_PATH = "system/lib"; +const std::string LIB_LOAD_PATH = "/system/lib"; #endif } std::map g_mapDhTypeName = { -- Gitee From 3f204f47596977bf67b5aec40a89bc78594cb781 Mon Sep 17 00:00:00 2001 From: wanderer-dl122 Date: Thu, 14 Apr 2022 10:16:39 +0800 Subject: [PATCH 8/9] support 64 bit Signed-off-by: wanderer-dl122 --- .../src/componentloader/component_loader.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index e5c77c4c..6ef07304 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -43,9 +43,9 @@ const std::string DEFAULT_SINK_LOC = ""; const std::string DEFAULT_TYPE = "UNKNOWN"; const std::string DEFAULT_VERSION = "1.0"; #ifdef __LP64__ -const std::string LIB_LOAD_PATH = "/system/lib64"; +const std::string LIB_LOAD_PATH = "/system/lib64/"; #else -const std::string LIB_LOAD_PATH = "/system/lib"; +const std::string LIB_LOAD_PATH = "/system/lib/"; #endif } std::map g_mapDhTypeName = { -- Gitee From 5d0ab3049d72be232bc78dcd8effb75bcefa0586 Mon Sep 17 00:00:00 2001 From: 15521373013 Date: Tue, 19 Apr 2022 18:11:16 +0800 Subject: [PATCH 9/9] support 64bit Signed-off-by: 15521373013 --- .../src/componentloader/component_loader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp index 6ef07304..3f03d718 100644 --- a/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp +++ b/services/distributedhardwarefwkserviceimpl/src/componentloader/component_loader.cpp @@ -136,7 +136,7 @@ void *ComponentLoader::GetHandler(const std::string &soName) return nullptr; } char path[PATH_MAX + 1] = {0x00}; - if (soName.length() == 0 || soName.length() + LIB_LOAD_PATH.length() > PATH_MAX || + if (soName.length() == 0 || (LIB_LOAD_PATH.length() + soName.length()) > PATH_MAX || realpath((LIB_LOAD_PATH + soName).c_str(), path) == nullptr) { DHLOGE("File canonicalization failed"); return nullptr; -- Gitee