代码拉取完成,页面将自动刷新
同步操作将从 src-openEuler/dsoftbus 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
From c7fe7e1422af2a0b4fdbd7e514f8b8c6054170e8 Mon Sep 17 00:00:00 2001
From: "beiling.xie" <[email protected]>
Date: Tue, 19 Jul 2022 21:01:41 +0800
Subject: [PATCH] support huks for openeuler
Signed-off-by: beiling.xie <[email protected]>
---
frameworks/huks_standard/main/BUILD.gn | 1 +
.../huks_standard/main/core/src/hks_verifier.c | 10 ++++++----
.../crypto_engine/openssl/src/hks_openssl_kdf.c | 4 +++-
.../huks_standard/main/os_dependency/BUILD.gn | 15 ++++++++++-----
.../main/os_dependency/log/hks_log.c | 14 +++++++-------
interfaces/innerkits/huks_standard/main/BUILD.gn | 1 +
.../huks_service/main/os_dependency/BUILD.gn | 2 +-
.../huks_service/main/os_dependency/idl/BUILD.gn | 6 +++---
utils/file_operator/hks_file_operator.c | 6 +++---
9 files changed, 35 insertions(+), 24 deletions(-)
diff --git a/frameworks/huks_standard/main/BUILD.gn b/frameworks/huks_standard/main/BUILD.gn
index 83d7750..cd899cd 100755
--- a/frameworks/huks_standard/main/BUILD.gn
+++ b/frameworks/huks_standard/main/BUILD.gn
@@ -20,6 +20,7 @@ group("huks_standard_frameworks") {
"//base/security/huks/frameworks/huks_standard/main/core:libhuks_core_standard_static",
"//base/security/huks/frameworks/huks_standard/main/crypto_engine:libhuks_crypto_engine_standard_static",
"//base/security/huks/frameworks/huks_standard/main/os_dependency:libhuks_os_dependency_standard_static",
+ "//base/security/huks/services/huks_standard/huks_service/main/os_dependency:libhuks_service_os_dependency_standard_static",
]
}
}
diff --git a/frameworks/huks_standard/main/core/src/hks_verifier.c b/frameworks/huks_standard/main/core/src/hks_verifier.c
index 149137d..a65f27e 100755
--- a/frameworks/huks_standard/main/core/src/hks_verifier.c
+++ b/frameworks/huks_standard/main/core/src/hks_verifier.c
@@ -250,8 +250,9 @@ static int32_t ExtractTlvLength(const uint8_t *in, uint32_t inLen, uint32_t *hea
uint8_t *buf = (uint8_t *)in;
uint32_t length = 0; /* length of the payload */
- uint32_t tmp;
- HKS_ASN1_DECODE_BYTE(buf, tmp); /* get type */
+// uint32_t tmp;
+// HKS_ASN1_DECODE_BYTE(buf, tmp); /* get type */
+ buf++;
if (buf[0] < ASN_1_MIN_VAL_1_EXTRA_LEN_BYTE) {
/* Current byte tells the length */
HKS_ASN1_DECODE_BYTE(buf, length);
@@ -301,8 +302,9 @@ static int32_t ExtractTlvData(const uint8_t *in, uint32_t inLen, uint8_t *out, u
uint8_t *buf = (uint8_t *)in;
uint32_t length = 0; /* length of the payload */
- uint32_t tmp;
- HKS_ASN1_DECODE_BYTE(buf, tmp); /* get type */
+// uint32_t tmp;
+// HKS_ASN1_DECODE_BYTE(buf, tmp); /* get type */
+ buf++;
if (buf[0] < ASN_1_MIN_VAL_1_EXTRA_LEN_BYTE) {
/* Current byte tells the length */
HKS_ASN1_DECODE_BYTE(buf, length);
diff --git a/frameworks/huks_standard/main/crypto_engine/openssl/src/hks_openssl_kdf.c b/frameworks/huks_standard/main/crypto_engine/openssl/src/hks_openssl_kdf.c
index 258b206..5db3e4d 100755
--- a/frameworks/huks_standard/main/crypto_engine/openssl/src/hks_openssl_kdf.c
+++ b/frameworks/huks_standard/main/crypto_engine/openssl/src/hks_openssl_kdf.c
@@ -57,6 +57,7 @@ int32_t HksOpensslHkdf(const struct HksBlob *mainKey, const struct HksKeySpec *d
EVP_PKEY_CTX *pctx;
pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_HKDF, NULL);
int32_t ret = HKS_FAILURE;
+
do {
if (EVP_PKEY_derive_init(pctx) <= 0) {
HksLogOpensslError();
@@ -78,7 +79,8 @@ int32_t HksOpensslHkdf(const struct HksBlob *mainKey, const struct HksKeySpec *d
HksLogOpensslError();
break;
}
- if (EVP_PKEY_derive(pctx, derivedKey->data, (size_t *)&derivedKey->size) <= 0) {
+ size_t new = derivedKey->size;
+ if (EVP_PKEY_derive(pctx, derivedKey->data, &new) <= 0) {
HksLogOpensslError();
break;
}
diff --git a/frameworks/huks_standard/main/os_dependency/BUILD.gn b/frameworks/huks_standard/main/os_dependency/BUILD.gn
index 7d03e55..6da94a5 100755
--- a/frameworks/huks_standard/main/os_dependency/BUILD.gn
+++ b/frameworks/huks_standard/main/os_dependency/BUILD.gn
@@ -26,6 +26,8 @@ ohos_static_library("libhuks_os_dependency_standard_static") {
public_configs = [ ":huks_config" ]
include_dirs = [
"log",
+ "sysinfo/include",
+ "../../../../services/huks_standard/huks_service/main/core/include/",
"//utils/native/base/include",
"//utils/system/safwk/native/include",
]
@@ -35,17 +37,20 @@ ohos_static_library("libhuks_os_dependency_standard_static") {
"_HUKS_LOG_ENABLE_",
]
sources = [
- "./ipc/src/hks_client_service_ipc.c",
- "./ipc/src/hks_ipc_check.c",
- "./ipc/src/hks_ipc_serialization.c",
- "./ipc/src/hks_ipc_slice.c",
- "./ipc/src/hks_request.cpp",
+# "./ipc/src/hks_client_service_ipc.c",
+# "./ipc/src/hks_ipc_check.c",
+# "./ipc/src/hks_ipc_serialization.c",
+# "./ipc/src/hks_ipc_slice.c",
+# "./ipc/src/hks_request.cpp",
+ "./ipc/src/hks_client_service_passthrough.c",
+ "./sysinfo/src/hks_get_process_info_passthrough.c",
"./log/hks_log.c",
"./posix/hks_mem.c",
]
deps = [
"//base/security/huks/frameworks/huks_standard/main/common:libhuks_common_standard_static",
"//utils/native/base:utils",
+ "//third_party/bounds_checking_function:libsec_shared",
]
external_deps = [
"hiviewdfx_hilog_native:libhilog",
diff --git a/frameworks/huks_standard/main/os_dependency/log/hks_log.c b/frameworks/huks_standard/main/os_dependency/log/hks_log.c
index ef7d264..5beadab 100755
--- a/frameworks/huks_standard/main/os_dependency/log/hks_log.c
+++ b/frameworks/huks_standard/main/os_dependency/log/hks_log.c
@@ -22,8 +22,8 @@
#undef LOG_DOMAIN
#undef LOG_TAG
-static const unsigned int LOG_DOMAIN = 0xD002F01;
-static const char* LOG_TAG = "HUKS";
+//static const unsigned int LOG_DOMAIN = 0xD002F01;
+//static const char* LOG_TAG = "HUKS";
#define MAX_LOG_BUFF_LEN 512
@@ -48,16 +48,16 @@ void HksLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char
switch (logLevel) {
case HKS_LOG_LEVEL_I:
- HILOG_INFO(LOG_CORE, "%{public}s[%{public}u]: %{public}s\n", funcName, lineNo, buf);
+ HILOG_INFO(LOG_CORE, "%s[%u]: %s\n", funcName, lineNo, buf);
break;
case HKS_LOG_LEVEL_E:
- HILOG_ERROR(LOG_CORE, "%{public}s[%{public}u]: %{public}s\n", funcName, lineNo, buf);
+ HILOG_ERROR(LOG_CORE, "%s[%u]: %s\n", funcName, lineNo, buf);
break;
case HKS_LOG_LEVEL_W:
- HILOG_WARN(LOG_CORE, "%{public}s[%{public}u]: %{public}s\n", funcName, lineNo, buf);
+ HILOG_WARN(LOG_CORE, "%s[%u]: %s\n", funcName, lineNo, buf);
break;
case HKS_LOG_LEVEL_D:
- HILOG_DEBUG(LOG_CORE, "%{public}s[%{public}u]: %{private}s\n", funcName, lineNo, buf);
+ HILOG_DEBUG(LOG_CORE, "%s[%u]: %s\n", funcName, lineNo, buf);
break;
default:
HKS_FREE_PTR(buf);
@@ -65,4 +65,4 @@ void HksLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char
}
HKS_FREE_PTR(buf);
-}
\ No newline at end of file
+}
diff --git a/interfaces/innerkits/huks_standard/main/BUILD.gn b/interfaces/innerkits/huks_standard/main/BUILD.gn
index 1ca1e02..88e620d 100755
--- a/interfaces/innerkits/huks_standard/main/BUILD.gn
+++ b/interfaces/innerkits/huks_standard/main/BUILD.gn
@@ -41,6 +41,7 @@ if (os_level == "standard") {
deps = [
"//base/security/huks/frameworks/huks_standard/main:huks_standard_frameworks",
"//base/security/huks/utils/crypto_adapter:libhuks_utils_client_service_adapter_static",
+ "//base/security/huks/services/huks_standard/huks_engine/main/core:huks_engine_core_standard",
]
}
}
diff --git a/services/huks_standard/huks_service/main/os_dependency/BUILD.gn b/services/huks_standard/huks_service/main/os_dependency/BUILD.gn
index 931d20c..01078b7 100755
--- a/services/huks_standard/huks_service/main/os_dependency/BUILD.gn
+++ b/services/huks_standard/huks_service/main/os_dependency/BUILD.gn
@@ -34,7 +34,7 @@ ohos_static_library("libhuks_service_os_dependency_standard_static") {
]
sources = [
"posix/hks_rwlock.c",
- "sa/hks_sa.cpp",
+# "sa/hks_sa.cpp",
]
deps = [
"//base/security/huks/frameworks/huks_standard/main/common:libhuks_common_standard_static",
diff --git a/services/huks_standard/huks_service/main/os_dependency/idl/BUILD.gn b/services/huks_standard/huks_service/main/os_dependency/idl/BUILD.gn
index e86a491..3ffcfa1 100755
--- a/services/huks_standard/huks_service/main/os_dependency/idl/BUILD.gn
+++ b/services/huks_standard/huks_service/main/os_dependency/idl/BUILD.gn
@@ -32,9 +32,9 @@ ohos_static_library("libhuks_service_idl_standard_static") {
"_HUKS_LOG_ENABLE_",
]
sources = [
- "ipc/hks_ipc_serialization.c",
- "ipc/hks_ipc_service.c",
- "ipc/hks_response.cpp",
+# "ipc/hks_ipc_serialization.c",
+# "ipc/hks_ipc_service.c",
+# "ipc/hks_response.cpp",
"passthrough/huks_access.c",
"passthrough/huks_core_dynamic_hal.c",
]
diff --git a/utils/file_operator/hks_file_operator.c b/utils/file_operator/hks_file_operator.c
index 5543c38..5c2e704 100755
--- a/utils/file_operator/hks_file_operator.c
+++ b/utils/file_operator/hks_file_operator.c
@@ -93,7 +93,7 @@ static uint32_t FileRead(const char *fileName, uint32_t offset, uint8_t *buf, ui
}
char filePath[PATH_MAX + 1] = {0};
- (void)realpath(fileName, filePath);
+ char *path __attribute__((unused)) = realpath(fileName, filePath);
if (strstr(filePath, "../") != NULL) {
HKS_LOG_E("invalid filePath, path %s", filePath);
return 0;
@@ -137,7 +137,7 @@ static int32_t FileWrite(const char *fileName, uint32_t offset, const uint8_t *b
if (memcpy_s(filePath, sizeof(filePath) - 1, fileName, strlen(fileName)) != EOK) {
return HKS_ERROR_BAD_STATE;
}
- (void)realpath(fileName, filePath);
+ char *path __attribute__((unused)) = realpath(fileName, filePath);
if (strstr(filePath, "../") != NULL) {
HKS_LOG_E("invalid filePath, path %s", filePath);
return HKS_ERROR_INVALID_KEY_FILE;
@@ -519,4 +519,4 @@ uint32_t HksFileSize(const char *path, const char *fileName)
int32_t HksGetFileName(const char *path, const char *fileName, char *fullFileName, uint32_t fullFileNameLen)
{
return GetFileName(path, fileName, fullFileName, fullFileNameLen);
-}
\ No newline at end of file
+}
--
2.25.1
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。