From ff3b4703d1ca728c36e02624fab5f9a07bc7d9ed Mon Sep 17 00:00:00 2001 From: liuyifei Date: Fri, 28 Mar 2025 11:24:37 +0800 Subject: [PATCH 1/2] enable CFI Signed-off-by: liuyifei --- frameworks/hilog_ndk/BUILD.gn | 1 + frameworks/libhilog/BUILD.gn | 6 ++++++ interfaces/native/innerkits/BUILD.gn | 2 ++ services/hilogd/BUILD.gn | 6 ++++++ services/hilogtool/BUILD.gn | 6 ++++++ 5 files changed, 21 insertions(+) diff --git a/frameworks/hilog_ndk/BUILD.gn b/frameworks/hilog_ndk/BUILD.gn index ff22b32..d69f53f 100644 --- a/frameworks/hilog_ndk/BUILD.gn +++ b/frameworks/hilog_ndk/BUILD.gn @@ -14,6 +14,7 @@ import("//build/ohos.gni") ohos_shared_library("hilog_ndk") { + branch_protector_ret = "pac_ret" sanitize = { cfi = true cfi_cross_dso = true diff --git a/frameworks/libhilog/BUILD.gn b/frameworks/libhilog/BUILD.gn index c8bbd92..02e4540 100644 --- a/frameworks/libhilog/BUILD.gn +++ b/frameworks/libhilog/BUILD.gn @@ -41,6 +41,12 @@ config("libhilog_config") { template("libhilog_source") { forward_variables_from(invoker, "*") ohos_source_set(target_name) { + branch_protector_ret = "pac_ret" + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } if (platform != "windows" && platform != "mac" && platform != "linux") { param_sources = [ "$param_root/properties.cpp" ] ioctl_sources = [ "$ioctl_root/log_ioctl.cpp" ] diff --git a/interfaces/native/innerkits/BUILD.gn b/interfaces/native/innerkits/BUILD.gn index 26c638b..8c43d64 100644 --- a/interfaces/native/innerkits/BUILD.gn +++ b/interfaces/native/innerkits/BUILD.gn @@ -49,6 +49,7 @@ if (is_mingw || is_mac || is_linux || is_ohos) { "system", "updater", ] + branch_protector_ret = "pac_ret" sanitize = { cfi = true cfi_cross_dso = true @@ -73,6 +74,7 @@ template("libhilog") { } } else { ohos_shared_library(target_name) { + branch_protector_ret = "pac_ret" sanitize = { cfi = true cfi_cross_dso = true diff --git a/services/hilogd/BUILD.gn b/services/hilogd/BUILD.gn index 9a5bbed..5ad2377 100644 --- a/services/hilogd/BUILD.gn +++ b/services/hilogd/BUILD.gn @@ -20,6 +20,12 @@ config("hilogd_config") { } ohos_executable("hilogd") { + branch_protector_ret = "pac_ret" + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } sources = [ "cmd_executor.cpp", "flow_control.cpp", diff --git a/services/hilogtool/BUILD.gn b/services/hilogtool/BUILD.gn index aa7ea15..b142f96 100644 --- a/services/hilogtool/BUILD.gn +++ b/services/hilogtool/BUILD.gn @@ -20,6 +20,12 @@ config("hilog_config") { } ohos_executable("hilog") { + branch_protector_ret = "pac_ret" + sanitize = { + cfi = true + cfi_cross_dso = true + debug = false + } sources = [ "log_display.cpp", "main.cpp", -- Gitee From 22d47b6c0295f755a0dfcf0d68122d5a118a2dca Mon Sep 17 00:00:00 2001 From: liuyifei Date: Fri, 28 Mar 2025 04:04:14 +0000 Subject: [PATCH 2/2] update frameworks/libhilog/BUILD.gn. Signed-off-by: liuyifei --- frameworks/libhilog/BUILD.gn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frameworks/libhilog/BUILD.gn b/frameworks/libhilog/BUILD.gn index 02e4540..e201517 100644 --- a/frameworks/libhilog/BUILD.gn +++ b/frameworks/libhilog/BUILD.gn @@ -42,7 +42,7 @@ template("libhilog_source") { forward_variables_from(invoker, "*") ohos_source_set(target_name) { branch_protector_ret = "pac_ret" - sanitize = { + sanitize = { cfi = true cfi_cross_dso = true debug = false -- Gitee