From e6b3d7156b3f705854715876ba4ac4a3877cddca Mon Sep 17 00:00:00 2001 From: lihehe Date: Tue, 27 Aug 2024 10:25:44 +0800 Subject: [PATCH] fix bugs for check jit status Signed-off-by: lihehe Change-Id: I601ac6073db6c63941ffeec9a4619191df029a07 --- .../innerkits/jit_code_sign/include/jit_buffer_integrity.h | 3 +-- interfaces/innerkits/jit_code_sign/include/jit_fort_helper.h | 4 +++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/interfaces/innerkits/jit_code_sign/include/jit_buffer_integrity.h b/interfaces/innerkits/jit_code_sign/include/jit_buffer_integrity.h index 95a7dd1..5b61c48 100644 --- a/interfaces/innerkits/jit_code_sign/include/jit_buffer_integrity.h +++ b/interfaces/innerkits/jit_code_sign/include/jit_buffer_integrity.h @@ -20,7 +20,6 @@ #include #include "errcode.h" -#include "jit_fort_helper.h" #include "jit_code_signer_base.h" #include "jit_code_signer_factory.h" #include "jit_fort_helper.h" @@ -214,7 +213,7 @@ __attribute__((no_sanitize("cfi"))) static inline int32_t CopyToJitCode( return CS_ERR_JITFORT_IN; } #endif - if (IsSupportPACFeature()) { + if (IsSupportJitCodeSigner()) { ret = signer->ValidateCodeCopy(reinterpret_cast(jitMemory), reinterpret_cast(tmpBuffer), size); } else { diff --git a/interfaces/innerkits/jit_code_sign/include/jit_fort_helper.h b/interfaces/innerkits/jit_code_sign/include/jit_fort_helper.h index 46b33a9..e793004 100644 --- a/interfaces/innerkits/jit_code_sign/include/jit_fort_helper.h +++ b/interfaces/innerkits/jit_code_sign/include/jit_fort_helper.h @@ -22,7 +22,6 @@ #ifdef __aarch64__ #include #include -#include #endif #include "errcode.h" @@ -68,6 +67,9 @@ __attribute__((always_inline)) static inline bool IsSupportPACFeature() { #ifdef __aarch64__ long hwcaps = PrctlWrapper(JITFORT_PRCTL_OPTION, JITFORT_CPU_FEATURES, 0); + if (hwcaps < 0) { + return false; + } if ((hwcaps & HWCAP_PACA) && (hwcaps & HWCAP_PACG)) { return true; } -- Gitee