diff --git a/BUILD.gn b/BUILD.gn index 5ab61f4069fa06396b18841e10937ed8cbbc7262..ea2530c91f4ba099be9d19c7a42efaee96fa7838 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -35,6 +35,12 @@ group("cert_manager_napi") { } } +group("cert_manager_cjapi") { + if (os_level == "standard") { + deps = [ "./interfaces/kits/cj:cj_cert_manager_ffi" ] + } +} + group("cipher_napi") { if (os_level == "standard") { if (support_jsapi) { @@ -46,6 +52,7 @@ group("cipher_napi") { group("cert_manager_type_base") { if (os_level == "standard") { deps = [ + ":cert_manager_cjapi", ":cert_manager_napi", "./config:trusted_system_certificate0", "./config:trusted_system_certificate1", diff --git a/bundle.json b/bundle.json index df299919c7e108712ad6d0128f65e6c788d71a91..cc7cfde53389982453b9572c7fdbf121eda63501 100644 --- a/bundle.json +++ b/bundle.json @@ -16,7 +16,10 @@ "component": { "name": "certificate_manager", "subsystem": "security", - "syscap": [ "SystemCapability.Security.CertificateManager" ], + "syscap": [ + "SystemCapability.Security.CertificateManagerDialog", + "SystemCapability.Security.CertificateManager" + ], "features": [ "certificate_manager_deps_huks_enabled", "certificate_manager_feature_ca_enabled", @@ -74,7 +77,8 @@ "name": "//base/security/certificate_manager/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", "header": { "header_files": [ - "cert_manager_api.h" + "cert_manager_api.h", + "cm_type.h" ], "header_base": "//base/security/certificate_manager/interfaces/innerkits/cert_manager_standard/main/include" } diff --git a/cert_manager.gni b/cert_manager.gni index 3ea04e460099705416638af0168c348174d47101..b4c913a474d32bc6b1b05376a16eac768293b1ee 100644 --- a/cert_manager.gni +++ b/cert_manager.gni @@ -13,6 +13,7 @@ use_crypto_lib = "openssl" non_rwlock_support = false +cert_manager_root_dir = "//base/security/certificate_manager" declare_args() { # depend on the definition of huks security level in base/security/huks/build/config.gni diff --git a/config/BUILD.gn b/config/BUILD.gn index 689c58a59618ce9c2e3d351eea60f5778a6529a3..9b70e61ac1456953b4e3a96c10b2822f4907c483 100644 --- a/config/BUILD.gn +++ b/config/BUILD.gn @@ -18,6 +18,10 @@ ohos_prebuilt_etc("trusted_system_certificate0") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate1") { @@ -25,6 +29,10 @@ ohos_prebuilt_etc("trusted_system_certificate1") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate2") { @@ -32,6 +40,10 @@ ohos_prebuilt_etc("trusted_system_certificate2") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate3") { @@ -39,6 +51,10 @@ ohos_prebuilt_etc("trusted_system_certificate3") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate4") { @@ -46,6 +62,10 @@ ohos_prebuilt_etc("trusted_system_certificate4") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate5") { @@ -53,6 +73,10 @@ ohos_prebuilt_etc("trusted_system_certificate5") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate6") { @@ -60,6 +84,10 @@ ohos_prebuilt_etc("trusted_system_certificate6") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate7") { @@ -67,6 +95,10 @@ ohos_prebuilt_etc("trusted_system_certificate7") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate8") { @@ -74,6 +106,10 @@ ohos_prebuilt_etc("trusted_system_certificate8") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate9") { @@ -81,6 +117,10 @@ ohos_prebuilt_etc("trusted_system_certificate9") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate10") { @@ -88,6 +128,10 @@ ohos_prebuilt_etc("trusted_system_certificate10") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate11") { @@ -95,6 +139,10 @@ ohos_prebuilt_etc("trusted_system_certificate11") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate12") { @@ -102,6 +150,10 @@ ohos_prebuilt_etc("trusted_system_certificate12") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate13") { @@ -109,6 +161,10 @@ ohos_prebuilt_etc("trusted_system_certificate13") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate14") { @@ -116,6 +172,10 @@ ohos_prebuilt_etc("trusted_system_certificate14") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate15") { @@ -123,6 +183,10 @@ ohos_prebuilt_etc("trusted_system_certificate15") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate16") { @@ -130,6 +194,10 @@ ohos_prebuilt_etc("trusted_system_certificate16") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate17") { @@ -137,6 +205,10 @@ ohos_prebuilt_etc("trusted_system_certificate17") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate18") { @@ -144,6 +216,10 @@ ohos_prebuilt_etc("trusted_system_certificate18") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate19") { @@ -151,6 +227,10 @@ ohos_prebuilt_etc("trusted_system_certificate19") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate20") { @@ -158,6 +238,10 @@ ohos_prebuilt_etc("trusted_system_certificate20") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate21") { @@ -165,6 +249,10 @@ ohos_prebuilt_etc("trusted_system_certificate21") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate22") { @@ -172,6 +260,10 @@ ohos_prebuilt_etc("trusted_system_certificate22") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate23") { @@ -179,6 +271,10 @@ ohos_prebuilt_etc("trusted_system_certificate23") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate24") { @@ -186,6 +282,10 @@ ohos_prebuilt_etc("trusted_system_certificate24") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate25") { @@ -193,6 +293,10 @@ ohos_prebuilt_etc("trusted_system_certificate25") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate26") { @@ -200,6 +304,10 @@ ohos_prebuilt_etc("trusted_system_certificate26") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate27") { @@ -207,6 +315,10 @@ ohos_prebuilt_etc("trusted_system_certificate27") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate28") { @@ -214,6 +326,10 @@ ohos_prebuilt_etc("trusted_system_certificate28") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate29") { @@ -221,6 +337,10 @@ ohos_prebuilt_etc("trusted_system_certificate29") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate30") { @@ -228,6 +348,10 @@ ohos_prebuilt_etc("trusted_system_certificate30") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate31") { @@ -235,6 +359,10 @@ ohos_prebuilt_etc("trusted_system_certificate31") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate32") { @@ -242,6 +370,10 @@ ohos_prebuilt_etc("trusted_system_certificate32") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate33") { @@ -249,6 +381,10 @@ ohos_prebuilt_etc("trusted_system_certificate33") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate34") { @@ -256,6 +392,10 @@ ohos_prebuilt_etc("trusted_system_certificate34") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate35") { @@ -263,6 +403,10 @@ ohos_prebuilt_etc("trusted_system_certificate35") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate36") { @@ -270,6 +414,10 @@ ohos_prebuilt_etc("trusted_system_certificate36") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate37") { @@ -277,6 +425,10 @@ ohos_prebuilt_etc("trusted_system_certificate37") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate38") { @@ -284,6 +436,10 @@ ohos_prebuilt_etc("trusted_system_certificate38") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate39") { @@ -291,6 +447,10 @@ ohos_prebuilt_etc("trusted_system_certificate39") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate40") { @@ -298,6 +458,10 @@ ohos_prebuilt_etc("trusted_system_certificate40") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate41") { @@ -305,6 +469,10 @@ ohos_prebuilt_etc("trusted_system_certificate41") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate42") { @@ -312,6 +480,10 @@ ohos_prebuilt_etc("trusted_system_certificate42") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate43") { @@ -319,6 +491,10 @@ ohos_prebuilt_etc("trusted_system_certificate43") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate44") { @@ -326,6 +502,10 @@ ohos_prebuilt_etc("trusted_system_certificate44") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate45") { @@ -333,6 +513,10 @@ ohos_prebuilt_etc("trusted_system_certificate45") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate46") { @@ -340,6 +524,10 @@ ohos_prebuilt_etc("trusted_system_certificate46") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate47") { @@ -347,6 +535,10 @@ ohos_prebuilt_etc("trusted_system_certificate47") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate48") { @@ -354,6 +546,10 @@ ohos_prebuilt_etc("trusted_system_certificate48") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate49") { @@ -361,6 +557,10 @@ ohos_prebuilt_etc("trusted_system_certificate49") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate50") { @@ -368,6 +568,10 @@ ohos_prebuilt_etc("trusted_system_certificate50") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate51") { @@ -375,6 +579,10 @@ ohos_prebuilt_etc("trusted_system_certificate51") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate52") { @@ -382,6 +590,10 @@ ohos_prebuilt_etc("trusted_system_certificate52") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate53") { @@ -389,6 +601,10 @@ ohos_prebuilt_etc("trusted_system_certificate53") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate54") { @@ -396,6 +612,10 @@ ohos_prebuilt_etc("trusted_system_certificate54") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate55") { @@ -403,6 +623,10 @@ ohos_prebuilt_etc("trusted_system_certificate55") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate56") { @@ -410,6 +634,10 @@ ohos_prebuilt_etc("trusted_system_certificate56") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate57") { @@ -417,6 +645,10 @@ ohos_prebuilt_etc("trusted_system_certificate57") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate58") { @@ -424,6 +656,10 @@ ohos_prebuilt_etc("trusted_system_certificate58") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate59") { @@ -431,6 +667,10 @@ ohos_prebuilt_etc("trusted_system_certificate59") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate60") { @@ -438,6 +678,10 @@ ohos_prebuilt_etc("trusted_system_certificate60") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate61") { @@ -445,6 +689,10 @@ ohos_prebuilt_etc("trusted_system_certificate61") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate62") { @@ -452,6 +700,10 @@ ohos_prebuilt_etc("trusted_system_certificate62") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate63") { @@ -459,6 +711,10 @@ ohos_prebuilt_etc("trusted_system_certificate63") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate64") { @@ -466,6 +722,10 @@ ohos_prebuilt_etc("trusted_system_certificate64") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate65") { @@ -473,6 +733,10 @@ ohos_prebuilt_etc("trusted_system_certificate65") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate66") { @@ -480,6 +744,10 @@ ohos_prebuilt_etc("trusted_system_certificate66") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } ohos_prebuilt_etc("trusted_system_certificate67") { @@ -487,4 +755,8 @@ ohos_prebuilt_etc("trusted_system_certificate67") { part_name = "certificate_manager" subsystem_name = "security" relative_install_dir = "security/certificates" + install_images = [ + "system", + "updater", + ] } diff --git a/frameworks/cert_manager_standard/main/common/BUILD.gn b/frameworks/cert_manager_standard/main/common/BUILD.gn index b5219169c6068fe90febb0794d970e686f145daa..115ccf3703395f861a0e796569b1f4cec7e96725 100644 --- a/frameworks/cert_manager_standard/main/common/BUILD.gn +++ b/frameworks/cert_manager_standard/main/common/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -29,20 +30,16 @@ ohos_static_library("libcert_manager_common_standard_static") { integer_overflow = true ubsan = true } - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + public_configs = [ ":cert_manager_config" ] # Share include files for other gn when deps. - include_dirs = - [ "../../../../interfaces/innerkits/cert_manager_standard/main/include" ] - + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] sources = [ "src/cm_advsecmode_check.c", "src/cm_param.c", "src/cm_pfx.c", + "src/cm_util.c", "src/cm_x509.c", ] @@ -53,7 +50,6 @@ ohos_static_library("libcert_manager_common_standard_static") { "openssl:libcrypto_shared", ] cflags = [ - "-DHILOG_ENABLE", "-Wall", "-Werror", ] diff --git a/frameworks/cert_manager_standard/main/common/include/cert_manager_service_ipc_interface_code.h b/frameworks/cert_manager_standard/main/common/include/cert_manager_service_ipc_interface_code.h index 91b6a2e9f26fe231ddb9fcf20bb7683b127a7515..a6e1f1cb63845fb22a7bcf3a1c0f36ea8ebb65a3 100644 --- a/frameworks/cert_manager_standard/main/common/include/cert_manager_service_ipc_interface_code.h +++ b/frameworks/cert_manager_standard/main/common/include/cert_manager_service_ipc_interface_code.h @@ -24,7 +24,6 @@ extern "C" { enum CertManagerInterfaceCode { CM_MSG_BASE = 0, - CM_MSG_GEN_KEY = CM_MSG_BASE, CM_MSG_GET_CERTIFICATE_LIST, CM_MSG_GET_CERTIFICATE_INFO, CM_MSG_SET_CERTIFICATE_STATUS, diff --git a/frameworks/cert_manager_standard/main/common/include/cm_log.h b/frameworks/cert_manager_standard/main/common/include/cm_log.h index a1df0daa3f01d6cf09f56149b93f7bb81cd6883d..0b591ef6b531b49333e5a9f2e3bda48b60f05983 100644 --- a/frameworks/cert_manager_standard/main/common/include/cm_log.h +++ b/frameworks/cert_manager_standard/main/common/include/cm_log.h @@ -22,12 +22,10 @@ extern "C" { #endif -#ifdef _CM_LOG_ENABLE_ #undef LOG_TAG #define LOG_TAG "CertManager" #undef LOG_DOMAIN #define LOG_DOMAIN 0xD002F09 /* CertManager's domain id */ -#endif enum CmLogLevel { CM_LOG_LEVEL_I, @@ -36,19 +34,12 @@ enum CmLogLevel { CM_LOG_LEVEL_D, }; -#ifdef _CM_LOG_ENABLE_ void CmLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char *format, ...); #define CM_LOG_I(...) CmLog(CM_LOG_LEVEL_I, __func__, __LINE__, __VA_ARGS__) #define CM_LOG_W(...) CmLog(CM_LOG_LEVEL_W, __func__, __LINE__, __VA_ARGS__) #define CM_LOG_E(...) CmLog(CM_LOG_LEVEL_E, __func__, __LINE__, __VA_ARGS__) #define CM_LOG_D(...) CmLog(CM_LOG_LEVEL_D, __func__, __LINE__, __VA_ARGS__) -#else -#define CM_LOG_I(...) -#define CM_LOG_W(...) -#define CM_LOG_E(...) -#define CM_LOG_D(...) -#endif #ifdef __cplusplus } diff --git a/frameworks/cert_manager_standard/main/common/include/cm_util.h b/frameworks/cert_manager_standard/main/common/include/cm_util.h new file mode 100644 index 0000000000000000000000000000000000000000..87b10f9843b50b5c11edec61746d0f406a4968ed --- /dev/null +++ b/frameworks/cert_manager_standard/main/common/include/cm_util.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef CERT_UTIL_H +#define CERT_UTIL_H + +#include +#include +#ifdef __cplusplus +extern "C" { +#endif + +int32_t CmIsNumeric(const char *str, const size_t length, uint32_t *value); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/frameworks/cert_manager_standard/main/common/src/cm_util.c b/frameworks/cert_manager_standard/main/common/src/cm_util.c new file mode 100644 index 0000000000000000000000000000000000000000..b8cd499845de8eccae2b8750c27b2591af2caf9e --- /dev/null +++ b/frameworks/cert_manager_standard/main/common/src/cm_util.c @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "cm_util.h" + +#include "cm_type.h" +#include "cm_log.h" + +#define CARRY 10 +#define STR_MAX_LEN 10 + +int32_t CmIsNumeric(const char *str, const size_t length, uint32_t *value) +{ + if (str == NULL || length == 0 || length > STR_MAX_LEN || value == NULL) { + CM_LOG_D("input parameter error"); + return CMR_ERROR_INVALID_ARGUMENT; + } + + for (size_t i = 0; i < length; i++) { + if (str[i] == '\0') { + break; + } + if (i == length - 1) { + CM_LOG_D("the string does not have an terminator"); + return CMR_ERROR_INVALID_ARGUMENT; + } + } + + char *endptr = NULL; + unsigned long num = strtoul(str, &endptr, CARRY); + if (endptr == NULL || *endptr != '\0') { + CM_LOG_D("str is not numeric string"); + return CMR_ERROR_INVALID_ARGUMENT; + } else { + *value = (uint32_t)num; + return CM_SUCCESS; + } +} diff --git a/frameworks/cert_manager_standard/main/common/src/cm_x509.c b/frameworks/cert_manager_standard/main/common/src/cm_x509.c index f42ad0e46bb8fecde1817a82f7590660b5cdfbc5..ef40a1a854661f1a1216068fc0800a9fe5f91375 100644 --- a/frameworks/cert_manager_standard/main/common/src/cm_x509.c +++ b/frameworks/cert_manager_standard/main/common/src/cm_x509.c @@ -36,7 +36,7 @@ typedef ASN1_TIME *(TIME_FUNC)(const X509 *); X509 *InitCertContext(const uint8_t *certBuf, uint32_t size) { X509 *x509 = NULL; - if (certBuf == NULL || size > MAX_LEN_CERTIFICATE) { + if (certBuf == NULL || size > MAX_LEN_CERTIFICATE || size == 0) { return NULL; } BIO *bio = BIO_new_mem_buf(certBuf, (int)size); @@ -108,6 +108,10 @@ static int32_t ToStringName(FUNC func, const X509 *x509cert, const char *objname X509_NAME_ENTRY *entry = X509_NAME_get_entry(name, i); const char *strname = OBJ_nid2sn(OBJ_obj2nid(X509_NAME_ENTRY_get_object(entry))); + if (strname == NULL) { + continue; + } + if (strcmp(objname, strname) == 0) { char *data = NULL; length = ASN1_STRING_to_UTF8((unsigned char **)&data, X509_NAME_ENTRY_get_data(entry)); diff --git a/frameworks/cert_manager_standard/main/os_dependency/BUILD.gn b/frameworks/cert_manager_standard/main/os_dependency/BUILD.gn index 75b2cceb91c91d296ce20f0d0256eb06db664100..8f40c5ab9f71712114898d74c1836cc7fc17c49f 100644 --- a/frameworks/cert_manager_standard/main/os_dependency/BUILD.gn +++ b/frameworks/cert_manager_standard/main/os_dependency/BUILD.gn @@ -11,16 +11,12 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") -config("cert_manager_log_mem_config") { - include_dirs = [ "../common/include" ] -} - ohos_static_library("libcert_manager_log_mem_static") { subsystem_name = "security" part_name = "certificate_manager" - public_configs = [ ":cert_manager_log_mem_config" ] branch_protector_ret = "pac_ret" sanitize = { cfi = true @@ -30,23 +26,19 @@ ohos_static_library("libcert_manager_log_mem_static") { integer_overflow = true ubsan = true } - include_dirs = - [ "../../../../interfaces/innerkits/cert_manager_standard/main/include" ] - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] + sources = [ "./log/cm_log.c", "./posix/cm_mem.c", ] + deps = [ "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static" ] external_deps = [ "c_utils:utils", "hilog:libhilog", ] cflags = [ - "-DHILOG_ENABLE", "-Wall", "-Werror", ] @@ -70,18 +62,14 @@ ohos_static_library("libcert_manager_ipc_client_static") { integer_overflow = true ubsan = true } - include_dirs = - [ "../../../../interfaces/innerkits/cert_manager_standard/main/include" ] - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] + sources = [ "./cm_ipc/src/cm_ipc_client.c", "./cm_ipc/src/cm_ipc_client_serialization.c", "./cm_ipc/src/cm_request.cpp", ] - deps = [ ":libcert_manager_log_mem_static" ] + deps = [ "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static" ] external_deps = [ "c_utils:utils", "hilog:libhilog", @@ -90,7 +78,6 @@ ohos_static_library("libcert_manager_ipc_client_static") { "samgr:samgr_proxy", ] cflags_cc = [ - "-DHILOG_ENABLE", "-Wall", "-Werror", ] diff --git a/frameworks/cert_manager_standard/main/os_dependency/log/cm_log.c b/frameworks/cert_manager_standard/main/os_dependency/log/cm_log.c index 51356f91e66c5d2b6ac168f68838b41eb592f3de..94e2e5ca9667944f861bd8fc1fcd31ced810ce01 100644 --- a/frameworks/cert_manager_standard/main/os_dependency/log/cm_log.c +++ b/frameworks/cert_manager_standard/main/os_dependency/log/cm_log.c @@ -24,12 +24,7 @@ void CmLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char *format, ...) { - char *buf = (char *)CmMalloc(MAX_LOG_BUFF_LEN); - if (buf == NULL) { - HILOG_ERROR(LOG_CORE, "certificate manager log malloc fail"); - return; - } - (void)memset_s(buf, MAX_LOG_BUFF_LEN, 0, MAX_LOG_BUFF_LEN); + char buf[MAX_LOG_BUFF_LEN] = {0}; va_list ap; va_start(ap, format); @@ -37,7 +32,6 @@ void CmLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char va_end(ap); if (ret < 0) { HILOG_ERROR(LOG_CORE, "certificate manager log concatenate error."); - CM_FREE_PTR(buf); return; } @@ -55,9 +49,6 @@ void CmLog(uint32_t logLevel, const char *funcName, uint32_t lineNo, const char HILOG_DEBUG(LOG_CORE, "%{public}s[%{public}u]: %{private}s\n", funcName, lineNo, buf); break; default: - CM_FREE_PTR(buf); return; } - - CM_FREE_PTR(buf); } diff --git a/interfaces/innerkits/cert_manager_standard/main/BUILD.gn b/interfaces/innerkits/cert_manager_standard/main/BUILD.gn index 0bb051178b24ad22dbb54c758dabc3261f3eab21..983b8e34ea45f9d7edff6e1a6e4d1cafff5c2c75 100644 --- a/interfaces/innerkits/cert_manager_standard/main/BUILD.gn +++ b/interfaces/innerkits/cert_manager_standard/main/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -32,23 +33,18 @@ if (os_level == "standard") { innerapi_tags = [ "platformsdk", "chipsetsdk", + "sasdk", ] part_name = "certificate_manager" public_configs = [ ":cert_manager_config" ] - defines = [ - "L2_STANDARD", - "_HARDWARE_ROOT_KEY_", - "_CM_LOG_ENABLE_", - ] sources = [ "src/cert_manager_api.c" ] cflags = [ - "-DHILOG_ENABLE", "-Wall", "-Werror", ] - deps = [ "../../../../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks" ] + deps = [ "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks" ] external_deps = [ "bounds_checking_function:libsec_shared", diff --git a/interfaces/innerkits/cert_manager_standard/main/include/cm_type.h b/interfaces/innerkits/cert_manager_standard/main/include/cm_type.h index 213f5bbbb5aecbf17e20a7f50b16ab95a1d3467d..caeee2dc8d5122a4bc5aa3b9b269dc147493ec63 100644 --- a/interfaces/innerkits/cert_manager_standard/main/include/cm_type.h +++ b/interfaces/innerkits/cert_manager_standard/main/include/cm_type.h @@ -154,6 +154,17 @@ enum CmErrorCode { CMR_ERROR_PASSWORD_IS_ERR = -36, }; +enum CMDialogErrorCode { + CMR_DIALOG_OK = 0, + CMR_DIALOG_ERROR = -1, + CMR_DIALOG_ERROR_INVALID_ARGUMENT = -2, + CMR_DIALOG_ERROR_INTERNAL = -3, + CMR_DIALOG_ERROR_OPERATION_CANCELS = -4, + CMR_DIALOG_ERROR_INSTALL_FAILED = -5, + CMR_DIALOG_ERROR_NOT_SUPPORTED = -6, + CMR_DIALOG_ERROR_PERMISSION_DENIED = 1011, +}; + enum CMErrorCode { /* temp use */ CMR_OK = 0, CMR_ERROR = -1, @@ -372,11 +383,6 @@ static inline bool CmIsAdditionOverflow(uint32_t a, uint32_t b) return (UINT32_MAX - a) < b; } -static inline bool CmIsInvalidLength(uint32_t length) -{ - return (length == 0) || (length > MAX_OUT_BLOB_SIZE); -} - static inline int32_t CmCheckBlob(const struct CmBlob *blob) { if ((blob == NULL) || (blob->data == NULL) || (blob->size == 0)) { diff --git a/interfaces/kits/cj/BUILD.gn b/interfaces/kits/cj/BUILD.gn new file mode 100644 index 0000000000000000000000000000000000000000..a5111902e14e9edd98ce36738f4658d1cadd7eec --- /dev/null +++ b/interfaces/kits/cj/BUILD.gn @@ -0,0 +1,45 @@ +# Copyright (c) 2022-2023 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//base/security/certificate_manager/cert_manager.gni") +import("//build/ohos.gni") + +ohos_shared_library("cj_cert_manager_ffi") { + branch_protector_ret = "pac_ret" + sanitize = { + cfi = true + cfi_cross_dso = true + boundary_sanitize = true + debug = false + integer_overflow = true + ubsan = true + } + + include_dirs = [ "include" ] + + sources = [ "src/cj_cert_manager_ffi.c" ] + + cflags_cc = [ + "-Wall", + "-Werror", + ] + + deps = [ + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + ] + + innerapi_tags = [ "platformsdk" ] + subsystem_name = "security" + part_name = "certificate_manager" +} diff --git a/interfaces/kits/cj/include/cj_cert_manager_ffi.h b/interfaces/kits/cj/include/cj_cert_manager_ffi.h new file mode 100644 index 0000000000000000000000000000000000000000..8695e159a8cb9701f2d76d2edc1d1a557285ce25 --- /dev/null +++ b/interfaces/kits/cj/include/cj_cert_manager_ffi.h @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef CJ_CERT_MANAGER_FFI_H +#define CJ_CERT_MANAGER_FFI_H + +#include "cert_manager_api.h" + +struct CjCredential { + uint32_t isExist; + char *type; + char *alias; + char *keyUri; + uint32_t certNum; + uint32_t keyNum; + struct CmBlob credData; +}; + +struct CjSignatureSpec { + uint32_t purpose; + uint32_t padding; + uint32_t digest; +}; + +struct CjCertAbstract { + char *uri; + char *certAlias; + bool status; + char *subjectName; +}; + +struct CjCertInfo { + char *uri; + char *certAlias; + bool status; + char *issuerName; + char *subjectName; + char *serial; + char *notBefore; + char *notAfter; + char *fingerprintSha256; + struct CmBlob certInfo; +}; + +int32_t FfiCertManagerInstallAppCert(const struct CmBlob *appCert, const struct CmBlob *appCertPwd, + const struct CmBlob *certAlias, const uint32_t store, struct CmBlob *keyUri); +int32_t FfiCertManagerUninstallAppCert(const struct CmBlob *keyUri, const uint32_t store); +int32_t FfiCertManagerGetAppCert(const struct CmBlob *keyUri, const uint32_t store, struct CjCredential *retObj); +int32_t FfiCertManagerInit(const struct CmBlob *authUri, const struct CjSignatureSpec *spec, struct CmBlob *handle); +int32_t FfiCertManagerUpdate(const struct CmBlob *handle, const struct CmBlob *inData); +int32_t FfiCertManagerFinish(const struct CmBlob *handle, const struct CmBlob *inData, struct CmBlob *outData); +int32_t FfiCertManagerAbort(const struct CmBlob *handle); +int32_t FfiCertManagerIsAuthorizedApp(const struct CmBlob *authUri); +int32_t FfiCertManagerGetUserCertList(const uint32_t store, uint32_t *retCount, struct CjCertAbstract **retObj); +int32_t FfiCertManagerGetUserCertInfo(const struct CmBlob *certUri, const uint32_t store, struct CjCertInfo *retObj); + + +#endif //CJ_CERT_MANAGER_FFI_H diff --git a/interfaces/kits/cj/src/cj_cert_manager_ffi.c b/interfaces/kits/cj/src/cj_cert_manager_ffi.c new file mode 100644 index 0000000000000000000000000000000000000000..65822c7e6e1ec33d4abbd67c5f4f3f673ea143b7 --- /dev/null +++ b/interfaces/kits/cj/src/cj_cert_manager_ffi.c @@ -0,0 +1,156 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include "cj_cert_manager_ffi.h" + +int32_t FfiCertManagerInstallAppCert(const struct CmBlob *appCert, const struct CmBlob *appCertPwd, + const struct CmBlob *certAlias, const uint32_t store, struct CmBlob *keyUri) +{ + return CmInstallAppCert(appCert, appCertPwd, certAlias, store, keyUri); +} + +int32_t FfiCertManagerUninstallAppCert(const struct CmBlob *keyUri, const uint32_t store) +{ + return CmUninstallAppCert(keyUri, store); +} + +int32_t FfiCertManagerGetAppCert(const struct CmBlob *keyUri, const uint32_t store, struct CjCredential *retObj) +{ + struct Credential credential = {0}; + credential.credData.data = malloc(MAX_LEN_CERTIFICATE_CHAIN); + if (credential.credData.data == NULL) { + return CMR_ERROR_MALLOC_FAIL; + } + credential.credData.size = MAX_LEN_CERTIFICATE_CHAIN; + const int32_t errCode = CmGetAppCert(keyUri, store, &credential); + if (errCode != CM_SUCCESS) { + free(credential.credData.data); + return errCode; + } + /* ATTENTION: + * 1. Resource will be released by caller. + * 2. strdup may return nullptr, but caller will handle nullptr + * 3. Caller will ensure `retObj` is always not null. + */ + retObj->isExist = credential.isExist; + retObj->type = strdup(credential.type); + retObj->alias = strdup(credential.alias); + retObj->keyUri = strdup(credential.keyUri); + retObj->certNum = credential.certNum; + retObj->keyNum = credential.keyNum; + retObj->credData.data = credential.credData.data; + retObj->credData.size = credential.credData.size; + return CM_SUCCESS; +} + +int32_t FfiCertManagerInit(const struct CmBlob *authUri, const struct CjSignatureSpec *spec, struct CmBlob *handle) +{ + // Caller will ensure `spec` is always not null. + const struct CmSignatureSpec cmSpec = { + .purpose = spec->purpose, + .padding = spec->padding, + .digest = spec->digest, + }; + return CmInit(authUri, &cmSpec, handle); +} + +int32_t FfiCertManagerUpdate(const struct CmBlob *handle, const struct CmBlob *inData) +{ + return CmUpdate(handle, inData); +} + +int32_t FfiCertManagerFinish(const struct CmBlob *handle, const struct CmBlob *inData, struct CmBlob *outData) +{ + return CmFinish(handle, inData, outData); +} + +int32_t FfiCertManagerAbort(const struct CmBlob *handle) +{ + return CmAbort(handle); +} + +int32_t FfiCertManagerIsAuthorizedApp(const struct CmBlob *authUri) +{ + return CmIsAuthorizedApp(authUri); +} + +int32_t FfiCertManagerGetUserCertList(const uint32_t store, uint32_t *retCount, struct CjCertAbstract **retObj) +{ + struct CertList certificateList = {0}; + uint32_t buffSize = MAX_COUNT_CERTIFICATE * sizeof(struct CertAbstract); + certificateList.certAbstract = (struct CertAbstract *) malloc(buffSize); + if (certificateList.certAbstract == NULL) { + return CMR_ERROR_MALLOC_FAIL; + } + certificateList.certsCount = MAX_COUNT_CERTIFICATE; + + const int32_t errCode = CmGetUserCertList(store, &certificateList); + if (errCode == CM_SUCCESS) { + // Caller will ensure `retObj` is always not null. + *retObj = malloc(sizeof(struct CjCertAbstract) * certificateList.certsCount); + if (*retObj == NULL) { + free(certificateList.certAbstract); + return CMR_ERROR_MALLOC_FAIL; + } + *retCount = certificateList.certsCount; + for (uint32_t i = 0; i < certificateList.certsCount; ++i) { + /* ATTENTION: + * 1. Resource will be released by caller. + * 2. strdup may return nullptr, but caller will handle nullptr + */ + (*retObj)->uri = strdup(certificateList.certAbstract[i].uri); + (*retObj)->certAlias = strdup(certificateList.certAbstract[i].certAlias); + (*retObj)[i].status = certificateList.certAbstract[i].status; + (*retObj)->subjectName = strdup(certificateList.certAbstract[i].subjectName); + } + } + free(certificateList.certAbstract); + return errCode; +} + +int32_t FfiCertManagerGetUserCertInfo(const struct CmBlob *certUri, const uint32_t store, struct CjCertInfo *retObj) +{ + struct CertInfo info = {0}; + info.certInfo.data = malloc(MAX_LEN_CERTIFICATE); + if (info.certInfo.data == NULL) { + return CMR_ERROR_MALLOC_FAIL; + } + info.certInfo.size = MAX_LEN_CERTIFICATE; + + const int32_t errCode = CmGetUserCertInfo(certUri, store, &info); + if (errCode != CM_SUCCESS) { + free(info.certInfo.data); + return errCode; + } + /* ATTENTION: + * 1. Resource will be released by caller. + * 2. strdup may return nullptr, but caller will handle nullptr + * 3. Caller will ensure `retObj` is always not null. + */ + retObj->uri = strdup(info.uri); + retObj->certAlias = strdup(info.certAlias); + retObj->status = info.status; + retObj->issuerName = strdup(info.issuerName); + retObj->subjectName = strdup(info.subjectName); + retObj->serial = strdup(info.serial); + retObj->notBefore = strdup(info.notBefore); + retObj->notAfter = strdup(info.notAfter); + retObj->fingerprintSha256 = strdup(info.fingerprintSha256); + retObj->certInfo.data = info.certInfo.data; + retObj->certInfo.size = info.certInfo.size; + return CM_SUCCESS; +} diff --git a/interfaces/kits/napi/BUILD.gn b/interfaces/kits/napi/BUILD.gn index d2ec35d3d677a991382bd9cd5893b70d2cb670e7..40a5f4fa385babc6cab84ca149878c35d181f59b 100644 --- a/interfaces/kits/napi/BUILD.gn +++ b/interfaces/kits/napi/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") ohos_shared_library("certmanager") { @@ -23,16 +24,8 @@ ohos_shared_library("certmanager") { integer_overflow = true ubsan = true } - defines = [ - "L2_STANDARD", - "_HARDWARE_ROOT_KEY_", - "_CM_LOG_ENABLE_", - ] - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "include", - ] + include_dirs = [ "include" ] sources = [ "src/cm_napi.cpp", @@ -62,7 +55,10 @@ ohos_shared_library("certmanager") { "-Wall", "-Werror", ] - deps = [ "../../innerkits/cert_manager_standard/main:cert_manager_sdk" ] + deps = [ + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + ] relative_install_dir = "module/security" subsystem_name = "security" @@ -79,22 +75,14 @@ ohos_shared_library("certmanagerdialog") { integer_overflow = true ubsan = true } - defines = [ - "L2_STANDARD", - "_HARDWARE_ROOT_KEY_", - "_CM_LOG_ENABLE_", - ] - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "include", - "include/dialog", - ] + include_dirs = [ "include/dialog" ] sources = [ - "src/cm_napi_common.cpp", "src/dialog/cm_napi_dialog.cpp", + "src/dialog/cm_napi_dialog_common.cpp", "src/dialog/cm_napi_open_dialog.cpp", + "src/dialog/cm_napi_open_install_dialog.cpp", ] external_deps = [ @@ -108,13 +96,18 @@ ohos_shared_library("certmanagerdialog") { "ability_runtime:napi_common", "ace_engine:ace_uicontent", "c_utils:utils", + "ipc:ipc_core", "napi:ace_napi", + "samgr:samgr_proxy", ] cflags_cc = [ "-Wall", "-Werror", ] - deps = [ "../../innerkits/cert_manager_standard/main:cert_manager_sdk" ] + deps = [ + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + ] relative_install_dir = "module/security" subsystem_name = "security" diff --git a/interfaces/kits/napi/include/dialog/cm_napi_dialog_common.h b/interfaces/kits/napi/include/dialog/cm_napi_dialog_common.h new file mode 100644 index 0000000000000000000000000000000000000000..47e51f0477e2906d71103a338bf1af96dee574f3 --- /dev/null +++ b/interfaces/kits/napi/include/dialog/cm_napi_dialog_common.h @@ -0,0 +1,85 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef CM_NAPI_DIALOG_COMMON_H +#define CM_NAPI_DIALOG_COMMON_H + +#include + +#include "napi/native_api.h" +#include "napi/native_node_api.h" + +#include "cm_napi_open_dialog.h" +#include "cm_mem.h" +#include "cm_type.h" + +namespace CMNapi { + +static const std::string BUSINESS_ERROR_PROPERTY_CODE = "code"; +static const std::string BUSINESS_ERROR_PROPERTY_MESSAGE = "message"; +static const int32_t RESULT_NUMBER = 2; + +void StartUIExtensionAbility(std::shared_ptr asyncContext, + OHOS::AAFwk::Want want, std::shared_ptr uiExtCallback); +bool ParseCmUIAbilityContextReq( + napi_env env, const napi_value& obj, std::shared_ptr& abilityContext); +napi_value ParseUint32(napi_env env, napi_value object, uint32_t &store); +napi_value ParseBoolean(napi_env env, napi_value object, bool &status); +napi_value ParseString(napi_env env, napi_value object, CmBlob *&blob); +napi_value GetUint8ArrayToBase64Str(napi_env env, napi_value object, std::string &certArray); + +void ThrowError(napi_env env, int32_t errorCode, const std::string errMsg); +napi_value GenerateBusinessError(napi_env env, int32_t errorCode); + +void GeneratePromise(napi_env env, napi_deferred deferred, int32_t resultCode, + napi_value *result, int32_t length); + +inline napi_value GetInt32(napi_env env, int32_t value) +{ + napi_value result = nullptr; + NAPI_CALL(env, napi_create_int32(env, value, &result)); + return result; +} + +enum CmDialogPageType { + PAGE_MAIN = 1, + PAGE_CA_CERTIFICATE = 2, + PAGE_CREDENTIAL = 3, + PAGE_INSTALL_CERTIFICATE = 4, + PAGE_INSTALL_CA_GUIDE = 5 +}; + +enum CmCertificateType { + CA_CERT = 1 +}; + +enum CertificateScope { + CURRENT_USER = 1 +}; + +enum ErrorCode { + SUCCESS = 0, + HAS_NO_PERMISSION = 201, + NOT_SYSTEM_APP = 202, + PARAM_ERROR = 401, + DIALOG_ERROR_GENERIC = 29700001, + DIALOG_ERROR_OPERATION_CANCELED = 29700002, + DIALOG_ERROR_INSTALL_FAILED = 29700003, + DIALOG_ERROR_NOT_SUPPORTED = 29700004, +}; + +} // namespace CertManagerNapi + +#endif diff --git a/interfaces/kits/napi/include/dialog/cm_napi_open_dialog.h b/interfaces/kits/napi/include/dialog/cm_napi_open_dialog.h index e7fb0287d254b4744482b8dd14cd9b9e80f22bff..d9a0ba405f956abdbdd0e5651c548cad465eb7c7 100644 --- a/interfaces/kits/napi/include/dialog/cm_napi_open_dialog.h +++ b/interfaces/kits/napi/include/dialog/cm_napi_open_dialog.h @@ -23,22 +23,24 @@ #include "napi_common_want.h" #include "ui_content.h" -#include "cm_napi_common.h" - namespace CMNapi { -napi_value CMNapiOpenCertManagerDialog(napi_env env, napi_callback_info info); - -enum CmDialogErrorCode { - DIALOG_ERROR_GENERIC = 29700001, - DIALOG_ERROR_OPERATION_CANCELED = 29700002, -}; +const std::string PARAM_UI_EXTENSION_TYPE = "ability.want.params.uiExtensionType"; +const std::string SYS_COMMON_UI = "sys/commonUI"; +const std::string CERT_MANAGER_BUNDLENAME = "com.ohos.certmanager"; +const std::string CERT_MANAGER_ABILITYNAME = "CertPickerUIExtAbility"; +const std::string CERT_MANAGER_PAGE_TYPE = "pageType"; +const std::string CERT_MANAGER_CERTSCOPE_TYPE = "certScope"; +const std::string CERT_MANAGER_CERTIFICATE_DATA = "cert"; +const std::string CERT_MANAGER_CALLER_BUNDLENAME = "bundleName"; +constexpr int32_t PARAM0 = 0; +constexpr int32_t PARAM1 = 1; +constexpr int32_t PARAM2 = 2; +constexpr int32_t PARAM3 = 3; +constexpr int32_t PARAM_SIZE_TWO = 2; +constexpr int32_t PARAM_SIZE_FOUR = 4; -enum CmDialogPageType { - PAGE_MAIN = 1, - PAGE_CA_CERTIFICATE = 2, - PAGE_CREDENTIAL = 3, - PAGE_INSTALL_CERTIFICATE = 4 -}; +napi_value CMNapiOpenCertManagerDialog(napi_env env, napi_callback_info info); +napi_value CMNapiOpenInstallCertDialog(napi_env env, napi_callback_info info); struct CommonAsyncContext { explicit CommonAsyncContext(napi_env env); @@ -47,25 +49,32 @@ struct CommonAsyncContext { napi_status status = napi_invalid_arg; int32_t errCode = 0; napi_deferred deferred = nullptr; // promise handle + std::string uri = ""; }; struct CmUIExtensionRequestContext : public CommonAsyncContext { explicit CmUIExtensionRequestContext(napi_env env) : CommonAsyncContext(env) {}; std::shared_ptr context = nullptr; uint32_t pageType = 0; + uint32_t certificateType = 0; + uint32_t certificateScope = 0; + std::string certStr = ""; + std::string labelName = ""; }; class CmUIExtensionCallback { public: explicit CmUIExtensionCallback(std::shared_ptr& reqContext); - void SetSessionId(const int32_t sessionId); - void OnRelease(const int32_t releaseCode); - void OnResult(const int32_t resultCode, const OHOS::AAFwk::Want& result); - void OnReceive(const OHOS::AAFwk::WantParams& request); - void OnError(const int32_t code, const std::string& name, const std::string& message); - void OnRemoteReady(const std::shared_ptr& uiProxy); - void OnDestroy(); - void SendMessageBack(); + virtual ~CmUIExtensionCallback(); + virtual void SetSessionId(const int32_t sessionId); + virtual void OnRelease(const int32_t releaseCode); + virtual void OnResult(const int32_t resultCode, const OHOS::AAFwk::Want& result); + virtual void OnReceive(const OHOS::AAFwk::WantParams& request); + virtual void OnError(const int32_t code, const std::string& name, const std::string& message); + virtual void OnRemoteReady(const std::shared_ptr& uiProxy); + virtual void OnDestroy(); + virtual void SendMessageBack(); + virtual void ProcessCallback(napi_env env, const CommonAsyncContext* asyncContext); private: bool SetErrorCode(int32_t errCode); diff --git a/interfaces/kits/napi/src/cm_napi_grant.cpp b/interfaces/kits/napi/src/cm_napi_grant.cpp index f1923c5b25a0562bd50ce9ea91506b796229e4af..693cb72b01f49dd9c0be59aa32002ef91469d737 100644 --- a/interfaces/kits/napi/src/cm_napi_grant.cpp +++ b/interfaces/kits/napi/src/cm_napi_grant.cpp @@ -22,6 +22,7 @@ #include "cm_mem.h" #include "cm_type.h" #include "cm_napi_common.h" +#include "cm_util.h" namespace CMNapi { namespace { @@ -76,8 +77,9 @@ static napi_value ParseString2Uint32(napi_env env, napi_value object, uint32_t & { struct CmBlob *blob = nullptr; napi_value result = ParseString(env, object, blob); - if (result == nullptr) { - CM_LOG_E("parse string to blob failed"); + if (result == nullptr || + CmIsNumeric(reinterpret_cast(blob->data), static_cast(blob->size), &value) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed"); if (blob != nullptr) { CM_FREE_PTR(blob->data); CmFree(blob); @@ -85,7 +87,6 @@ static napi_value ParseString2Uint32(napi_env env, napi_value object, uint32_t & return nullptr; } - value = static_cast(atoi(reinterpret_cast(blob->data))); CM_FREE_PTR(blob->data); CM_FREE_PTR(blob); return GetInt32(env, 0); diff --git a/interfaces/kits/napi/src/dialog/cm_napi_dialog.cpp b/interfaces/kits/napi/src/dialog/cm_napi_dialog.cpp index 6c839cca48682235c9c797ac13cabad2230e91bc..6b2948f0f3d8ff18d6e9168078503848375e7202 100644 --- a/interfaces/kits/napi/src/dialog/cm_napi_dialog.cpp +++ b/interfaces/kits/napi/src/dialog/cm_napi_dialog.cpp @@ -16,7 +16,7 @@ #include "napi/native_api.h" #include "napi/native_node_api.h" -#include "cm_napi_common.h" +#include "cm_napi_dialog_common.h" #include "cm_napi_open_dialog.h" @@ -35,6 +35,8 @@ static napi_value CreateCmErrorCode(napi_env env) AddInt32Property(env, dialogErrorCode, "ERROR_GENERIC", DIALOG_ERROR_GENERIC); AddInt32Property(env, dialogErrorCode, "ERROR_OPERATION_CANCELED", DIALOG_ERROR_OPERATION_CANCELED); + AddInt32Property(env, dialogErrorCode, "ERROR_OPERATION_FAILED", DIALOG_ERROR_INSTALL_FAILED); + AddInt32Property(env, dialogErrorCode, "ERROR_DEVICE_NOT_SUPPORTED", DIALOG_ERROR_NOT_SUPPORTED); return dialogErrorCode; } @@ -51,6 +53,26 @@ static napi_value CreateCmDialogPageType(napi_env env) return dialogPageType; } + +static napi_value CreateCmCertificateType(napi_env env) +{ + napi_value certificateType = nullptr; + NAPI_CALL(env, napi_create_object(env, &certificateType)); + + AddInt32Property(env, certificateType, "CA_CERT", CA_CERT); + + return certificateType; +} + +static napi_value CreateCmCertificateScope(napi_env env) +{ + napi_value certificateScope = nullptr; + NAPI_CALL(env, napi_create_object(env, &certificateScope)); + + AddInt32Property(env, certificateScope, "CURRENT_USER", CURRENT_USER); + + return certificateScope; +} } // namespace CertManagerNapi using namespace CMNapi; @@ -61,9 +83,12 @@ static napi_value CMDialogNapiRegister(napi_env env, napi_value exports) napi_property_descriptor desc[] = { DECLARE_NAPI_PROPERTY("CertificateDialogErrorCode", CreateCmErrorCode(env)), DECLARE_NAPI_PROPERTY("CertificateDialogPageType", CreateCmDialogPageType(env)), + DECLARE_NAPI_PROPERTY("CertificateType", CreateCmCertificateType(env)), + DECLARE_NAPI_PROPERTY("CertificateScope", CreateCmCertificateScope(env)), /* dialog */ DECLARE_NAPI_FUNCTION("openCertificateManagerDialog", CMNapiOpenCertManagerDialog), + DECLARE_NAPI_FUNCTION("openInstallCertificateDialog", CMNapiOpenInstallCertDialog), }; NAPI_CALL(env, napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc)); return exports; diff --git a/interfaces/kits/napi/src/dialog/cm_napi_dialog_common.cpp b/interfaces/kits/napi/src/dialog/cm_napi_dialog_common.cpp new file mode 100644 index 0000000000000000000000000000000000000000..149fa7eb55e8579ec3de3ebdc5166fa99df13e68 --- /dev/null +++ b/interfaces/kits/napi/src/dialog/cm_napi_dialog_common.cpp @@ -0,0 +1,365 @@ +/* + * Copyright (c) 2022-2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "cm_napi_dialog_common.h" + +#include +#include "securec.h" + +#include "cm_log.h" +#include "cm_type.h" + +#define BYTE_SHIFT_16 0x10 +#define BYTE_SHIFT_8 0x08 +#define BYTE_SHIFT_6 6 +#define BASE64_URL_TABLE_SIZE 0x3F +#define BASE64_GROUP_NUM 3 +#define BYTE_INDEX_ZONE 0 +#define BYTE_INDEX_ONE 1 +#define BYTE_INDEX_TWO 2 +#define BYTE_INDEX_THREE 3 +#define BASE64_PADDING "=" +#define BYTE_END_ONE 1 +#define BYTE_END_TWO 2 + +static const char g_base64Table[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; +namespace CMNapi { +namespace { +constexpr int CM_MAX_DATA_LEN = 0x6400000; // The maximum length is 100M + +static const std::string DIALOG_NO_PERMISSION_MSG = "the caller has no permission"; +static const std::string DIALOG_INVALID_PARAMS_MSG = "the input parameters is invalid"; +static const std::string DIALOG_GENERIC_MSG = "there is an internal error"; +static const std::string DIALOG_OPERATION_CANCELS_MSG = "the user cancels the installation operation"; +static const std::string DIALOG_INSTALL_FAILED_MSG = "the user install certificate failed" + " in the certificate manager dialog"; +static const std::string DIALOG_NOT_SUPPORTED_MSG = "the API is not supported on this device"; + +static const std::unordered_map DIALOG_CODE_TO_JS_CODE_MAP = { + // invalid params + { CMR_DIALOG_ERROR_INVALID_ARGUMENT, PARAM_ERROR }, + // no permission + { CMR_DIALOG_ERROR_PERMISSION_DENIED, HAS_NO_PERMISSION }, + // internal error + { CMR_DIALOG_ERROR_INTERNAL, DIALOG_ERROR_GENERIC }, + // the user cancels the installation operation + { CMR_DIALOG_ERROR_OPERATION_CANCELS, DIALOG_ERROR_OPERATION_CANCELED }, + // the user install certificate failed in the certificate manager dialog + { CMR_DIALOG_ERROR_INSTALL_FAILED, DIALOG_ERROR_INSTALL_FAILED }, + // the API is not supported on this device + { CMR_DIALOG_ERROR_NOT_SUPPORTED, DIALOG_ERROR_NOT_SUPPORTED }, +}; + +static const std::unordered_map DIALOG_CODE_TO_MSG_MAP = { + { CMR_DIALOG_ERROR_INVALID_ARGUMENT, DIALOG_INVALID_PARAMS_MSG }, + { CMR_DIALOG_ERROR_PERMISSION_DENIED, DIALOG_NO_PERMISSION_MSG }, + { CMR_DIALOG_ERROR_INTERNAL, DIALOG_GENERIC_MSG }, + { CMR_DIALOG_ERROR_OPERATION_CANCELS, DIALOG_OPERATION_CANCELS_MSG }, + { CMR_DIALOG_ERROR_INSTALL_FAILED, DIALOG_INSTALL_FAILED_MSG }, + { CMR_DIALOG_ERROR_NOT_SUPPORTED, DIALOG_NOT_SUPPORTED_MSG }, +}; +} // namespace + +void StartUIExtensionAbility(std::shared_ptr asyncContext, + OHOS::AAFwk::Want want, std::shared_ptr uiExtCallback) +{ + CM_LOG_D("begin StartUIExtensionAbility"); + auto abilityContext = asyncContext->context; + if (abilityContext == nullptr) { + CM_LOG_E("abilityContext is null"); + ThrowError(asyncContext->env, PARAM_ERROR, "abilityContext is null"); + return; + } + auto uiContent = abilityContext->GetUIContent(); + if (uiContent == nullptr) { + CM_LOG_E("uiContent is null"); + ThrowError(asyncContext->env, PARAM_ERROR, "uiContent is null"); + return; + } + + OHOS::Ace::ModalUIExtensionCallbacks extensionCallbacks = { + [uiExtCallback](int32_t releaseCode) { uiExtCallback->OnRelease(releaseCode); }, + [uiExtCallback](int32_t resultCode, const OHOS::AAFwk::Want& result) { + uiExtCallback->OnResult(resultCode, result); }, + [uiExtCallback](const OHOS::AAFwk::WantParams& request) { uiExtCallback->OnReceive(request); }, + [uiExtCallback](int32_t errorCode, const std::string& name, const std::string& message) { + uiExtCallback->OnError(errorCode, name, message); }, + [uiExtCallback](const std::shared_ptr& uiProxy) { + uiExtCallback->OnRemoteReady(uiProxy); }, + [uiExtCallback]() { uiExtCallback->OnDestroy(); } + }; + + OHOS::Ace::ModalUIExtensionConfig uiExtConfig; + uiExtConfig.isProhibitBack = false; + int32_t sessionId = uiContent->CreateModalUIExtension(want, extensionCallbacks, uiExtConfig); + CM_LOG_I("end CreateModalUIExtension"); + if (sessionId == 0) { + CM_LOG_E("CreateModalUIExtension failed"); + ThrowError(asyncContext->env, PARAM_ERROR, "CreateModalUIExtension failed"); + } + uiExtCallback->SetSessionId(sessionId); + return; +} + +static std::string EncodeBase64(const uint8_t *indata, const uint32_t length) +{ + std::string encodeStr(""); + if (indata == nullptr) { + CM_LOG_E("input param is invalid"); + return encodeStr; + } + int i = 0; + while (i < (int)length) { + unsigned int octeta = i < (int)length ? *(indata + (i++)) : 0; + unsigned int octetb = i < (int)length ? *(indata + (i++)) : 0; + unsigned int octetc = i < (int)length ? *(indata + (i++)) : 0; + + unsigned int triple = (octeta << BYTE_SHIFT_16) + (octetb << BYTE_SHIFT_8) + octetc; + + encodeStr += g_base64Table[(triple >> BYTE_INDEX_THREE * BYTE_SHIFT_6) & BASE64_URL_TABLE_SIZE]; + encodeStr += g_base64Table[(triple >> BYTE_INDEX_TWO * BYTE_SHIFT_6) & BASE64_URL_TABLE_SIZE]; + encodeStr += g_base64Table[(triple >> BYTE_INDEX_ONE * BYTE_SHIFT_6) & BASE64_URL_TABLE_SIZE]; + encodeStr += g_base64Table[(triple >> BYTE_INDEX_ZONE * BYTE_SHIFT_6) & BASE64_URL_TABLE_SIZE]; + } + + switch (BASE64_GROUP_NUM - (i % BASE64_GROUP_NUM)) { + case BYTE_END_TWO: + encodeStr.replace(encodeStr.length() - BYTE_END_TWO, 1, BASE64_PADDING); + encodeStr.replace(encodeStr.length() - BYTE_END_ONE, 1, BASE64_PADDING); + break; + case BYTE_END_ONE: + encodeStr.replace(encodeStr.length() - BYTE_END_ONE, 1, BASE64_PADDING); + break; + default: + break; + } + return encodeStr; +} + +bool ParseCmUIAbilityContextReq( + napi_env env, const napi_value& obj, std::shared_ptr& abilityContext) +{ + bool stageMode = false; + napi_status status = OHOS::AbilityRuntime::IsStageContext(env, obj, stageMode); + if (status != napi_ok || !stageMode) { + CM_LOG_E("not stage mode"); + return false; + } + + auto context = OHOS::AbilityRuntime::GetStageModeContext(env, obj); + if (context == nullptr) { + CM_LOG_E("get context failed"); + return false; + } + + abilityContext = OHOS::AbilityRuntime::Context::ConvertTo(context); + if (abilityContext == nullptr) { + CM_LOG_E("get abilityContext failed"); + return false; + } + CM_LOG_I("end ParseUIAbilityContextReq"); + return true; +} + +napi_value ParseUint32(napi_env env, napi_value object, uint32_t &store) +{ + napi_valuetype type; + napi_typeof(env, object, &type); + if (type != napi_number) { + CM_LOG_E("param type is not number"); + return nullptr; + } + uint32_t temp = 0; + napi_get_value_uint32(env, object, &temp); + store = temp; + return GetInt32(env, 0); +} + +napi_value ParseBoolean(napi_env env, napi_value object, bool &status) +{ + napi_valuetype type; + napi_typeof(env, object, &type); + if (type != napi_boolean) { + CM_LOG_E("param type is not bool"); + return nullptr; + } + bool temp = false; + napi_get_value_bool(env, object, &temp); + status = temp; + return GetInt32(env, 0); +} + +napi_value ParseString(napi_env env, napi_value obj, CmBlob *&blob) +{ + napi_valuetype type = napi_undefined; + NAPI_CALL(env, napi_typeof(env, obj, &type)); + if (type != napi_string) { + CM_LOG_E("the type of param is not string"); + return nullptr; + } + size_t length = 0; + napi_status status = napi_get_value_string_utf8(env, obj, nullptr, 0, &length); + if (status != napi_ok) { + GET_AND_THROW_LAST_ERROR((env)); + CM_LOG_E("could not get string length"); + return nullptr; + } + + if ((length == 0) || (length > CM_MAX_DATA_LEN)) { + CM_LOG_E("input string length is 0 or too large, length: %d", length); + return nullptr; + } + + char *data = static_cast(CmMalloc(length + 1)); + if (data == nullptr) { + napi_throw_error(env, nullptr, "could not alloc memory"); + CM_LOG_E("could not alloc memory"); + return nullptr; + } + (void)memset_s(data, length + 1, 0, length + 1); + + size_t res = 0; + status = napi_get_value_string_utf8(env, obj, data, length + 1, &res); + if (status != napi_ok) { + CmFree(data); + GET_AND_THROW_LAST_ERROR((env)); + CM_LOG_E("could not get string"); + return nullptr; + } + + blob = static_cast(CmMalloc(sizeof(CmBlob))); + if (blob == nullptr) { + CmFree(data); + napi_throw_error(env, nullptr, "could not alloc memory"); + CM_LOG_E("could not alloc memory"); + return nullptr; + } + blob->data = reinterpret_cast(data); + blob->size = static_cast((length + 1) & UINT32_MAX); + + return GetInt32(env, 0); +} + +napi_value GetUint8ArrayToBase64Str(napi_env env, napi_value object, std::string &certArray) +{ + napi_typedarray_type arrayType; + napi_value arrayBuffer = nullptr; + size_t length = 0; + size_t offset = 0; + void *certData = nullptr; + + napi_status status = napi_get_typedarray_info( + env, object, &arrayType, &length, static_cast(&certData), &arrayBuffer, &offset); + if (arrayType != napi_uint8_array) { + return nullptr; + } + if (status != napi_ok) { + CM_LOG_E("the type of param is not uint8_array"); + return nullptr; + } + if (length > CM_MAX_DATA_LEN) { + CM_LOG_E("certData is too large, length = %x", length); + return nullptr; + } + uint8_t *data = nullptr; + if (length == 0) { + CM_LOG_D("The memory length created is only 1 Byte"); + // The memory length created is only 1 Byte + data = static_cast(CmMalloc(1)); + } else { + data = static_cast(CmMalloc(length)); + } + if (data == nullptr) { + CM_LOG_E("Malloc failed"); + return nullptr; + } + (void)memset_s(data, length, 0, length); + if (memcpy_s(data, length, certData, length) != EOK) { + CmFree(data); + CM_LOG_E("memcpy_s fail, length = %x", length); + return nullptr; + } + std::string encode = EncodeBase64(data, length); + certArray = encode; + CmFree(data); + return GetInt32(env, 0); +} + +static const char *GetJsErrorMsg(int32_t errCode) +{ + auto iter = DIALOG_CODE_TO_MSG_MAP.find(errCode); + if (iter != DIALOG_CODE_TO_MSG_MAP.end()) { + return (iter->second).c_str(); + } + return DIALOG_GENERIC_MSG.c_str(); +} + +int32_t TranformErrorCode(int32_t errorCode) +{ + auto iter = DIALOG_CODE_TO_JS_CODE_MAP.find(errorCode); + if (iter != DIALOG_CODE_TO_JS_CODE_MAP.end()) { + return iter->second; + } + return DIALOG_ERROR_GENERIC; +} + +napi_value GenerateBusinessError(napi_env env, int32_t errorCode) +{ + const char *errorMessage = GetJsErrorMsg(errorCode); + if (errorMessage == nullptr) { + return nullptr; + } + + napi_value businessErrorMsg = nullptr; + NAPI_CALL(env, napi_create_object(env, &businessErrorMsg)); + + napi_value code = nullptr; + int32_t outputCode = TranformErrorCode(errorCode); + NAPI_CALL(env, napi_create_int32(env, outputCode, &code)); + NAPI_CALL(env, napi_set_named_property(env, businessErrorMsg, BUSINESS_ERROR_PROPERTY_CODE.c_str(), code)); + napi_value message = nullptr; + NAPI_CALL(env, napi_create_string_utf8(env, errorMessage, NAPI_AUTO_LENGTH, &message)); + NAPI_CALL(env, napi_set_named_property(env, businessErrorMsg, BUSINESS_ERROR_PROPERTY_MESSAGE.c_str(), message)); + return businessErrorMsg; +} + +void ThrowError(napi_env env, int32_t errorCode, const std::string errMsg) +{ + napi_value paramsError = nullptr; + napi_value outCode = nullptr; + napi_value message = nullptr; + NAPI_CALL_RETURN_VOID(env, napi_create_int32(env, errorCode, &outCode)); + NAPI_CALL_RETURN_VOID(env, napi_create_string_utf8(env, errMsg.c_str(), NAPI_AUTO_LENGTH, &message)); + NAPI_CALL_RETURN_VOID(env, napi_create_error(env, nullptr, message, ¶msError)); + NAPI_CALL_RETURN_VOID(env, napi_set_named_property(env, paramsError, + BUSINESS_ERROR_PROPERTY_CODE.c_str(), outCode)); + NAPI_CALL_RETURN_VOID(env, napi_throw(env, paramsError)); +} + +void GeneratePromise(napi_env env, napi_deferred deferred, int32_t resultCode, + napi_value *result, int32_t length) +{ + if (length < RESULT_NUMBER) { + return; + } + if (resultCode == CM_SUCCESS) { + NAPI_CALL_RETURN_VOID(env, napi_resolve_deferred(env, deferred, result[1])); + } else { + NAPI_CALL_RETURN_VOID(env, napi_reject_deferred(env, deferred, result[0])); + } +} + + +} // namespace CertManagerNapi diff --git a/interfaces/kits/napi/src/dialog/cm_napi_open_dialog.cpp b/interfaces/kits/napi/src/dialog/cm_napi_open_dialog.cpp index 654a08aa0ebdaebd0ab12131ac9d85ad553fc930..3394ee5a1baad71640769c88aaf5cc21550c8376 100644 --- a/interfaces/kits/napi/src/dialog/cm_napi_open_dialog.cpp +++ b/interfaces/kits/napi/src/dialog/cm_napi_open_dialog.cpp @@ -20,22 +20,11 @@ #include "cert_manager_api.h" #include "cm_log.h" -#include "cm_napi_common.h" +#include "cm_napi_dialog_common.h" #include "want.h" #include "want_params_wrapper.h" namespace CMNapi { -namespace { -const std::string PARAM_UI_EXTENSION_TYPE = "ability.want.params.uiExtensionType"; -const std::string SYS_COMMON_UI = "sys/commonUI"; -const std::string CERT_MANAGER_BUNDLENAME = "com.ohos.certmanager"; -const std::string CERT_MANAGER_ABILITYNAME = "CertPickerUIExtAbility"; -const std::string CERT_MANAGER_PAGE_TYPE = "pageType"; -constexpr int32_t PARAM0 = 0; -constexpr int32_t PARAM1 = 1; -constexpr int32_t PARAM_SIZE_TWO = 2; -constexpr int32_t ERROR_STR_LEN = 256; -} // namespace CommonAsyncContext::CommonAsyncContext(napi_env env) { @@ -53,6 +42,11 @@ CmUIExtensionCallback::CmUIExtensionCallback(std::shared_ptrreqContext_ = reqContext; } +CmUIExtensionCallback::~CmUIExtensionCallback() +{ + CM_LOG_D("~CmUIExtensionCallback"); +} + void CmUIExtensionCallback::SetSessionId(const int32_t sessionId) { this->sessionId_ = sessionId; @@ -106,13 +100,6 @@ void CmUIExtensionCallback::OnError(const int32_t errorCode, const std::string& if (SetErrorCode(errorCode)) { SendMessageBack(); } - char errStr[ERROR_STR_LEN] = { 0 }; - if (sprintf_s(errStr, ERROR_STR_LEN, "UIExtensionComponent OnError(), errorCode = %d, name = %s, message = %s", - errorCode, name.c_str(), message.c_str()) < 0) { - CM_LOG_E("copy error str failed"); - return; - } - ThrowError(this->reqContext_->env, PARAM_ERROR, errStr); } void CmUIExtensionCallback::OnRemoteReady(const std::shared_ptr& uiProxy) @@ -128,7 +115,7 @@ void CmUIExtensionCallback::OnDestroy() } } -void ProcessCallback(napi_env env, const CommonAsyncContext* asyncContext) +void CmUIExtensionCallback::ProcessCallback(napi_env env, const CommonAsyncContext* asyncContext) { napi_value args[PARAM_SIZE_TWO] = {nullptr}; @@ -166,76 +153,17 @@ void CmUIExtensionCallback::SendMessageBack() ProcessCallback(this->reqContext_->env, this->reqContext_.get()); } -bool ParseCmUIAbilityContextReq( - napi_env env, const napi_value& obj, std::shared_ptr& abilityContext) -{ - bool stageMode = false; - napi_status status = OHOS::AbilityRuntime::IsStageContext(env, obj, stageMode); - if (status != napi_ok || !stageMode) { - CM_LOG_E("not stage mode"); - return false; - } - - auto context = OHOS::AbilityRuntime::GetStageModeContext(env, obj); - if (context == nullptr) { - CM_LOG_E("get context failed"); - return false; - } - - abilityContext = OHOS::AbilityRuntime::Context::ConvertTo(context); - if (abilityContext == nullptr) { - CM_LOG_E("get abilityContext failed"); - return false; - } - CM_LOG_I("end ParseUIAbilityContextReq"); - return true; -} - -static void StartUIExtensionAbility(std::shared_ptr asyncContext, - OHOS::AAFwk::Want want) +static bool IsCmDialogPageTypeEnum(const uint32_t value) { - CM_LOG_D("begin StartUIExtensionAbility"); - if (asyncContext == nullptr) { - CM_LOG_E("asyncContext is null"); - ThrowError(asyncContext->env, PARAM_ERROR, "asyncContext is null"); - return; - } - auto abilityContext = asyncContext->context; - if (abilityContext == nullptr) { - CM_LOG_E("abilityContext is null"); - ThrowError(asyncContext->env, PARAM_ERROR, "abilityContext is null"); - return; - } - auto uiContent = abilityContext->GetUIContent(); - if (uiContent == nullptr) { - CM_LOG_E("uiContent is null"); - ThrowError(asyncContext->env, PARAM_ERROR, "uiContent is null"); - return; + switch (static_cast(value)) { + case CmDialogPageType::PAGE_MAIN: + case CmDialogPageType::PAGE_CA_CERTIFICATE: + case CmDialogPageType::PAGE_CREDENTIAL: + case CmDialogPageType::PAGE_INSTALL_CERTIFICATE: + return true; + default: + return false; } - - auto uiExtCallback = std::make_shared(asyncContext); - OHOS::Ace::ModalUIExtensionCallbacks extensionCallbacks = { - [uiExtCallback](int32_t releaseCode) { uiExtCallback->OnRelease(releaseCode); }, - [uiExtCallback](int32_t resultCode, const OHOS::AAFwk::Want& result) { - uiExtCallback->OnResult(resultCode, result); }, - [uiExtCallback](const OHOS::AAFwk::WantParams& request) { uiExtCallback->OnReceive(request); }, - [uiExtCallback](int32_t errorCode, const std::string& name, const std::string& message) { - uiExtCallback->OnError(errorCode, name, message); }, - [uiExtCallback](const std::shared_ptr& uiProxy) { - uiExtCallback->OnRemoteReady(uiProxy); }, - [uiExtCallback]() { uiExtCallback->OnDestroy(); } - }; - - OHOS::Ace::ModalUIExtensionConfig uiExtConfig; - uiExtConfig.isProhibitBack = false; - int32_t sessionId = uiContent->CreateModalUIExtension(want, extensionCallbacks, uiExtConfig); - CM_LOG_I("end CreateModalUIExtension sessionId = %d", sessionId); - if (sessionId == 0) { - CM_LOG_E("CreateModalUIExtension failed, sessionId is %d", sessionId); - ThrowError(asyncContext->env, PARAM_ERROR, "CreateModalUIExtension failed"); - } - uiExtCallback->SetSessionId(sessionId); - return; } napi_value CMNapiOpenCertManagerDialog(napi_env env, napi_callback_info info) @@ -270,6 +198,12 @@ napi_value CMNapiOpenCertManagerDialog(napi_env env, napi_callback_info info) return result; } + if (!IsCmDialogPageTypeEnum(asyncContext->pageType)) { + CM_LOG_E("pageType invalid"); + ThrowError(env, PARAM_ERROR, "pageType invalid"); + return nullptr; + } + asyncContext->env = env; OHOS::AAFwk::Want want; want.SetElementName(CERT_MANAGER_BUNDLENAME, CERT_MANAGER_ABILITYNAME); @@ -277,10 +211,10 @@ napi_value CMNapiOpenCertManagerDialog(napi_env env, napi_callback_info info) want.SetParam(PARAM_UI_EXTENSION_TYPE, SYS_COMMON_UI); NAPI_CALL(env, napi_create_promise(env, &asyncContext->deferred, &result)); + auto uiExtCallback = std::make_shared(asyncContext); // Start ui extension by context. - StartUIExtensionAbility(asyncContext, want); + StartUIExtensionAbility(asyncContext, want, uiExtCallback); CM_LOG_D("cert manager dialog end"); return result; } -} // namespace CMNapi - +} // namespace CMNapi \ No newline at end of file diff --git a/interfaces/kits/napi/src/dialog/cm_napi_open_install_dialog.cpp b/interfaces/kits/napi/src/dialog/cm_napi_open_install_dialog.cpp new file mode 100644 index 0000000000000000000000000000000000000000..5f842ca2d5e687fba70365c77ed109da18ef6209 --- /dev/null +++ b/interfaces/kits/napi/src/dialog/cm_napi_open_install_dialog.cpp @@ -0,0 +1,286 @@ +/* + * Copyright (c) 2024 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "cm_napi_open_dialog.h" + +#include "syspara/parameters.h" +#include "securec.h" + +#include "cert_manager_api.h" +#include "cm_log.h" +#include "iservice_registry.h" +#include "bundle_mgr_proxy.h" +#include "system_ability_definition.h" + +#include "cm_napi_dialog_common.h" +#include "want.h" +#include "want_params_wrapper.h" + +namespace CMNapi { + +class CmInstallUIExtensionCallback : public CmUIExtensionCallback { +public: + explicit CmInstallUIExtensionCallback( + std::shared_ptr& reqContext) : CmUIExtensionCallback(reqContext) + { + this->reqContext_ = reqContext; + } + + ~CmInstallUIExtensionCallback() override + { + CM_LOG_D("~CmInstallUIExtensionCallback"); + } + + void OnRelease(const int32_t releaseCode) override + { + CM_LOG_D("InstallUIExtensionComponent OnRelease(), releaseCode = %d", releaseCode); + if (SetErrorCode(CMR_DIALOG_ERROR_OPERATION_CANCELS)) { + SendMessageBack(); + } + } + + void OnResult(const int32_t resultCode, const OHOS::AAFwk::Want& result) override + { + CM_LOG_D("InstallUIExtensionComponent OnResult(), resultCode = %d", resultCode); + this->resultCode_ = resultCode; + this->resultWant_ = result; + if (SetErrorCode(CMR_DIALOG_ERROR_INSTALL_FAILED)) { + SendMessageBack(); + } + } + + void OnReceive(const OHOS::AAFwk::WantParams& request) override + { + CM_LOG_D("InstallUIExtensionComponent OnReceive()"); + this->reqContext_->uri = request.GetStringParam("uri"); + if (SetErrorCode(0)) { + SendMessageBack(); + } + } + + void ProcessCallback(napi_env env, const CommonAsyncContext* asyncContext) override + { + napi_value args = nullptr; + if (asyncContext->errCode == CM_SUCCESS) { + NAPI_CALL_RETURN_VOID(env, + napi_create_string_utf8(env, asyncContext->uri.c_str(), NAPI_AUTO_LENGTH, &args)); + } else { + args = GenerateBusinessError(env, asyncContext->errCode); + } + + if (asyncContext->deferred != nullptr) { + if (asyncContext->errCode == CM_SUCCESS) { + NAPI_CALL_RETURN_VOID(env, napi_resolve_deferred(env, asyncContext->deferred, args)); + } else { + NAPI_CALL_RETURN_VOID(env, napi_reject_deferred(env, asyncContext->deferred, args)); + } + } + } + + void OnDestroy() override + { + CM_LOG_D("InstallUIExtensionComponent OnDestroy()"); + } + +private: + bool SetErrorCode(int32_t errCode) + { + if (this->reqContext_ == nullptr) { + CM_LOG_E("OnError reqContext is nullptr"); + return false; + } + if (this->alreadyCallback_) { + CM_LOG_D("alreadyCallback"); + return false; + } + this->alreadyCallback_ = true; + this->reqContext_->errCode = errCode; + return true; + }; + int32_t resultCode_ = 0; + OHOS::AAFwk::Want resultWant_; + std::shared_ptr reqContext_ = nullptr; + bool alreadyCallback_ = false; +}; + +static bool IsCmCertificateScopeEnum(const uint32_t value) +{ + switch (static_cast(value)) { + case CertificateScope::CURRENT_USER: + return true; + default: + return false; + } +} + +static bool IsCmCertificateTypeAndConvert(const uint32_t value, uint32_t &pageType) +{ + switch (static_cast(value)) { + case CmCertificateType::CA_CERT: + pageType = CmDialogPageType::PAGE_INSTALL_CA_GUIDE; + return true; + default: + return false; + } +} + +static napi_value CMCheckArgvAndInitContext(std::shared_ptr asyncContext, + napi_value argv[], size_t length) +{ + if (length != PARAM_SIZE_FOUR) { + CM_LOG_E("params number vaild failed"); + return nullptr; + } + // Parse first argument for context. + if (!ParseCmUIAbilityContextReq(asyncContext->env, argv[PARAM0], asyncContext->context)) { + CM_LOG_E("ParseUIAbilityContextReq failed"); + return nullptr; + } + + // Parse second argument for certificate type. + uint32_t certificateType = 0; + if (ParseUint32(asyncContext->env, argv[PARAM1], certificateType) == nullptr) { + CM_LOG_E("parse type failed"); + return nullptr; + } + if (!IsCmCertificateTypeAndConvert(certificateType, asyncContext->certificateType)) { + CM_LOG_E("certificateType invalid"); + return nullptr; + } + + // Parse third argument for certificateScope. + if (ParseUint32(asyncContext->env, argv[PARAM2], asyncContext->certificateScope) == nullptr) { + CM_LOG_E("parse type failed"); + return nullptr; + } + if (!IsCmCertificateScopeEnum(asyncContext->certificateScope)) { + CM_LOG_E("certificateScope invalid"); + return nullptr; + } + + // Parse fourth argument for cert. + if (GetUint8ArrayToBase64Str(asyncContext->env, argv[PARAM3], asyncContext->certStr) == nullptr) { + CM_LOG_E("cert is not a uint8Array or the length is 0 or too long."); + return nullptr; + } + return GetInt32(asyncContext->env, 0); +} + +static OHOS::AAFwk::Want CMGetInstallCertWant(std::shared_ptr asyncContext) +{ + OHOS::AAFwk::Want want; + want.SetElementName(CERT_MANAGER_BUNDLENAME, CERT_MANAGER_ABILITYNAME); + want.SetParam(CERT_MANAGER_PAGE_TYPE, static_cast(asyncContext->certificateType)); + want.SetParam(CERT_MANAGER_CERTIFICATE_DATA, asyncContext->certStr); + want.SetParam(CERT_MANAGER_CERTSCOPE_TYPE, static_cast(asyncContext->certificateScope)); + want.SetParam(CERT_MANAGER_CALLER_BUNDLENAME, asyncContext->labelName); + want.SetParam(PARAM_UI_EXTENSION_TYPE, SYS_COMMON_UI); + return want; +} + +static OHOS::sptr GetBundleMgrProxy() +{ + auto systemAbilityManager = OHOS::SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + if (!systemAbilityManager) { + CM_LOG_E("fail to get system ability mgr."); + return nullptr; + } + + auto remoteObject = systemAbilityManager->GetSystemAbility(OHOS::BUNDLE_MGR_SERVICE_SYS_ABILITY_ID); + if (!remoteObject) { + CM_LOG_E("fail to get bundle manager proxy."); + return nullptr; + } + return OHOS::iface_cast(remoteObject); +} + +static int32_t GetCallerLabelName(std::shared_ptr asyncContext) +{ + OHOS::sptr bundleMgrProxy = GetBundleMgrProxy(); + if (bundleMgrProxy == nullptr) { + CM_LOG_E("Failed to get bundle manager proxy."); + return CM_FAILURE; + } + + OHOS::AppExecFwk::BundleInfo bundleInfo; + int32_t flags = static_cast(OHOS::AppExecFwk::GetBundleInfoFlag::GET_BUNDLE_INFO_DEFAULT) | + static_cast(OHOS::AppExecFwk::GetBundleInfoFlag::GET_BUNDLE_INFO_WITH_APPLICATION) | + static_cast(OHOS::AppExecFwk::GetBundleInfoFlag::GET_BUNDLE_INFO_WITH_HAP_MODULE) | + static_cast(OHOS::AppExecFwk::GetBundleInfoFlag::GET_BUNDLE_INFO_WITH_ABILITY); + int32_t resCode = bundleMgrProxy->GetBundleInfoForSelf(flags, bundleInfo); + if (resCode != CM_SUCCESS) { + CM_LOG_E("Failed to get bundleInfo, resCode is %d", resCode); + return CM_FAILURE; + } + + if (asyncContext->context->GetResourceManager() == nullptr) { + CM_LOG_E("context get resourcemanager faild"); + return CMR_ERROR_NULL_POINTER; + } + + resCode = asyncContext->context->GetResourceManager()->GetStringById(bundleInfo.applicationInfo.labelId, + asyncContext->labelName); + if (resCode != CM_SUCCESS) { + CM_LOG_E("getStringById is faild, resCode is %d", resCode); + return CM_FAILURE; + } + return CM_SUCCESS; +} + +napi_value CMNapiOpenInstallCertDialog(napi_env env, napi_callback_info info) +{ + CM_LOG_D("cert install dialog enter"); + napi_value result = nullptr; + NAPI_CALL(env, napi_get_undefined(env, &result)); + if (OHOS::system::GetParameter("const.product.devicetype", "") != "2in1") { + CM_LOG_E("deviceType is not 2in1"); + std::string errMsg = "DeviceType Error. deviceType is not 2in1"; + ThrowError(env, DIALOG_ERROR_NOT_SUPPORTED, errMsg); + return result; + } + + size_t argc = PARAM_SIZE_FOUR; + napi_value argv[PARAM_SIZE_FOUR] = { nullptr }; + NAPI_CALL(env, napi_get_cb_info(env, info, &argc, argv, nullptr, nullptr)); + if (argc != PARAM_SIZE_FOUR) { + CM_LOG_E("params number mismatch"); + std::string errMsg = "Parameter Error. Params number mismatch, need " + std::to_string(PARAM_SIZE_FOUR) + + ", given " + std::to_string(argc); + ThrowError(env, PARAM_ERROR, errMsg); + return result; + } + + auto asyncContext = std::make_shared(env); + asyncContext->env = env; + if (CMCheckArgvAndInitContext(asyncContext, argv, sizeof(argv) / sizeof(argv[0])) == nullptr) { + CM_LOG_E("check argv vaild and init faild"); + ThrowError(env, PARAM_ERROR, "check argv vaild and init faild"); + return nullptr; + } + + if (GetCallerLabelName(asyncContext) != CM_SUCCESS) { + CM_LOG_E("get caller labelName faild"); + ThrowError(env, DIALOG_ERROR_GENERIC, "get caller labelName faild"); + return nullptr; + } + NAPI_CALL(env, napi_create_promise(env, &asyncContext->deferred, &result)); + + auto uiExtCallback = std::make_shared(asyncContext); + StartUIExtensionAbility(asyncContext, CMGetInstallCertWant(asyncContext), uiExtCallback); + CM_LOG_D("cert install dialog end"); + return result; +} +} // namespace CMNapi + diff --git a/services/cert_manager_standard/BUILD.gn b/services/cert_manager_standard/BUILD.gn index f5f8f9b4c364916ac76934e354e8bdb886a8777f..33dd76f40db85ec26732a3178779cbf2c751d183 100644 --- a/services/cert_manager_standard/BUILD.gn +++ b/services/cert_manager_standard/BUILD.gn @@ -40,10 +40,7 @@ ohos_shared_library("cert_manager_service") { } subsystem_name = "security" part_name = "certificate_manager" - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + defines = [] if (certificate_manager_feature_ca_enabled == "false") { defines += [ "CERTIFICATE_MANAGER_FEATURE_CA_DISABLED" ] @@ -54,7 +51,6 @@ ohos_shared_library("cert_manager_service") { deps = [ ":cert_manager_service.rc", - "cert_manager_engine/main/core:cert_manager_engine_core_standard", "cert_manager_engine/main/rdb:libcert_manager_rdb_static", "cert_manager_service/main/os_dependency:libcert_manager_service_os_dependency_standard_static", ] diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/BUILD.gn b/services/cert_manager_standard/cert_manager_engine/main/core/BUILD.gn index 4483755614f989282fda09a127b934a93f2a1397..a201b57bc526b23a166b6cf3cc0a1779dc7db711 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_engine/main/core/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_engine_core_config") { @@ -30,15 +31,8 @@ ohos_static_library("cert_manager_engine_core_standard") { ubsan = true } - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - "OPENSSL_SUPPRESS_DEPRECATED", - ] - include_dirs = [ - "../rdb/include", - "../../../../../interfaces/innerkits/cert_manager_standard/main/include", - ] + defines = [ "OPENSSL_SUPPRESS_DEPRECATED" ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] cflags = [ "-Wall", "-Werror", @@ -68,8 +62,8 @@ ohos_static_library("cert_manager_engine_core_standard") { ] deps = [ - "../../../../../frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", - "../../../../../frameworks/cert_manager_standard/main/os_dependency:libcert_manager_log_mem_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/rdb:libcert_manager_rdb_static", ] external_deps = [ "access_token:libaccesstoken_sdk", @@ -79,4 +73,6 @@ ohos_static_library("cert_manager_engine_core_standard") { "ipc:ipc_core", "openssl:libcrypto_shared", ] + + complete_static_lib = true } diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_check.h b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_check.h index 863bf81d368a12b11060e955aa22a52482c60006..5bf317516d5aeaea47bd68457b9e0339606ef815 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_check.h +++ b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_check.h @@ -46,6 +46,8 @@ int32_t CmServiceInstallUserCertCheck(struct CmContext *cmContext, const struct int32_t CmServiceUninstallUserCertCheck(struct CmContext *cmContext, const struct CmBlob *certUri); +int32_t CmServiceGetUserCertInfoCheck(struct CmContext *cmContext, const struct CmBlob *uri, + const uint32_t type, bool isCheckUid); #ifdef __cplusplus } #endif diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_service.h b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_service.h index c983c289ee47995f0c01b1e60da3f2f16d389169..d15122c0f503d9a5fc26b9b6da92f85886ec4d06 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_service.h +++ b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_service.h @@ -53,7 +53,7 @@ int32_t CmServiceAbort(const struct CmContext *context, const struct CmBlob *han int32_t CmServiceGetCertList(const struct CmContext *context, uint32_t store, struct CmMutableBlob *certFileList); -int32_t CmServiceGetCertInfo(const struct CmContext *context, const struct CmBlob *certUri, +int32_t CmServiceGetCertInfo(struct CmContext *context, const struct CmBlob *certUri, uint32_t store, struct CmBlob *certificateData, uint32_t *status); int32_t CmX509ToPEM(const X509 *x509, struct CmBlob *userCertPem); diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_storage.h b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_storage.h index df260c6813b71578442aed9506475a6b25e323c9..89da7accbe43b72020e03af89ac00b8438574e5e 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_storage.h +++ b/services/cert_manager_standard/cert_manager_engine/main/core/include/cert_manager_storage.h @@ -33,7 +33,7 @@ extern "C" { #define CERT_BACKUP_CONFIG_ROOT_DIR "/data/service/el1/public/cert_manager_service/certificates/user_config" #define CERT_BACKUP_DIR_NAME "cacerts" #define CERT_CONFIG_FILE_SUFFIX ".config" -#define CERT_BACKUP_FILENAME_FORMAT "%lx.%d" +#define CERT_BACKUP_FILENAME_FORMAT "%08lx.%d" int32_t GetRootPath(uint32_t store, char *rootPath, uint32_t pathLen); diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager.c index c704364b92f53b6f11fa3ec85d699de76341b94d..22134617be9cb4f79f08ed26ad1d231cabfd8e5b 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager.c @@ -32,6 +32,7 @@ #include "cm_log.h" #include "cm_type.h" #include "cm_x509.h" +#include "cm_util.h" #include "securec.h" @@ -706,7 +707,7 @@ int32_t RdbInsertCertProperty(const struct CmContext *context, const struct CmBl CM_LOG_E("memcpy uri fail"); return CMR_ERROR_INVALID_OPERATION; } - if (memcpy_s(certProp.alias, MAX_LEN_SUBJECT_NAME, (char *)alias->data, alias->size) != CM_SUCCESS) { + if (memcpy_s(certProp.alias, MAX_LEN_CERT_ALIAS, (char *)alias->data, alias->size) != CM_SUCCESS) { CM_LOG_E("memcpy subjectName fail"); return CMR_ERROR_INVALID_OPERATION; } @@ -772,7 +773,13 @@ int32_t CmBackupRemove(uint32_t userId, const char *path, const struct CmBlob *c return CMR_ERROR_INVALID_ARGUMENT; } - uint32_t uid = (uint32_t)atoi(basename((char *)path)); + uint32_t uid = 0; + char *uidStr = basename((char *)path); + if (CmIsNumeric(uidStr, strlen(uidStr) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + return CMR_ERROR_INVALID_ARGUMENT; + } + char userCertConfigFilePath[CERT_MAX_PATH_LEN] = { 0 }; int32_t ret = CmGetCertConfPath(userId, uid, certUri, userCertConfigFilePath, CERT_MAX_PATH_LEN); if (ret != CM_SUCCESS) { @@ -841,7 +848,12 @@ static int32_t RemoveAllConfUidDir(uint32_t userId, const char *uidPath) return CMR_ERROR_INVALID_ARGUMENT; } char configUidDirPath[CERT_MAX_PATH_LEN] = { 0 }; - uint32_t uid = (uint32_t)atoi(basename((char *)uidPath)); + uint32_t uid = 0; + char *uidStr = basename((char *)uidPath); + if (CmIsNumeric(uidStr, strlen(uidStr) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + return CMR_ERROR_INVALID_ARGUMENT; + } int32_t ret = CmGetCertConfUidDir(userId, uid, configUidDirPath, CERT_MAX_PATH_LEN); if (ret != CM_SUCCESS) { diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_app_cert_process.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_app_cert_process.c index 45d7a54bd7c461e49ebfb3a91795440a6cadc24b..cee0f4df05b9928dec0d886d36aa343b6fd58420 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_app_cert_process.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_app_cert_process.c @@ -32,7 +32,6 @@ #include "cert_manager_mem.h" #include "cert_manager_storage.h" #include "cert_manager_crypto_operation.h" -#include "cert_manager.h" #include "cert_manager_service.h" #include "cert_manager_uri.h" #include "cm_log.h" diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_list_mgr.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_list_mgr.c index c830a0453b36d9da5c1345a0aec8202a60697d2d..02e6237a52270dffa764a25427cee298fd015736 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_list_mgr.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_list_mgr.c @@ -27,7 +27,7 @@ #define MAX_PATH_LEN 512 #define MAX_AUTH_COUNT 256 -#define AUTH_LIST_VERSON 0 +#define AUTH_LIST_VERSION 0 static int32_t CheckAuthListFileSizeValid(const struct CmBlob *originList, uint32_t *authCount) { @@ -219,7 +219,7 @@ static int32_t RefreshAuthListBuf(const char *path, const char *fileName, uint32 static int32_t InitAuthListBuf(uint32_t uid, struct CmBlob *authList) { uint32_t count = 1; - uint32_t version = AUTH_LIST_VERSON; + uint32_t version = AUTH_LIST_VERSION; uint32_t size = sizeof(version) + sizeof(count) + sizeof(uid) * count; uint8_t *data = (uint8_t *)CMMalloc(size); if (data == NULL) { diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_mgr.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_mgr.c index 31a2436a13c4db04a840e10e93b9b2fd4ef05ebf..f3b4f7dadd9349d1ab4ed4b92a7b82b08b219b01 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_mgr.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_auth_mgr.c @@ -26,6 +26,7 @@ #include "cert_manager_crypto_operation.h" #include "cert_manager_uri.h" #include "cm_log.h" +#include "cm_util.h" #define MAC_SHA256_LEN 32 @@ -109,8 +110,14 @@ static int32_t GetAndCheckUriObj(struct CMUri *uriObj, const struct CmBlob *uri, static int32_t CheckCallerIsProducer(const struct CmContext *context, const struct CMUri *uriObj) { /* check caller is Producer: user and app has been checked not null */ - uint32_t userId = (uint32_t)atoi(uriObj->user); - uint32_t uid = (uint32_t)atoi(uriObj->app); + uint32_t userId = 0; + uint32_t uid = 0; + if (CmIsNumeric(uriObj->user, strlen(uriObj->user) + 1, &userId) != CM_SUCCESS || + CmIsNumeric(uriObj->app, strlen(uriObj->app) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + return CMR_ERROR_INVALID_ARGUMENT; + } + if ((userId == context->userId) && (uid == context->uid)) { CM_LOG_D("caller is producer."); return CM_SUCCESS; @@ -468,7 +475,13 @@ static int32_t CheckIsAuthorizedApp(const struct CMUri *uriObj) /* calc uri mac */ uint8_t macData[MAC_SHA256_LEN] = {0}; struct CmBlob mac = { sizeof(macData), macData }; - uint32_t clientUid = (uint32_t)atoi(uriObj->clientApp); + uint32_t clientUid = 0; + if (CmIsNumeric(uriObj->clientApp, strlen(uriObj->clientApp) + 1, &clientUid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + CM_FREE_PTR(macByte.data); + return CMR_ERROR_INVALID_ARGUMENT; + } + ret = CalcUriMac(uriObj, clientUid, &mac, false); if (ret != CM_SUCCESS) { CM_LOG_E("calc uri mac failed, ret = %d", ret); @@ -683,7 +696,12 @@ static int32_t CheckCommonPermission(const struct CmContext *context, const stru return CMR_ERROR_PERMISSION_DENIED; } - uint32_t clientUid = (uint32_t)atoi(uriObj->clientApp); + uint32_t clientUid = 0; + if (CmIsNumeric(uriObj->clientApp, strlen(uriObj->clientApp) + 1, &clientUid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + return CMR_ERROR_INVALID_ARGUMENT; + } + if (clientUid != context->uid) { CM_LOG_E("caller uid not match client uid"); return CMR_ERROR_PERMISSION_DENIED; diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_check.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_check.c index 622222c1089854ef8a175f7fff7f1ffd65b3a864..8b41023a4241dfca9d9276a55ae0ecc978fac2db 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_check.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_check.c @@ -21,6 +21,7 @@ #include "cert_manager_permission_check.h" #include "cert_manager_uri.h" #include "cm_log.h" +#include "cm_util.h" int32_t CheckUri(const struct CmBlob *keyUri) { @@ -252,7 +253,7 @@ int32_t CmServiceInstallAppCertCheck(const struct CmAppCertParam *certParam, str return CM_SUCCESS; } -static int32_t checkCallerAndUri(struct CmContext *cmContext, const struct CmBlob *uri, +static int32_t CheckAndUpdateCallerAndUri(struct CmContext *cmContext, const struct CmBlob *uri, const uint32_t type, bool isCheckUid) { struct CMUri uriObj; @@ -268,8 +269,15 @@ static int32_t checkCallerAndUri(struct CmContext *cmContext, const struct CmBlo return CMR_ERROR_INVALID_ARGUMENT; } - uint32_t userId = (uint32_t)atoi(uriObj.user); - uint32_t uid = (uint32_t)atoi(uriObj.app); + uint32_t userId = 0; + uint32_t uid = 0; + if (CmIsNumeric(uriObj.user, strlen(uriObj.user) + 1, &userId) != CM_SUCCESS || + CmIsNumeric(uriObj.app, strlen(uriObj.app) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + (void)CertManagerFreeUri(&uriObj); + return CMR_ERROR_INVALID_ARGUMENT; + } + (void)CertManagerFreeUri(&uriObj); if ((cmContext->userId != 0) && (cmContext->userId != userId)) { CM_LOG_E("caller userid is not producer"); @@ -286,6 +294,23 @@ static int32_t checkCallerAndUri(struct CmContext *cmContext, const struct CmBlo return CM_SUCCESS; } +/* check context and uri and update it */ +int32_t CmServiceGetUserCertInfoCheck(struct CmContext *cmContext, const struct CmBlob *uri, + const uint32_t type, bool isCheckUid) +{ + if (cmContext == NULL) { + CM_LOG_E("CmServiceGetCertInfoCheck: Context is NULL"); + return CMR_ERROR_INVALID_ARGUMENT; + } + + if (CheckUri(uri) != CM_SUCCESS) { + CM_LOG_E("invalid input arguments"); + return CMR_ERROR_INVALID_ARGUMENT; + } + + return CheckAndUpdateCallerAndUri(cmContext, uri, type, isCheckUid); +} + int32_t CmServiceUninstallAppCertCheck(struct CmContext *cmContext, const uint32_t store, const struct CmBlob *keyUri) { @@ -310,7 +335,7 @@ int32_t CmServiceUninstallAppCertCheck(struct CmContext *cmContext, } if (store == CM_SYS_CREDENTIAL_STORE) { - return checkCallerAndUri(cmContext, keyUri, CM_URI_TYPE_SYS_KEY, true); + return CheckAndUpdateCallerAndUri(cmContext, keyUri, CM_URI_TYPE_SYS_KEY, true); } return CM_SUCCESS; @@ -410,7 +435,7 @@ int32_t CmServiceGetAppCertCheck(struct CmContext *cmContext, const uint32_t sto } if (store == CM_SYS_CREDENTIAL_STORE) { - int32_t ret = checkCallerAndUri(cmContext, keyUri, CM_URI_TYPE_SYS_KEY, false); + int32_t ret = CheckAndUpdateCallerAndUri(cmContext, keyUri, CM_URI_TYPE_SYS_KEY, false); if (ret != CM_SUCCESS) { CM_LOG_E("get type and userid from uri error"); return ret; @@ -506,7 +531,7 @@ int32_t CmServiceUninstallUserCertCheck(struct CmContext *cmContext, const struc return CMR_ERROR_NOT_SYSTEMP_APP; } - int32_t ret = checkCallerAndUri(cmContext, certUri, CM_URI_TYPE_CERTIFICATE, true); + int32_t ret = CheckAndUpdateCallerAndUri(cmContext, certUri, CM_URI_TYPE_CERTIFICATE, true); if (ret != CM_SUCCESS) { CM_LOG_E("uninstall user cert: caller and uri check fail"); return ret; diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_key_operation.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_key_operation.c index f081c76ffb41c6ab559eefa36dced9b1d6bd11d7..b69eea5bc3708536d0ffdd80cc8119450f9fa52f 100755 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_key_operation.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_key_operation.c @@ -124,6 +124,7 @@ int32_t CmKeyOpGenMacKey(const struct CmBlob *alias) struct CmBlob encodeTarget = { sizeof(encodeBuf), encodeBuf }; ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { + HksFreeParamSet(¶mSet); CM_LOG_E("get keyalias failed"); return ret; } @@ -155,6 +156,7 @@ int32_t CmKeyOpGenMacKeyIfNotExist(const struct CmBlob *alias) struct CmBlob encodeTarget = { sizeof(encodeBuf), encodeBuf }; ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { + HksFreeParamSet(¶mSet); CM_LOG_E("get keyalias failed"); return ret; } @@ -190,6 +192,7 @@ int32_t CmKeyOpDeleteKey(const struct CmBlob *alias) struct CmBlob encodeTarget = { sizeof(encodeBuf), encodeBuf }; ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { + HksFreeParamSet(¶mSet); CM_LOG_E("get keyalias failed"); return ret; } @@ -231,7 +234,7 @@ int32_t CmKeyOpCalcMac(const struct CmBlob *alias, const struct CmBlob *srcData, ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { CM_LOG_E("get keyalias failed"); - return ret; + break; } ret = HksInit(&keyAlias, paramSet, &handle, NULL); @@ -278,10 +281,11 @@ int32_t CmKeyOpImportKey(const struct CmBlob *alias, const struct CmKeyPropertie uint8_t encodeBuf[MAX_LEN_BASE64URL_SHA256] = { 0 }; struct CmBlob encodeTarget = { sizeof(encodeBuf), encodeBuf }; ret = GetKeyAlias(&keyAlias, &encodeTarget); - if (ret != CM_SUCCESS) { - CM_LOG_E("get keyalias failed"); - return ret; - } + if (ret != CM_SUCCESS) { + HksFreeParamSet(¶mSet); + CM_LOG_E("get keyalias failed"); + return ret; + } ret = HksImportKey(&keyAlias, paramSet, &key); HksFreeParamSet(¶mSet); @@ -362,6 +366,8 @@ static int32_t GetKeyProperties(const struct CmBlob *commonUri, struct CmKeyProp struct CmBlob encodeTarget = { sizeof(encodeBuf), encodeBuf }; ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { + CM_FREE_PTR(outParamSet); + HksFreeParamSet(&inParamSet); CM_LOG_E("get keyalias failed"); return ret; } @@ -396,7 +402,7 @@ static int32_t AddParamsToParamSet(const struct CmBlob *commonUri, const struct ret = GetKeyAlias(&keyAlias, &encodeTarget); if (ret != CM_SUCCESS) { CM_LOG_E("get keyalias failed"); - return ret; + break; } ret = GetKeyProperties((struct CmBlob *)&keyAlias, &keySpec); diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_service.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_service.c index 491b306c27feac11f1c2312f87c28ff6d1164425..ad9328cf2d0e1d92095d8dd371d845d93ea78d3f 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_service.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_service.c @@ -38,9 +38,11 @@ #include "cm_log.h" #include "cm_type.h" #include "cm_x509.h" +#include "cm_util.h" #include "cert_manager_file_operator.h" #include "cert_manager_updateflag.h" +#define MAX_PATH_LEN 256 static int32_t CheckPermission(bool needPriPermission, bool needCommonPermission) { @@ -152,7 +154,7 @@ int32_t CmServiceGetAppCert(const struct CmContext *context, uint32_t store, int32_t CmServiceGrantAppCertificate(const struct CmContext *context, const struct CmBlob *keyUri, uint32_t appUid, struct CmBlob *authUri) { - if (CheckUri(keyUri) != CM_SUCCESS || CmCheckBlob(authUri) != CM_SUCCESS) { + if (CheckUri(keyUri) != CM_SUCCESS || CmCheckBlob(authUri) != CM_SUCCESS || context == NULL) { CM_LOG_E("invalid input arguments"); return CMR_ERROR_INVALID_ARGUMENT; } @@ -227,7 +229,13 @@ static int32_t CheckAndGetStore(const struct CmContext *context, const struct Cm } uint32_t type = uriObj.type; - uint32_t userId = (uint32_t)atoi(uriObj.user); + uint32_t userId = 0; + if (CmIsNumeric(uriObj.user, strlen(uriObj.user) + 1, &userId) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + (void)CertManagerFreeUri(&uriObj); + return CMR_ERROR_INVALID_ARGUMENT; + } + (void)CertManagerFreeUri(&uriObj); if (type == CM_URI_TYPE_SYS_KEY) { if (!CmHasSystemAppPermission()) { @@ -462,14 +470,9 @@ int32_t CmServiceGetCertList(const struct CmContext *context, uint32_t store, st return ret; } -int32_t CmServiceGetCertInfo(const struct CmContext *context, const struct CmBlob *certUri, +static int32_t CmServiceGetSysCertInfo(const struct CmContext *context, const struct CmBlob *certUri, uint32_t store, struct CmBlob *certificateData, uint32_t *status) { - if (CmCheckBlob(certUri) != CM_SUCCESS || CheckUri(certUri) != CM_SUCCESS) { - CM_LOG_E("input params invalid"); - return CMR_ERROR_INVALID_ARGUMENT; - } - int32_t ret = CM_SUCCESS; struct CmMutableBlob certFileList = { 0, NULL }; do { @@ -490,15 +493,13 @@ int32_t CmServiceGetCertInfo(const struct CmContext *context, const struct CmBlo ret = CmGetCertStatus(context, &cFileList[matchIndex], store, status); /* status */ if (ret != CM_SUCCESS) { CM_LOG_E("Failed to get cert status"); - ret = CM_FAILURE; break; } ret = CmStorageGetBuf((char *)cFileList[matchIndex].path.data, - (char *)cFileList[matchIndex].fileName.data, certificateData); /* cert data */ + (char *)cFileList[matchIndex].fileName.data, certificateData); /* cert data */ if (ret != CM_SUCCESS) { CM_LOG_E("Failed to get cert data"); - ret = CM_FAILURE; break; } } while (0); @@ -509,6 +510,67 @@ int32_t CmServiceGetCertInfo(const struct CmContext *context, const struct CmBlo return ret; } +static int32_t CmServiceGetUserCertInfo(struct CmContext *context, const struct CmBlob *certUri, + uint32_t store, struct CmBlob *certificateData, uint32_t *status) +{ + int32_t ret = CM_SUCCESS; + char uidPath[MAX_PATH_LEN] = { 0 }; + ret = CmServiceGetUserCertInfoCheck(context, certUri, CM_URI_TYPE_CERTIFICATE, false); + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to check caller and uri"); + return ret; + } + + ret = ConstructUidPath(context, store, uidPath, MAX_PATH_LEN); + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to construct uidpath"); + return ret; + } + + struct CmBlob path = {MAX_PATH_LEN, (uint8_t *)uidPath}; + struct CertFileInfo cFile = {*certUri, path}; + ret = CmGetCertStatus(context, &cFile, store, status); /* status */ + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to get cert status"); + return ret; + } + + ret = CmStorageGetBuf(uidPath, (char *)cFile.fileName.data, certificateData); /* cert data */ + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to get cert data"); + return ret; + } + return ret; +} + +int32_t CmServiceGetCertInfo(struct CmContext *context, const struct CmBlob *certUri, + uint32_t store, struct CmBlob *certificateData, uint32_t *status) +{ + if (CmCheckBlob(certUri) != CM_SUCCESS || CheckUri(certUri) != CM_SUCCESS) { + CM_LOG_E("input params invalid"); + return CMR_ERROR_INVALID_ARGUMENT; + } + + int32_t ret = CM_SUCCESS; + if (store == CM_SYSTEM_TRUSTED_STORE) { + ret = CmServiceGetSysCertInfo(context, certUri, store, certificateData, status); + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to get system cert info"); + return ret; + } + } else if (store == CM_USER_TRUSTED_STORE) { + ret = CmServiceGetUserCertInfo(context, certUri, store, certificateData, status); + if (ret != CM_SUCCESS) { + CM_LOG_E("Failed to get user cert info"); + return ret; + } + } else { + CM_LOG_E("Invalid store"); + ret = CM_FAILURE; + } + return ret; +} + int32_t CmX509ToPEM(const X509 *x509, struct CmBlob *userCertPem) { int32_t ret = CM_SUCCESS; @@ -667,14 +729,25 @@ static int32_t CmComparisonCallerIdWithUri(const struct CmContext *context, (void)CertManagerFreeUri(&uriObj); return CMR_ERROR_INVALID_ARGUMENT; } - uint32_t userId = (uint32_t)atoi(uriObj.user); + uint32_t userId = 0; + if (CmIsNumeric(uriObj.user, strlen(uriObj.user) + 1, &userId) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + (void)CertManagerFreeUri(&uriObj); + return CMR_ERROR_INVALID_ARGUMENT; + } if (uriObj.app == NULL) { CM_LOG_E("uri app invalid"); (void)CertManagerFreeUri(&uriObj); return CMR_ERROR_INVALID_ARGUMENT; } - uint32_t uid = (uint32_t)atoi(uriObj.app); + uint32_t uid = 0; + if (CmIsNumeric(uriObj.app, strlen(uriObj.app) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + (void)CertManagerFreeUri(&uriObj); + return CMR_ERROR_INVALID_ARGUMENT; + } + if ((context->userId == userId) && (context->uid == uid)) { ret = CM_SUCCESS; } else { diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_updateflag.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_updateflag.c index f135fe832d31019c659320a0453bac6e1f3ea1c7..73819fef2a87ccbba8816875a9630853d64fc9b2 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_updateflag.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_updateflag.c @@ -32,6 +32,7 @@ #include "cm_log.h" #include "cm_x509.h" #include "securec.h" +#include "cm_util.h" #ifdef __cplusplus extern "C" { @@ -58,7 +59,7 @@ static int32_t GetUpdateFlag(uint8_t *updateFlag) uint8_t updateFlagTmp = false; if (updateFlag == NULL) { - CM_LOG_E("input params is invaild"); + CM_LOG_E("input params is invalid"); return CMR_ERROR_INVALID_ARGUMENT; } @@ -108,7 +109,7 @@ int32_t IsCertNeedBackup(uint32_t userId, uint32_t uid, const struct CmBlob *cer char configPath[CERT_MAX_PATH_LEN] = { 0 }; if (needUpdate == NULL) { - CM_LOG_E("input params is invaild"); + CM_LOG_E("input params is invalid"); return CMR_ERROR_INVALID_ARGUMENT; } @@ -218,8 +219,14 @@ int32_t CmConstructContextFromUri(const char *certUri, struct CmContext *context ret = CMR_ERROR_INVALID_ARGUMENT; break; } - context->userId = (uint32_t)atoi(cmUri.user); - context->uid = (uint32_t)atoi(cmUri.app); + + if (CmIsNumeric(cmUri.user, strlen(cmUri.user) + 1, &(context->userId)) != CM_SUCCESS || + CmIsNumeric(cmUri.app, strlen(cmUri.app) + 1, &(context->uid)) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + ret = CMR_ERROR_INVALID_ARGUMENT; + break; + } + if (snprintf_s(context->packageName, sizeof(context->packageName), sizeof(context->packageName) - 1, "%s", cmUri.object) < 0) { CM_LOG_E("Failed to fill context->packageName"); @@ -396,7 +403,11 @@ static int32_t UpdateUserCerts(uint32_t userId, const char *userIdPath) uint32_t uid = 0; /* Update certificate file */ - uid = (uint32_t)atoi(dire->d_name); + if (CmIsNumeric(dire->d_name, strlen(dire->d_name) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + continue; + } + ret = UpdateUserCert(userId, uid, (const char *)certFilePath->data); if (ret != CM_SUCCESS) { CM_LOG_E("Failed to update cert file for the certFilePath"); @@ -443,7 +454,11 @@ static int32_t UpdateAllUserCerts(void) } /* Updates all certificates for the specified user */ - userId = (uint32_t)atoi(dire->d_name); + if (CmIsNumeric(dire->d_name, strlen(dire->d_name) + 1, &userId) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + continue; + } + int32_t ret = UpdateUserCerts(userId, userIdPath); if (ret != CM_SUCCESS) { CM_LOG_E("Failed to update all certificates for the userIdPath"); diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_uri.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_uri.c index 796aeed18e7136c45ab13fc78bd8168018c75356..48bbbab0b2481c93a2bdf4a1c08411f360b0f88b 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_uri.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cert_manager_uri.c @@ -22,6 +22,7 @@ #include "securec.h" #include "cm_log.h" +#include "cm_util.h" #ifdef __cplusplus extern "C" { @@ -549,7 +550,12 @@ int32_t CertManagerGetUidFromUri(const struct CmBlob *uri, uint32_t *uid) return CMR_ERROR_INVALID_ARGUMENT; } - *uid = (uint32_t)atoi(uriObj.app); + if (CmIsNumeric(uriObj.app, strlen(uriObj.app) + 1, uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + (void)CertManagerFreeUri(&uriObj); + return CMR_ERROR_INVALID_ARGUMENT; + } + (void)CertManagerFreeUri(&uriObj); return CM_SUCCESS; } diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/cm_event_process.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/cm_event_process.c index f2d98e9ef4bd612b7c603aa3a5f7ee6e617c28a9..859f00cd6ec92a755a1b94aeb619c8fbc820e72f 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/cm_event_process.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/cm_event_process.c @@ -29,6 +29,7 @@ #include "cert_manager_storage.h" #include "cm_log.h" #include "cm_type.h" +#include "cm_util.h" static void DeleteAuth(const struct CmContext *context, const char *fileName, bool isDeleteByUid) { @@ -90,13 +91,14 @@ static int32_t CmTraversalDirAction(const struct CmContext *context, const char int32_t ret = CM_SUCCESS; switch (store) { - case CM_CREDENTIAL_STORE : + case CM_CREDENTIAL_STORE: DeleteAuth(context, fileName, false); __attribute__((fallthrough)); - case CM_PRI_CREDENTIAL_STORE : + case CM_PRI_CREDENTIAL_STORE: + case CM_SYS_CREDENTIAL_STORE: ret = CmTraversalDirActionCredential(filePath, fileName); break; - case CM_USER_TRUSTED_STORE : + case CM_USER_TRUSTED_STORE: ret = CmTraversalDirActionUserCa(context, filePath, fileName, store); break; default: @@ -228,7 +230,12 @@ static int32_t CmTraversalUidLayerDir(const struct CmContext *context, const cha static int32_t TraversalUserIdLayerDir(const struct CmContext *context, const char *userIdPath, const char *direName, const uint32_t store, bool isUserDeleteEvent) { - uint32_t uid = (uint32_t)atoi(direName); + uint32_t uid = 0; + if (CmIsNumeric(direName, strlen(direName) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + return CMR_ERROR_INVALID_ARGUMENT; + } + CM_LOG_D("CmTraversalUserIdLayerDir userId:%u, uid:%u", context->userId, uid); int32_t ret = CM_SUCCESS; @@ -304,6 +311,7 @@ static int32_t CmTraversalDir(const struct CmContext *context, const char *path, return CMR_ERROR_OPEN_FILE_FAIL; } + uint32_t uid = 0; struct dirent *dire = readdir(dir); while (dire != NULL) { char deletePath[CM_MAX_FILE_NAME_LEN] = { 0 }; @@ -312,8 +320,14 @@ static int32_t CmTraversalDir(const struct CmContext *context, const char *path, return CMR_ERROR_INVALID_OPERATION; } + if (CmIsNumeric(dire->d_name, strlen(dire->d_name) + 1, &uid) != CM_SUCCESS) { + CM_LOG_E("parse string to uint32 failed."); + dire = readdir(dir); + continue; + } + if (dire->d_type == DT_DIR && (strcmp("..", dire->d_name) != 0) && (strcmp(".", dire->d_name) != 0) && - ((uint32_t)atoi(dire->d_name) == context->userId)) { + (uid == context->userId)) { ret = CmTraversalUserIdLayerDir(context, deletePath, store); } else if (dire->d_type != DT_DIR) { (void)remove(deletePath); @@ -328,7 +342,7 @@ static int32_t CmTraversalDir(const struct CmContext *context, const char *path, static int32_t CmTraversalBackupUidDir(const char *certConfigUidDirPath) { if (certConfigUidDirPath == NULL) { - CM_LOG_E("input params is invaild"); + CM_LOG_E("input params is invalid"); return CMR_ERROR_INVALID_ARGUMENT; } @@ -360,7 +374,7 @@ static int32_t CmTraversalBackupUidDir(const char *certConfigUidDirPath) static int32_t CmTraversalBackupUserIdDir(const char *certConfigUserIdDirPath) { if (certConfigUserIdDirPath == NULL) { - CM_LOG_E("input params is invaild"); + CM_LOG_E("input params is invalid"); return CMR_ERROR_INVALID_ARGUMENT; } @@ -465,7 +479,7 @@ int32_t CmDeleteProcessInfo(const struct CmContext *context) /* Delete user ca */ ret = CmTraversalDir(context, USER_CA_STORE, CM_USER_TRUSTED_STORE); if (ret != CM_SUCCESS) { - CM_LOG_E("CmDeleteUserCa faild"); + CM_LOG_E("CmDeleteUserCa failed"); } /* Delete user ca backup and config */ @@ -478,19 +492,19 @@ int32_t CmDeleteProcessInfo(const struct CmContext *context) /* Delete private credentail */ ret = CmTraversalDir(context, APP_CA_STORE, CM_PRI_CREDENTIAL_STORE); if (ret != CM_SUCCESS) { - CM_LOG_E("CmDeletePrivateCredential faild"); + CM_LOG_E("CmDeletePrivateCredential failed"); } /* Delete public credentail */ ret = CmTraversalDir(context, CREDNTIAL_STORE, CM_CREDENTIAL_STORE); if (ret != CM_SUCCESS) { - CM_LOG_E("CmDeletePublicCredential faild"); + CM_LOG_E("CmDeletePublicCredential failed"); } /* Delete system credentail*/ ret = CmTraversalDir(context, SYS_CREDNTIAL_STORE, CM_SYS_CREDENTIAL_STORE); if (ret != CM_SUCCESS) { - CM_LOG_E("CmDeletePublicCredential faild"); + CM_LOG_E("CmDeleteSystemCredential failed"); } return ret; diff --git a/services/cert_manager_standard/cert_manager_engine/main/core/src/rbtree.c b/services/cert_manager_standard/cert_manager_engine/main/core/src/rbtree.c index 426d4673e2744b211d01028adc99f38a8b32dff7..33e0361875881372022f702372c23b954f18d890 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/core/src/rbtree.c +++ b/services/cert_manager_standard/cert_manager_engine/main/core/src/rbtree.c @@ -33,7 +33,7 @@ #define IS_RED(n) (COLOR((n)) == RED) #define IS_BLACK(n) (COLOR((n)) == BLACK) -#define SET_COLOR(n, color) if ((n) != NULL) { (n)->key = ((n)->key & KEY_MASK) | (color); }; +#define SET_COLOR(n, color) if ((n) != NULL) { (n)->key = ((n)->key & KEY_MASK) | (color); } #define SET_RED(n) SET_COLOR((n), RED) #define SET_BLACK(n) SET_COLOR((n), BLACK) diff --git a/services/cert_manager_standard/cert_manager_engine/main/rdb/BUILD.gn b/services/cert_manager_standard/cert_manager_engine/main/rdb/BUILD.gn index 197beb858cbe0827c78456c308aa7425270ec6ad..7b940c743c20e40c2354b5a888cd5a75c5361c41 100644 --- a/services/cert_manager_standard/cert_manager_engine/main/rdb/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_engine/main/rdb/BUILD.gn @@ -9,8 +9,9 @@ # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and -# limitations under the License. +# limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -31,10 +32,7 @@ ohos_static_library("libcert_manager_rdb_static") { ubsan = true } - include_dirs = [ - "../../../../../frameworks/cert_manager_standard/main/common/include", - "../../../../../interfaces/innerkits/cert_manager_standard/main/include", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] sources = [ "src/cm_cert_property_rdb.cpp", @@ -42,14 +40,13 @@ ohos_static_library("libcert_manager_rdb_static") { "src/cm_rdb_open_callback.cpp", ] + deps = [ "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static" ] external_deps = [ "c_utils:utils", "hilog:libhilog", "relational_store:native_rdb", ] - defines = [ "_CM_LOG_ENABLE_" ] - cflags_cc = [ "-Wall", "-Werror", diff --git a/services/cert_manager_standard/cert_manager_service.cfg b/services/cert_manager_standard/cert_manager_service.cfg index 09ee859e86ff03cdf107b99c39de129dea0c4b09..193d499326356c6634548ab25296cd403451c456 100644 --- a/services/cert_manager_standard/cert_manager_service.cfg +++ b/services/cert_manager_standard/cert_manager_service.cfg @@ -2,9 +2,9 @@ "jobs" : [{ "name" : "post-fs-data", "cmds" : [ - "mkdir /data/service/el1/public/cert_manager_service 0700 cert_manager_server cert_manager_server", + "mkdir /data/service/el1/public/cert_manager_service 0701 cert_manager_server cert_manager_server", "mkdir /data/service/el1/public/cert_manager_service/status 0700 cert_manager_server cert_manager_server", - "mkdir /data/service/el1/public/cert_manager_service/certificates 0700 cert_manager_server cert_manager_server", + "mkdir /data/service/el1/public/cert_manager_service/certificates 0701 cert_manager_server cert_manager_server", "mkdir /data/service/el1/public/cert_manager_service/certificates/credential 0700 cert_manager_server cert_manager_server", "mkdir /data/service/el1/public/cert_manager_service/certificates/user 0700 cert_manager_server cert_manager_server", "mkdir /data/service/el1/public/cert_manager_service/certificates/priv_credential 0700 cert_manager_server cert_manager_server", diff --git a/services/cert_manager_standard/cert_manager_service/main/hisysevent_wrapper/BUILD.gn b/services/cert_manager_standard/cert_manager_service/main/hisysevent_wrapper/BUILD.gn index 8b4771add0c7486f9c559e61aa207122a0682e0e..fcc97271839f8fe9f85cad16f2d49082f3e10a65 100644 --- a/services/cert_manager_standard/cert_manager_service/main/hisysevent_wrapper/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_service/main/hisysevent_wrapper/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -30,12 +31,7 @@ ohos_static_library("libcert_manager_hisysevent_wrapper_static") { integer_overflow = true ubsan = true } - include_dirs = [ - "../../../../../frameworks/cert_manager_standard/main/common/include", - "../../../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include", - "../../../../../services/cert_manager_standard/cert_manager_engine/main/core/include", - "../../../../../interfaces/innerkits/cert_manager_standard/main/include", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] sources = [ "src/cm_report_wrapper.c", "src/hisysevent_wrapper.cpp", @@ -44,12 +40,14 @@ ohos_static_library("libcert_manager_hisysevent_wrapper_static") { "-Wall", "-Werror", ] - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", + deps = [ + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/core:cert_manager_engine_core_standard", ] external_deps = [ - "bounds_checking_function:libsec_static", + "bounds_checking_function:libsec_shared", "hisysevent:libhisysevent", ] + complete_static_lib = true } diff --git a/services/cert_manager_standard/cert_manager_service/main/os_dependency/BUILD.gn b/services/cert_manager_standard/cert_manager_service/main/os_dependency/BUILD.gn index cea010b35489a2b3e549221a4a79e963b8abc738..120ac7d381d67a293fb50d4248ff1c91db7f8a5c 100644 --- a/services/cert_manager_standard/cert_manager_service/main/os_dependency/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_service/main/os_dependency/BUILD.gn @@ -11,11 +11,16 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") +config("cert_manager_config") { + include_dirs = [ "sa" ] +} ohos_static_library("libcert_manager_service_os_dependency_standard_static") { subsystem_name = "security" part_name = "certificate_manager" + public_configs = [ ":cert_manager_config" ] branch_protector_ret = "pac_ret" sanitize = { cfi = true @@ -25,20 +30,13 @@ ohos_static_library("libcert_manager_service_os_dependency_standard_static") { integer_overflow = true ubsan = true } - include_dirs = [ - "../../../cert_manager_engine/main/core/include", - "../../../cert_manager_engine/main/rdb/include", - "../../../../../interfaces/innerkits/cert_manager_standard/main/include", - ] - - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] + defines = [] sources = [ "sa/cm_sa.cpp" ] deps = [ - "../../../../../frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", - "../../../../../frameworks/cert_manager_standard/main/os_dependency:libcert_manager_log_mem_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/core:cert_manager_engine_core_standard", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/rdb:libcert_manager_rdb_static", "idl:libcm_service_idl_standard_static", ] @@ -61,7 +59,6 @@ ohos_static_library("libcert_manager_service_os_dependency_standard_static") { "os_account:os_account_innerkits", ] } - cflags_cc = [ "-Wall", "-Werror", diff --git a/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/BUILD.gn b/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/BUILD.gn index 11fc83e67adc43fa6c852251975c88a8ec1c21be..7dc213c1fda9fe5c491b7c23fc67137957b25a16 100644 --- a/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -30,25 +31,20 @@ ohos_static_library("libcm_service_idl_standard_static") { integer_overflow = true ubsan = true } - include_dirs = [ - "../../../../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../../cert_manager_engine/main/core/include", - ] - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] + include_dirs = [ "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main/include" ] + defines = [] sources = [ "cm_ipc/cm_ipc_service.c", "cm_ipc/cm_ipc_service_serialization.c", "cm_ipc/cm_response.cpp", ] deps = [ - "../../../../../../frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", - "../../../../../../frameworks/cert_manager_standard/main/os_dependency:libcert_manager_log_mem_static", - "../../hisysevent_wrapper:libcert_manager_hisysevent_wrapper_static", - "../../security_guard_report:libcert_manager_sg_report_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/core:cert_manager_engine_core_standard", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/hisysevent_wrapper:libcert_manager_hisysevent_wrapper_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/security_guard_report:libcert_manager_sg_report_static", ] + external_deps = [ "ability_base:want", "c_utils:utils", @@ -65,9 +61,7 @@ ohos_static_library("libcm_service_idl_standard_static") { ] defines += [] } - cflags_cc = [ - "-DHILOG_ENABLE", "-Wall", "-Werror", ] diff --git a/services/cert_manager_standard/cert_manager_service/main/os_dependency/sa/cm_sa.cpp b/services/cert_manager_standard/cert_manager_service/main/os_dependency/sa/cm_sa.cpp index 32e472b6abef25abb914838f9df5a5688d956c4c..bd54929a8ca88094acef6b4330044d929cf5a911 100644 --- a/services/cert_manager_standard/cert_manager_service/main/os_dependency/sa/cm_sa.cpp +++ b/services/cert_manager_standard/cert_manager_service/main/os_dependency/sa/cm_sa.cpp @@ -24,7 +24,6 @@ #include "system_ability_definition.h" #include "cert_manager.h" -#include "cm_cert_property_rdb.h" #include "cm_event_observer.h" #include "cm_event_process.h" #include "cm_log.h" @@ -269,7 +268,6 @@ void CertManagerService::OnStart(const SystemAbilityOnDemandReason& startReason) CM_LOG_D("CertManagerService start success."); (void)CmBackupAllSaUserCerts(); - (void)CreateCertPropertyRdb(); } void CertManagerService::OnAddSystemAbility(int32_t systemAbilityId, const std::string &deviceId) diff --git a/services/cert_manager_standard/cert_manager_service/main/security_guard_report/BUILD.gn b/services/cert_manager_standard/cert_manager_service/main/security_guard_report/BUILD.gn index 3bdd81cbdca5ee46cb1283cddb73b114b37fba45..968f7b4620e0a4b51686f51221d0157a37c399c2 100644 --- a/services/cert_manager_standard/cert_manager_service/main/security_guard_report/BUILD.gn +++ b/services/cert_manager_standard/cert_manager_service/main/security_guard_report/BUILD.gn @@ -11,8 +11,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") -import("../../../../../cert_manager.gni") config("cert_manager_config") { include_dirs = [ "include" ] @@ -31,11 +31,11 @@ ohos_static_library("libcert_manager_sg_report_static") { integer_overflow = true ubsan = true } - include_dirs = [ - "../../../../../frameworks/cert_manager_standard/main/common/include", - "../../../../../interfaces/innerkits/cert_manager_standard/main/include", + + deps = [ + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] - deps = [ "../../../../../frameworks/cert_manager_standard/main/os_dependency:libcert_manager_log_mem_static" ] sources = [ "src/cm_security_guard_info.c", "src/cm_security_guard_report.cpp", @@ -44,10 +44,9 @@ ohos_static_library("libcert_manager_sg_report_static") { "-Wall", "-Werror", ] - defines = [ "_CM_LOG_ENABLE_" ] external_deps = [ - "bounds_checking_function:libsec_static", + "bounds_checking_function:libsec_shared", "c_utils:utils", "ipc:ipc_single", ] @@ -56,4 +55,5 @@ ohos_static_library("libcert_manager_sg_report_static") { cflags_cc = [ "-DSUPPORT_SECURITY_GUARD" ] external_deps += [ "security_guard:libsg_collect_sdk" ] } + complete_static_lib = true } diff --git a/test/BUILD.gn b/test/BUILD.gn index 2971cb913879b307db39c58ba10ad0722987bc7b..2317301ee118bb2e70051e257da1954d1d57650d 100644 --- a/test/BUILD.gn +++ b/test/BUILD.gn @@ -11,8 +11,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/test.gni") -import("../cert_manager.gni") module_output_path = "cert_manager_standard/cert_manager_standard_test" @@ -53,8 +53,8 @@ ohos_unittest("cm_sdk_test") { } deps = [ - "../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", - "../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmabort_fuzzer/BUILD.gn b/test/fuzz_test/cmabort_fuzzer/BUILD.gn index 621cb1ac61297790808621c3433056648d8cca22..3eef910c21a3aca20d330b1ed23d8a851474a5dd 100644 --- a/test/fuzz_test/cmabort_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmabort_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,19 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmAbortFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmabort_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmabort_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmabort_fuzzer.cpp", - ] + sources = [ "cmabort_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmabort_fuzzer/cmabort_fuzzer.cpp b/test/fuzz_test/cmabort_fuzzer/cmabort_fuzzer.cpp index 45cd417683cfe140395e87a16ff1982ed6df084d..867a3e1e0d02bdd53b9053f90bd95e85f2b31521 100644 --- a/test/fuzz_test/cmabort_fuzzer/cmabort_fuzzer.cpp +++ b/test/fuzz_test/cmabort_fuzzer/cmabort_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -37,7 +36,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmAbort(&abHandle); CmFree(myData); diff --git a/test/fuzz_test/cmappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmappcert_fuzzer/BUILD.gn index c543c8f79ffb5b95be2d2a2e65c397c7f611a198..09bc106ab6c9bba9da188ccb1963ca581bac801e 100644 --- a/test/fuzz_test/cmappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmappcert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmappcert_fuzzer.cpp", - ] + sources = [ "cmappcert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmappcert_fuzzer/cmappcert_fuzzer.cpp b/test/fuzz_test/cmappcert_fuzzer/cmappcert_fuzzer.cpp index 7d92888fdf2cda34a2c6cacb495f9556637bf7fc..cab826bfc804181462f5be5f733a1a73ac8d545a 100644 --- a/test/fuzz_test/cmappcert_fuzzer/cmappcert_fuzzer.cpp +++ b/test/fuzz_test/cmappcert_fuzzer/cmappcert_fuzzer.cpp @@ -16,15 +16,16 @@ #include "cmappcert_fuzzer.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" -#include "cm_cert_data_part1_rsa.h" +#include "cm_cert_data_rsa.h" #include "cm_ipc_client_serialization.h" #include "cm_ipc_service.h" #include "cm_param.h" #include "cert_manager_api.h" +#include "cm_type.h" using namespace CmFuzzTest; namespace OHOS { + constexpr uint32_t TEST_USERID = 100; constexpr uint32_t MIN_DATA_USE_TIME = 4; static bool InstallAppCert(uint8_t *tmpData, uint32_t *remainSize, uint32_t *offset, uint32_t store, struct CmBlob *keyUri) @@ -132,7 +133,7 @@ namespace OHOS { uint32_t remainSize = static_cast(size); uint32_t offset = 0; - CertmanagerTest::SetATPermission(); + SetATPermission(); uint32_t store; if (!GetUintFromBuffer(tmpData, &remainSize, &offset, &store)) { diff --git a/test/fuzz_test/cmfinish_fuzzer/BUILD.gn b/test/fuzz_test/cmfinish_fuzzer/BUILD.gn index 887fea79a6c0ec00c2f6664b04c2b9018844da42..362523a0689d9a92e7c20203544e8ae5c6ad64c0 100644 --- a/test/fuzz_test/cmfinish_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmfinish_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,19 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmFinishFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmfinish_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmfinish_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmfinish_fuzzer.cpp", - ] + sources = [ "cmfinish_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmfinish_fuzzer/cmfinish_fuzzer.cpp b/test/fuzz_test/cmfinish_fuzzer/cmfinish_fuzzer.cpp index 44e6575aa660a520a544a41a5e271c57889be935..85ceea355c2c53bbc8397ebf95d9c2e3d5d633f2 100644 --- a/test/fuzz_test/cmfinish_fuzzer/cmfinish_fuzzer.cpp +++ b/test/fuzz_test/cmfinish_fuzzer/cmfinish_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -52,7 +51,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmFinish(&fiHandle, &inData, &outData); CmFree(myData); diff --git a/test/fuzz_test/cmgetappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmgetappcert_fuzzer/BUILD.gn index c1397028bcb88d348ba425a3df5d5bc688645b0a..0d9644fd4f9f887e3b432e8e4480f0c062f758b0 100644 --- a/test/fuzz_test/cmgetappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetappcert_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetappcert_fuzzer.cpp", - ] + sources = [ "cmgetappcert_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetappcert_fuzzer/cmgetappcert_fuzzer.cpp b/test/fuzz_test/cmgetappcert_fuzzer/cmgetappcert_fuzzer.cpp index 69cef83d8747d338f460cdbec68789df3ff5db7e..96baf1b3cff133e14540ea6937fb50a293836015 100644 --- a/test/fuzz_test/cmgetappcert_fuzzer/cmgetappcert_fuzzer.cpp +++ b/test/fuzz_test/cmgetappcert_fuzzer/cmgetappcert_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -58,7 +57,7 @@ namespace OHOS { } credCert.credData.data = const_cast(myData + offset); - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetAppCert(&appCertUri, store, &credCert); CmFree(myData); diff --git a/test/fuzz_test/cmgetappcertlist_fuzzer/BUILD.gn b/test/fuzz_test/cmgetappcertlist_fuzzer/BUILD.gn index 3a480a1ba10c7cb874ed44c20d910aeb9a1999ee..5ef11ad6ed39658658f9c96b3710e463c55eae18 100644 --- a/test/fuzz_test/cmgetappcertlist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetappcertlist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetAppCertListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetappcertlist_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetappcertlist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetappcertlist_fuzzer.cpp", - ] + sources = [ "cmgetappcertlist_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetappcertlist_fuzzer/cmgetappcertlist_fuzzer.cpp b/test/fuzz_test/cmgetappcertlist_fuzzer/cmgetappcertlist_fuzzer.cpp index 3f2420cdb1867e217229d348737e9674ab692123..ae1b018340c86a2597e277b6fe3de8d64961a9bb 100644 --- a/test/fuzz_test/cmgetappcertlist_fuzzer/cmgetappcertlist_fuzzer.cpp +++ b/test/fuzz_test/cmgetappcertlist_fuzzer/cmgetappcertlist_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -49,7 +48,7 @@ namespace OHOS { } credCertList.credentialAbstract = reinterpret_cast(myData + offset); - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetAppCertList(credStore, &credCertList); CmFree(myData); diff --git a/test/fuzz_test/cmgetauthorizedapplist_fuzzer/BUILD.gn b/test/fuzz_test/cmgetauthorizedapplist_fuzzer/BUILD.gn index ad4eb9dc7508c3ce2de61393e55f42d8c768afff..e5f171049dee29eb82e7bfe7db64370905a6826d 100644 --- a/test/fuzz_test/cmgetauthorizedapplist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetauthorizedapplist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetAuthorizedAppListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetauthorizedapplist_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetauthorizedapplist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetauthorizedapplist_fuzzer.cpp", - ] + sources = [ "cmgetauthorizedapplist_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetauthorizedapplist_fuzzer/cmgetauthorizedapplist_fuzzer.cpp b/test/fuzz_test/cmgetauthorizedapplist_fuzzer/cmgetauthorizedapplist_fuzzer.cpp index 7389574f3b404707605b8eb49535a62e25bc8091..a2a4119b0b0af7320a1e5c26d4b8a75cd712497e 100644 --- a/test/fuzz_test/cmgetauthorizedapplist_fuzzer/cmgetauthorizedapplist_fuzzer.cpp +++ b/test/fuzz_test/cmgetauthorizedapplist_fuzzer/cmgetauthorizedapplist_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -49,7 +48,7 @@ namespace OHOS { } appUidList.appUid = reinterpret_cast(myData + offset); - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetAuthorizedAppList(&authorUri, &appUidList); CmFree(myData); diff --git a/test/fuzz_test/cmgetcertinfo_fuzzer/BUILD.gn b/test/fuzz_test/cmgetcertinfo_fuzzer/BUILD.gn index 1eca4404e568b34daa575fa35a048899c94c464d..fad5f3733edf59e8edba7734e9d39b423f927758 100644 --- a/test/fuzz_test/cmgetcertinfo_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetcertinfo_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetCertInfoFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetcertinfo_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetcertinfo_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetcertinfo_fuzzer.cpp", - ] + sources = [ "cmgetcertinfo_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetcertinfo_fuzzer/cmgetcertinfo_fuzzer.cpp b/test/fuzz_test/cmgetcertinfo_fuzzer/cmgetcertinfo_fuzzer.cpp index 27b4d078022bdc94ef1f5a33fe2edeabd1e469e9..8dbee6420c6116e9b35254bc46e544416ea25a60 100644 --- a/test/fuzz_test/cmgetcertinfo_fuzzer/cmgetcertinfo_fuzzer.cpp +++ b/test/fuzz_test/cmgetcertinfo_fuzzer/cmgetcertinfo_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -49,7 +48,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetCertInfo(&sysUri, store, &sysCertInfo); CmFree(myData); diff --git a/test/fuzz_test/cmgetcertlist_fuzzer/BUILD.gn b/test/fuzz_test/cmgetcertlist_fuzzer/BUILD.gn index 2ee235350f91dcbba31b5b7c3bbdab8bbf156e89..96494f9db403b069e764dbdac509022d6006a9f0 100644 --- a/test/fuzz_test/cmgetcertlist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetcertlist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetCertListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetcertlist_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetcertlist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetcertlist_fuzzer.cpp", - ] + sources = [ "cmgetcertlist_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetcertlist_fuzzer/cmgetcertlist_fuzzer.cpp b/test/fuzz_test/cmgetcertlist_fuzzer/cmgetcertlist_fuzzer.cpp index 58cc6bb84cf7b3be4f81c76af0cec96dbda33ce3..bdeb3fb251401bf525130b9a9854f8f0e5562aa9 100644 --- a/test/fuzz_test/cmgetcertlist_fuzzer/cmgetcertlist_fuzzer.cpp +++ b/test/fuzz_test/cmgetcertlist_fuzzer/cmgetcertlist_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -43,7 +42,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetCertList(sysStore, &sysCertList); CmFree(myData); diff --git a/test/fuzz_test/cmgetusercertinfo_fuzzer/BUILD.gn b/test/fuzz_test/cmgetusercertinfo_fuzzer/BUILD.gn index ef10ddeff70f825611bb720e691bb57c5315439a..fb38fda8d8a172bd7af2ae0ad336aac8b1fe98bd 100644 --- a/test/fuzz_test/cmgetusercertinfo_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetusercertinfo_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetUserCertInfoFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetusercertinfo_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetusercertinfo_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetusercertinfo_fuzzer.cpp", - ] + sources = [ "cmgetusercertinfo_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetusercertinfo_fuzzer/cmgetusercertinfo_fuzzer.cpp b/test/fuzz_test/cmgetusercertinfo_fuzzer/cmgetusercertinfo_fuzzer.cpp index e5ab2d526a3aebfcf1d0fff9a850940c7670b27b..6d8b304067fc9a46bbe08cc6dd6edf435ca7cd1b 100644 --- a/test/fuzz_test/cmgetusercertinfo_fuzzer/cmgetusercertinfo_fuzzer.cpp +++ b/test/fuzz_test/cmgetusercertinfo_fuzzer/cmgetusercertinfo_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -50,7 +49,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetUserCertInfo(&userCertUri, store, &userCertInfo); CmFree(myData); diff --git a/test/fuzz_test/cmgetusercertlist_fuzzer/BUILD.gn b/test/fuzz_test/cmgetusercertlist_fuzzer/BUILD.gn index e9af46e82156892efe00a8dbd1ebf3d68ad4dbb5..79d5ebc0fc34a9ea45337de243e8ff5d4a5cf8ba 100644 --- a/test/fuzz_test/cmgetusercertlist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgetusercertlist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGetUserCertListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgetusercertlist_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgetusercertlist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgetusercertlist_fuzzer.cpp", - ] + sources = [ "cmgetusercertlist_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgetusercertlist_fuzzer/cmgetusercertlist_fuzzer.cpp b/test/fuzz_test/cmgetusercertlist_fuzzer/cmgetusercertlist_fuzzer.cpp index 7b38d51fb1bb17a950d01d583f4ea506d62a6d24..a015bf488373955205d682d4a9cea82294dacb20 100644 --- a/test/fuzz_test/cmgetusercertlist_fuzzer/cmgetusercertlist_fuzzer.cpp +++ b/test/fuzz_test/cmgetusercertlist_fuzzer/cmgetusercertlist_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -44,7 +43,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGetUserCertList(userStore, &userCertList); CmFree(myData); diff --git a/test/fuzz_test/cmgrantappcertificate_fuzzer/BUILD.gn b/test/fuzz_test/cmgrantappcertificate_fuzzer/BUILD.gn index c393ac3dc893763c558e24bd86889856c77c95b0..87ec021276127c1736b9088c93e876b47aa26521 100644 --- a/test/fuzz_test/cmgrantappcertificate_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmgrantappcertificate_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmGrantAppCertificateFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmgrantappcertificate_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmgrantappcertificate_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmgrantappcertificate_fuzzer.cpp", - ] + sources = [ "cmgrantappcertificate_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmgrantappcertificate_fuzzer/cmgrantappcertificate_fuzzer.cpp b/test/fuzz_test/cmgrantappcertificate_fuzzer/cmgrantappcertificate_fuzzer.cpp index fceeb5946d2e55cb35b6ab6341e61be471484498..e716e1be40ab4fcf6f9be6910d5331b56650878e 100644 --- a/test/fuzz_test/cmgrantappcertificate_fuzzer/cmgrantappcertificate_fuzzer.cpp +++ b/test/fuzz_test/cmgrantappcertificate_fuzzer/cmgrantappcertificate_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -50,7 +49,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmGrantAppCertificate(&keyUri, appUid, &authUri); CmFree(myData); diff --git a/test/fuzz_test/cminit_fuzzer/BUILD.gn b/test/fuzz_test/cminit_fuzzer/BUILD.gn index 2347e5a6751aa646c638ec48f500b167cc457be3..c265cb7597ddc76ca1c5e3ddb6276cfdcc96293e 100644 --- a/test/fuzz_test/cminit_fuzzer/BUILD.gn +++ b/test/fuzz_test/cminit_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,19 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmInitFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cminit_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cminit_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cminit_fuzzer.cpp", - ] + sources = [ "cminit_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cminit_fuzzer/cminit_fuzzer.cpp b/test/fuzz_test/cminit_fuzzer/cminit_fuzzer.cpp index d653e1892c7488a457f9aa72a33ef15eb8117f35..36e85ced8a2c2994d68f67b0df260f7b97852530 100644 --- a/test/fuzz_test/cminit_fuzzer/cminit_fuzzer.cpp +++ b/test/fuzz_test/cminit_fuzzer/cminit_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -55,7 +54,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmInit(&authUri, &spec, &handle); CmFree(myData); diff --git a/test/fuzz_test/cminstallappcert_fuzzer/BUILD.gn b/test/fuzz_test/cminstallappcert_fuzzer/BUILD.gn index 499f5cd4c49ec0a97450a5dd9e7e547e1cc329e2..94635b5d9c9e2f30f894961867a2e38122f8f6a6 100644 --- a/test/fuzz_test/cminstallappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cminstallappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmInstallAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cminstallappcert_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cminstallappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cminstallappcert_fuzzer.cpp", - ] + sources = [ "cminstallappcert_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cminstallappcert_fuzzer/cminstallappcert_fuzzer.cpp b/test/fuzz_test/cminstallappcert_fuzzer/cminstallappcert_fuzzer.cpp index 09affe140617c746d5ae66cd22828e45cf9ffbad..49036081e0e7611956bbe5e66527f12aece6059b 100644 --- a/test/fuzz_test/cminstallappcert_fuzzer/cminstallappcert_fuzzer.cpp +++ b/test/fuzz_test/cminstallappcert_fuzzer/cminstallappcert_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -64,7 +63,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmInstallAppCert(&appCert, &appCertPwd, &certAlias, store, &keyUri); CmFree(myData); diff --git a/test/fuzz_test/cminstallusertrustedcert_fuzzer/BUILD.gn b/test/fuzz_test/cminstallusertrustedcert_fuzzer/BUILD.gn index 6869baa619a11005ea77921a4bb947a8ab65bdf9..2e5844dfef50d1f423cadf69aeed716fc07b038d 100644 --- a/test/fuzz_test/cminstallusertrustedcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cminstallusertrustedcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmInstallUserTrustedCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cminstallusertrustedcert_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cminstallusertrustedcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cminstallusertrustedcert_fuzzer.cpp", - ] + sources = [ "cminstallusertrustedcert_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cminstallusertrustedcert_fuzzer/cminstallusertrustedcert_fuzzer.cpp b/test/fuzz_test/cminstallusertrustedcert_fuzzer/cminstallusertrustedcert_fuzzer.cpp index 0ab3eb0dce8baf829c895fec1eda571c4c2c227d..1198f271d7323e5a8bc31374b9f0e069752aa9bf 100644 --- a/test/fuzz_test/cminstallusertrustedcert_fuzzer/cminstallusertrustedcert_fuzzer.cpp +++ b/test/fuzz_test/cminstallusertrustedcert_fuzzer/cminstallusertrustedcert_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -51,7 +50,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmInstallUserTrustedCert(&userCert, &certAlias, &certUri); CmFree(myData); diff --git a/test/fuzz_test/cmipcserviceabort_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceabort_fuzzer/BUILD.gn index 1379e0a57e319e7fe56300558858ff46c51de96f..48cc9b66356de4d46606362d947390a545417252 100644 --- a/test/fuzz_test/cmipcserviceabort_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceabort_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceAbortFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcserviceabort_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceabort_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceabort_fuzzer.cpp", - ] + sources = [ "cmipcserviceabort_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceabort_fuzzer/cmipcserviceabort_fuzzer.cpp b/test/fuzz_test/cmipcserviceabort_fuzzer/cmipcserviceabort_fuzzer.cpp index 23a4d68f55dd8730f365f3955d48d06f1907a001..23aa999ef184f60afb67499803b8bb2d1d796af7 100644 --- a/test/fuzz_test/cmipcserviceabort_fuzzer/cmipcserviceabort_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceabort_fuzzer/cmipcserviceabort_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_ABORT, false, CmIpcServiceAbort)) { return false; } diff --git a/test/fuzz_test/cmipcservicefinish_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicefinish_fuzzer/BUILD.gn index 0e4d8ce323a5a07d637d614caa82799d4a810b37..ceebdf4154fb1a75b1855fcc8ad127418b76e8c2 100644 --- a/test/fuzz_test/cmipcservicefinish_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicefinish_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceFinishFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcservicefinish_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcservicefinish_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicefinish_fuzzer.cpp", - ] + sources = [ "cmipcservicefinish_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicefinish_fuzzer/cmipcservicefinish_fuzzer.cpp b/test/fuzz_test/cmipcservicefinish_fuzzer/cmipcservicefinish_fuzzer.cpp index 4e6a996fb59d52067e1d36fcd56b20d9933b3f83..85009c2cd9192382e1c2bf066af833bdbac4add0 100644 --- a/test/fuzz_test/cmipcservicefinish_fuzzer/cmipcservicefinish_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicefinish_fuzzer/cmipcservicefinish_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_FINISH, false, CmIpcServiceFinish)) { return false; } diff --git a/test/fuzz_test/cmipcservicegetappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetappcert_fuzzer/BUILD.gn index 1c3b59eca31b28cb6ded339515fd92f3cdbcb682..ac6252815822c01b08ae0b8c201207d6d0678cdd 100644 --- a/test/fuzz_test/cmipcservicegetappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcservicegetappcert_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetappcert_fuzzer.cpp", - ] + sources = [ "cmipcservicegetappcert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetappcert_fuzzer/cmipcservicegetappcert_fuzzer.cpp b/test/fuzz_test/cmipcservicegetappcert_fuzzer/cmipcservicegetappcert_fuzzer.cpp index a63da8c81aa207b5d40c9e2e747d417e0be96d18..dcbc70bb5889ad4d30a4de4d8cec26d6438a3631 100644 --- a/test/fuzz_test/cmipcservicegetappcert_fuzzer/cmipcservicegetappcert_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetappcert_fuzzer/cmipcservicegetappcert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_APP_CERTIFICATE, false, CmIpcServiceGetAppCert)) { return false; diff --git a/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/BUILD.gn index 05892f6105ab66fb9147037f853cedc121c4a70e..7df43f1e19bde23a94299e9ec77e262c454ceba7 100644 --- a/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetAppCertListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcservicegetappcertlist_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetappcertlist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetappcertlist_fuzzer.cpp", - ] + sources = [ "cmipcservicegetappcertlist_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/cmipcservicegetappcertlist_fuzzer.cpp b/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/cmipcservicegetappcertlist_fuzzer.cpp index 694297dd218926561fcef7744da5f515e290bfe0..9fbbdbd87d838f75a3fb22fd89453481abc7a910 100644 --- a/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/cmipcservicegetappcertlist_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetappcertlist_fuzzer/cmipcservicegetappcertlist_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_APP_CERTIFICATE_LIST, false, CmIpcServiceGetAppCertList)) { return false; diff --git a/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/BUILD.gn index 5ff93dbd4801c55ce6d014ca86a6909866ca081b..7e3aa702be632d0ee23c0829eabe965d347e778a 100644 --- a/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetAuthorizedAppListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetauthorizedapplist_fuzzer.cpp", - ] + sources = [ "cmipcservicegetauthorizedapplist_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/cmipcservicegetauthorizedapplist_fuzzer.cpp b/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/cmipcservicegetauthorizedapplist_fuzzer.cpp index 19add546828955c024a5b8b9eb8bfcb04e74f8ac..a84f7fef1f815db239da0327691b279813cace98 100644 --- a/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/cmipcservicegetauthorizedapplist_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetauthorizedapplist_fuzzer/cmipcservicegetauthorizedapplist_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_AUTHED_LIST, false, CmIpcServiceGetAuthorizedAppList)) { return false; diff --git a/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/BUILD.gn index e650f41470f58b402a2b0af22757ac1f8dab819c..1089d5c7439148f50dad3c0c3ecfdd3d5fc613c7 100644 --- a/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetCertificateInfoFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetcertificateinfo_fuzzer.cpp", - ] + sources = [ "cmipcservicegetcertificateinfo_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/cmipcservicegetcertificateinfo_fuzzer.cpp b/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/cmipcservicegetcertificateinfo_fuzzer.cpp index 233c65574470cc92ceff028fd595ff063f9cacb7..9ba32afc7acb7afdd637e1abe4be190c480342b1 100644 --- a/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/cmipcservicegetcertificateinfo_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetcertificateinfo_fuzzer/cmipcservicegetcertificateinfo_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_CERTIFICATE_INFO, false, CmIpcServiceGetCertificateInfo)) { return false; diff --git a/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/BUILD.gn index 1e6fcbe2921787e532aa1dce1660c2ae15d430cf..37a7de29156dc38e41bf892f6528244a362c829d 100644 --- a/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetCertificateListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegetcertificatelist_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetcertificatelist_fuzzer.cpp", - ] + sources = [ "cmipcservicegetcertificatelist_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/cmipcservicegetcertificatelist_fuzzer.cpp b/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/cmipcservicegetcertificatelist_fuzzer.cpp index 117231366d75ef8786346ff8d1640c49f7b679fc..d97b49b3cd4978b3cf089d291c5639dab2e9641a 100644 --- a/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/cmipcservicegetcertificatelist_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetcertificatelist_fuzzer/cmipcservicegetcertificatelist_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_CERTIFICATE_LIST, false, CmIpcServiceGetCertificateList)) { return false; diff --git a/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/BUILD.gn index 80ab69b307aced872ae25d2080ad8d0838b54d65..8f45eb2b58c2f5b6833961a542a194fa03a56550 100644 --- a/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetUserCertInfoFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegetusercertinfo_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetusercertinfo_fuzzer.cpp", - ] + sources = [ "cmipcservicegetusercertinfo_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/cmipcservicegetusercertinfo_fuzzer.cpp b/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/cmipcservicegetusercertinfo_fuzzer.cpp index c1b68eceffb91b1fba7ec800999ecfbcb033b099..d9e4d3b3def4a52ceaff968eb64f9bcc52236c7a 100644 --- a/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/cmipcservicegetusercertinfo_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetusercertinfo_fuzzer/cmipcservicegetusercertinfo_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_USER_CERTIFICATE_INFO, false, CmIpcServiceGetUserCertInfo)) { return false; diff --git a/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/BUILD.gn index 4694b795c2cc6a2e0c041a2145e8d811d2b29b3a..be31eef707f05100b5ab0dcfa256e66b892f9292 100644 --- a/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGetUserCertListFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegetusercertlist_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegetusercertlist_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegetusercertlist_fuzzer.cpp", - ] + sources = [ "cmipcservicegetusercertlist_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/cmipcservicegetusercertlist_fuzzer.cpp b/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/cmipcservicegetusercertlist_fuzzer.cpp index 39cd98ed4bb7e84d632fc31dfdd03268763e8560..182bd4b915fce1c8b51d6391ae71f4b8b16a987b 100644 --- a/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/cmipcservicegetusercertlist_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegetusercertlist_fuzzer/cmipcservicegetusercertlist_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GET_USER_CERTIFICATE_LIST, false, CmIpcServiceGetUserCertList)) { return false; diff --git a/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/BUILD.gn index e3b641d91a29295b3031ded310f32c9e322ed460..d0a3026b991ea460f6a588a15f04faad5bd59d6e 100644 --- a/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceGrantAppCertificateFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicegrantappcertificate_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicegrantappcertificate_fuzzer.cpp", - ] + sources = [ "cmipcservicegrantappcertificate_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/cmipcservicegrantappcertificate_fuzzer.cpp b/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/cmipcservicegrantappcertificate_fuzzer.cpp index 1cbb366f7ee7cdd33f708f2e576ac9e2e4ade7f2..ca3e65810cdd6e2f82ab5e9293deb79b78f95f21 100644 --- a/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/cmipcservicegrantappcertificate_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicegrantappcertificate_fuzzer/cmipcservicegrantappcertificate_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_GRANT_APP_CERT, false, CmIpcServiceGrantAppCertificate)) { return false; diff --git a/test/fuzz_test/cmipcserviceinit_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceinit_fuzzer/BUILD.gn index adfae0118e4ed7776eb92e009a74bbadef379259..1209a2e44f6af28a8e73500b992fe25757ca5de0 100644 --- a/test/fuzz_test/cmipcserviceinit_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceinit_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceInitFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcserviceinit_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceinit_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceinit_fuzzer.cpp", - ] + sources = [ "cmipcserviceinit_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceinit_fuzzer/cmipcserviceinit_fuzzer.cpp b/test/fuzz_test/cmipcserviceinit_fuzzer/cmipcserviceinit_fuzzer.cpp index f2d71cdd07314112ab8100e95ab40ef1832e1d58..6194d7ae949a7684f722fa40a60a8f8499f31822 100644 --- a/test/fuzz_test/cmipcserviceinit_fuzzer/cmipcserviceinit_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceinit_fuzzer/cmipcserviceinit_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_INIT, false, CmIpcServiceInit)) { return false; } diff --git a/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/BUILD.gn index fbb5ea97bc947d7ad5c9b98fce3ba87e58423834..23d0930a1e90099bff64b4590c8edeeecf4c54d5 100644 --- a/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceInstallAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcserviceinstallappcert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceinstallappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceinstallappcert_fuzzer.cpp", - ] + sources = [ "cmipcserviceinstallappcert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/cmipcserviceinstallappcert_fuzzer.cpp b/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/cmipcserviceinstallappcert_fuzzer.cpp index 507c3c8b9bfe8c6c10569e0a098acf5a0feaccda..81e063dfb6a90fc036e4656a9c7dbd995fed507a 100644 --- a/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/cmipcserviceinstallappcert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceinstallappcert_fuzzer/cmipcserviceinstallappcert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_INSTALL_APP_CERTIFICATE, false, CmIpcServiceInstallAppCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/BUILD.gn index 227cb0a4f66eef5bb63bd3dae5d6029dd2b4fb54..f324a296523df8c07538f5e59c7e7db4f61659a7 100644 --- a/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceInstallUserCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceinstallusercert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceinstallusercert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceinstallusercert_fuzzer.cpp", - ] + sources = [ "cmipcserviceinstallusercert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/cmipcserviceinstallusercert_fuzzer.cpp b/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/cmipcserviceinstallusercert_fuzzer.cpp index 16f6067acba6a0f29d5a9e735ab5ccca75c7c94c..116aacdd8b3d16016ddfc8b8f80b72e62f33b201 100644 --- a/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/cmipcserviceinstallusercert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceinstallusercert_fuzzer/cmipcserviceinstallusercert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_INSTALL_USER_CERTIFICATE, false, CmIpcServiceInstallUserCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/BUILD.gn index 95c1a46ea5bc58b8f1794d4506e28ee700993fd5..4645c8750dcb8eb14949a028a2d907bb2017e9b4 100644 --- a/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceIsAuthorizedAppFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceisauthorizedapp_fuzzer.cpp", - ] + sources = [ "cmipcserviceisauthorizedapp_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/cmipcserviceisauthorizedapp_fuzzer.cpp b/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/cmipcserviceisauthorizedapp_fuzzer.cpp index d9f4c2314e2d481feb667af62676742219c4f4a3..c8c67320a88f006cb23ea5baa92f54357f40dc39 100644 --- a/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/cmipcserviceisauthorizedapp_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceisauthorizedapp_fuzzer/cmipcserviceisauthorizedapp_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_CHECK_IS_AUTHED_APP, false, CmIpcServiceIsAuthorizedApp)) { return false; diff --git a/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/BUILD.gn index 040cba6dd6091050a0b7b64ed3ae7907cbdd6b1b..781a613d6a688ca39b22584c5516dc71483fc339 100644 --- a/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceRemoveGrantedAppFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceremovegrantedapp_fuzzer.cpp", - ] + sources = [ "cmipcserviceremovegrantedapp_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/cmipcserviceremovegrantedapp_fuzzer.cpp b/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/cmipcserviceremovegrantedapp_fuzzer.cpp index 35040319d7de257ec43245b981e9449a7ad2e136..7ed5bbaff42415fc314f09ae248f79a8aa7ea477 100644 --- a/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/cmipcserviceremovegrantedapp_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceremovegrantedapp_fuzzer/cmipcserviceremovegrantedapp_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_REMOVE_GRANT_APP, false, CmIpcServiceRemoveGrantedApp)) { return false; diff --git a/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/BUILD.gn index 3c152134f8b251e51a656002d51dffe3824fba35..31476f194a0443f191bb1c5f1dcb2fcbd9fffff5 100644 --- a/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceSetCertStatusFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcservicesetcertstatus_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcservicesetcertstatus_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicesetcertstatus_fuzzer.cpp", - ] + sources = [ "cmipcservicesetcertstatus_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/cmipcservicesetcertstatus_fuzzer.cpp b/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/cmipcservicesetcertstatus_fuzzer.cpp index 436b3b8de6e192a15cd865300ac443e2a01f4129..26c2b5422cab4ca88862471b27a95f2a02da23e7 100644 --- a/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/cmipcservicesetcertstatus_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicesetcertstatus_fuzzer/cmipcservicesetcertstatus_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_SET_CERTIFICATE_STATUS, false, CmIpcServiceSetCertStatus)) { return false; diff --git a/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/BUILD.gn b/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/BUILD.gn index 754a54284a0c3ff67e3fbf522437149ff2600850..1aed075b84194d6333ccdd5ee5850302dafe345d 100644 --- a/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceSetUserCertStatusFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcservicesetusercertstatus_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcservicesetusercertstatus_fuzzer.cpp", - ] + sources = [ "cmipcservicesetusercertstatus_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/cmipcservicesetusercertstatus_fuzzer.cpp b/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/cmipcservicesetusercertstatus_fuzzer.cpp index 0215e1b173584bae8639a08f169bd9bf657ddd64..ca4e31890eaf39ec721b1a9c55cbec04eac60b15 100644 --- a/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/cmipcservicesetusercertstatus_fuzzer.cpp +++ b/test/fuzz_test/cmipcservicesetusercertstatus_fuzzer/cmipcservicesetusercertstatus_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_SET_USER_CERTIFICATE_STATUS, false, CmIpcServiceSetUserCertStatus)) { return false; diff --git a/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/BUILD.gn index 4649726f877431ab8dc61da4807195d61fa0e9e0..13293ee53285109da187a7a5f42da99ca77f1c77 100644 --- a/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceUninstallAllAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceuninstallallappcert_fuzzer.cpp", - ] + sources = [ "cmipcserviceuninstallallappcert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/cmipcserviceuninstallallappcert_fuzzer.cpp b/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/cmipcserviceuninstallallappcert_fuzzer.cpp index 8f1cd8ec7e0cbaaa192de93da4de35391f8b788d..99802a5c9b87ad8f0694d580f8b802ec8754b388 100644 --- a/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/cmipcserviceuninstallallappcert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceuninstallallappcert_fuzzer/cmipcserviceuninstallallappcert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_UNINSTALL_APP_CERTIFICATE, false, CmIpcServiceUninstallAllAppCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/BUILD.gn index aa3c1c1e5e4f0b47d5504c574b0987a88fb63d1d..c432bdac987c81b5581028f1ebe61ad9c3aaef04 100644 --- a/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceUninstallAllUserCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceuninstallallusercert_fuzzer.cpp", - ] + sources = [ "cmipcserviceuninstallallusercert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/cmipcserviceuninstallallusercert_fuzzer.cpp b/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/cmipcserviceuninstallallusercert_fuzzer.cpp index 7d848a84e7eaa72f6b086a8cb2448029aa2e60b3..8ee5260519806cf473e76a79e5c4df72b8b20f46 100644 --- a/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/cmipcserviceuninstallallusercert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceuninstallallusercert_fuzzer/cmipcserviceuninstallallusercert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_UNINSTALL_ALL_USER_CERTIFICATE, false, CmIpcServiceUninstallAllUserCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/BUILD.gn index ca57b48af73091c0fe6ab21e5e68b17bb0b55948..47507ac68dbba105d4bdea8b2b72e67d67038051 100644 --- a/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceUninstallAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceuninstallappcert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceuninstallappcert_fuzzer.cpp", - ] + sources = [ "cmipcserviceuninstallappcert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/cmipcserviceuninstallappcert_fuzzer.cpp b/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/cmipcserviceuninstallappcert_fuzzer.cpp index 2ed14dd18083bd6a253ab8f38e2b954df330f099..7392c9a98e8a785c437f41ad0a33d774eeab24c0 100644 --- a/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/cmipcserviceuninstallappcert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceuninstallappcert_fuzzer/cmipcserviceuninstallappcert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_UNINSTALL_APP_CERTIFICATE, false, CmIpcServiceUninstallAppCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/BUILD.gn index 991f301de05dd5a7084f11bf1631f2d83fd3c4e5..637d84d6569e3d6c2174157b3d136e5ea5381ac3 100644 --- a/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,28 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceUninstallUserCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = - "../../../test/fuzz_test/cmipcserviceuninstallusercert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceuninstallusercert_fuzzer.cpp", - ] + sources = [ "cmipcserviceuninstallusercert_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/cmipcserviceuninstallusercert_fuzzer.cpp b/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/cmipcserviceuninstallusercert_fuzzer.cpp index e6894c4847d068b7de5f74225d26b0c416c2fb64..7da8988f3a1458ebe2bf72b38b77a1dce69dc5c8 100644 --- a/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/cmipcserviceuninstallusercert_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceuninstallusercert_fuzzer/cmipcserviceuninstallusercert_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_UNINSTALL_USER_CERTIFICATE, false, CmIpcServiceUninstallUserCert)) { return false; diff --git a/test/fuzz_test/cmipcserviceupdate_fuzzer/BUILD.gn b/test/fuzz_test/cmipcserviceupdate_fuzzer/BUILD.gn index 7f3f75df87054948be0c34da606b861217822189..feb2c1a9d00f86e797735ab62743e0b5f62622a7 100644 --- a/test/fuzz_test/cmipcserviceupdate_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmipcserviceupdate_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,27 +20,22 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIpcServiceUpdateFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmipcserviceupdate_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmipcserviceupdate_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmipcserviceupdate_fuzzer.cpp", - ] + sources = [ "cmipcserviceupdate_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmipcserviceupdate_fuzzer/cmipcserviceupdate_fuzzer.cpp b/test/fuzz_test/cmipcserviceupdate_fuzzer/cmipcserviceupdate_fuzzer.cpp index 883913224b076cb1e993e01f650661da3d37a633..971ee9ba5244ea36f3d4af7c48130f2cace96060 100644 --- a/test/fuzz_test/cmipcserviceupdate_fuzzer/cmipcserviceupdate_fuzzer.cpp +++ b/test/fuzz_test/cmipcserviceupdate_fuzzer/cmipcserviceupdate_fuzzer.cpp @@ -17,13 +17,12 @@ #include "cm_fuzz_test_common.h" #include "cm_ipc_service.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { bool DoSomethingInterestingWithMyAPI(const uint8_t* data, size_t size) { - CertmanagerTest::SetATPermission(); + SetATPermission(); if (!IpcServiceApiFuzzerTest(data, size, CM_MSG_UPDATE, false, CmIpcServiceUpdate)) { return false; } diff --git a/test/fuzz_test/cmisauthorizedapp_fuzzer/BUILD.gn b/test/fuzz_test/cmisauthorizedapp_fuzzer/BUILD.gn index 8d9e56ea27fddea65f293eb2242317aa77809846..29e258a5b1815d1dff2a21e0c1df420bc4170a48 100644 --- a/test/fuzz_test/cmisauthorizedapp_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmisauthorizedapp_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmIsAuthorizedAppFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmisauthorizedapp_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmisauthorizedapp_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmisauthorizedapp_fuzzer.cpp", - ] + sources = [ "cmisauthorizedapp_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmisauthorizedapp_fuzzer/cmisauthorizedapp_fuzzer.cpp b/test/fuzz_test/cmisauthorizedapp_fuzzer/cmisauthorizedapp_fuzzer.cpp index c40cd54251d79e3e07d3fcab80552218dbe16fd0..6c6e422e59c950a6702753034fb0dd60e06f99f6 100644 --- a/test/fuzz_test/cmisauthorizedapp_fuzzer/cmisauthorizedapp_fuzzer.cpp +++ b/test/fuzz_test/cmisauthorizedapp_fuzzer/cmisauthorizedapp_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -38,7 +37,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmIsAuthorizedApp(&authAppUri); CmFree(myData); diff --git a/test/fuzz_test/cmonremoterequest_fuzzer/BUILD.gn b/test/fuzz_test/cmonremoterequest_fuzzer/BUILD.gn index cb05899c9b4a5f4fc9ecb530493acf69d7efe6d0..0dbc72ef22f70c953a307ed9f5c1bebca0adafc8 100755 --- a/test/fuzz_test/cmonremoterequest_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmonremoterequest_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,33 +20,31 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmOnRemoteRequestFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmonremoterequest_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmonremoterequest_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/sa", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmonremoterequest_fuzzer.cpp", - ] + sources = [ "cmonremoterequest_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency:libcert_manager_service_os_dependency_standard_static", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", "access_token:libtoken_setproc", "bounds_checking_function:libsec_static", + "c_utils:utils", + "eventhandler:libeventhandler", "ipc:ipc_core", "safwk:system_ability_fwk", ] diff --git a/test/fuzz_test/cmonremoterequest_fuzzer/cmonremoterequest_fuzzer.cpp b/test/fuzz_test/cmonremoterequest_fuzzer/cmonremoterequest_fuzzer.cpp index 083d95ce12a34672051c1152df88e891891ede87..d5699b744274248972171681943549f36fc28425 100755 --- a/test/fuzz_test/cmonremoterequest_fuzzer/cmonremoterequest_fuzzer.cpp +++ b/test/fuzz_test/cmonremoterequest_fuzzer/cmonremoterequest_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cm_fuzz_test_common.h" #include "cm_sa.h" -#include "cm_test_common.h" #include "message_option.h" #include "message_parcel.h" @@ -67,7 +66,7 @@ namespace OHOS { MessageParcel reply; MessageOption option; - CertmanagerTest::SetATPermission(); + SetATPermission(); SystemAbilityOnDemandReason reason; (void)myService.OnStart(reason); (void)myService.OnRemoteRequest(code, messageData, reply, option); diff --git a/test/fuzz_test/cmremovegrantedapp_fuzzer/BUILD.gn b/test/fuzz_test/cmremovegrantedapp_fuzzer/BUILD.gn index 37a5baae9e2e17266194b35fe58623ff90d5d265..a56302d0c7fefe5efc3b54208a2d9648f83c4a11 100644 --- a/test/fuzz_test/cmremovegrantedapp_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmremovegrantedapp_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -20,25 +21,20 @@ module_output_path = "certificate_manager/certificate_manager" ohos_fuzztest("CmRemoveGrantedAppFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmremovegrantedapp_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmremovegrantedapp_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmremovegrantedapp_fuzzer.cpp", - ] + sources = [ "cmremovegrantedapp_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmremovegrantedapp_fuzzer/cmremovegrantedapp_fuzzer.cpp b/test/fuzz_test/cmremovegrantedapp_fuzzer/cmremovegrantedapp_fuzzer.cpp index bcf1d8b433e22fb2988eada22b03508aefab08bd..5fe5a712af17e616f0eb66b58673bbedeaf19013 100644 --- a/test/fuzz_test/cmremovegrantedapp_fuzzer/cmremovegrantedapp_fuzzer.cpp +++ b/test/fuzz_test/cmremovegrantedapp_fuzzer/cmremovegrantedapp_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -44,7 +43,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmRemoveGrantedApp(&grantKeyUri, appUid); CmFree(myData); diff --git a/test/fuzz_test/cmsendrequest_fuzzer/BUILD.gn b/test/fuzz_test/cmsendrequest_fuzzer/BUILD.gn index c3cbc32c1aa1e6681331e48e3e9d0277a2df0705..993acce50ae09811e1a6e4c40abdcd7e8beb6b46 100644 --- a/test/fuzz_test/cmsendrequest_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmsendrequest_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,26 +20,21 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmSendRequestFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmsendrequest_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmsendrequest_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include/", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmsendrequest_fuzzer.cpp", - ] + sources = [ "cmsendrequest_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmsendrequest_fuzzer/cmsendrequest_fuzzer.cpp b/test/fuzz_test/cmsendrequest_fuzzer/cmsendrequest_fuzzer.cpp index af35186734720bf94591adc1d642792afb814e3d..0d427cf04f9df1239ddd19ed65f58c55edabef91 100644 --- a/test/fuzz_test/cmsendrequest_fuzzer/cmsendrequest_fuzzer.cpp +++ b/test/fuzz_test/cmsendrequest_fuzzer/cmsendrequest_fuzzer.cpp @@ -18,7 +18,6 @@ #include "cm_fuzz_test_common.h" #include "cm_param.h" #include "cm_request.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -56,7 +55,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)SendRequest(type, &inBlob, &outBlob); CmFree(myData); diff --git a/test/fuzz_test/cmsetcertstatus_fuzzer/BUILD.gn b/test/fuzz_test/cmsetcertstatus_fuzzer/BUILD.gn index 4d2c36ef96fa4cf9469d2baa9684cb73bd39c45e..19ef37f8fe40779afb74e21b20221cc68ed8d43b 100644 --- a/test/fuzz_test/cmsetcertstatus_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmsetcertstatus_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmSetCertStatusFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmsetcertstatus_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmsetcertstatus_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmsetcertstatus_fuzzer.cpp", - ] + sources = [ "cmsetcertstatus_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmsetcertstatus_fuzzer/cmsetcertstatus_fuzzer.cpp b/test/fuzz_test/cmsetcertstatus_fuzzer/cmsetcertstatus_fuzzer.cpp index 2089560ec7b445938039be4b9d0f1cde9457ffeb..c473980b0deee013ceaba7b63c0851500683eca8 100644 --- a/test/fuzz_test/cmsetcertstatus_fuzzer/cmsetcertstatus_fuzzer.cpp +++ b/test/fuzz_test/cmsetcertstatus_fuzzer/cmsetcertstatus_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -51,7 +50,7 @@ namespace OHOS { bool status; (void)memcpy_s(&status, sizeof(bool), myData + offset, sizeof(bool)); - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmSetCertStatus(&sysCertUri, store, status); CmFree(myData); return true; diff --git a/test/fuzz_test/cmsetusercertstatus_fuzzer/BUILD.gn b/test/fuzz_test/cmsetusercertstatus_fuzzer/BUILD.gn index 590310236eef0557a2bcf6ecd94cef357af100a2..6fdc9085a748514cf29013c530f44c90fc6e4fa0 100644 --- a/test/fuzz_test/cmsetusercertstatus_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmsetusercertstatus_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmSetUserCertStatusFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmsetusercertstatus_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmsetusercertstatus_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmsetusercertstatus_fuzzer.cpp", - ] + sources = [ "cmsetusercertstatus_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmsetusercertstatus_fuzzer/cmsetusercertstatus_fuzzer.cpp b/test/fuzz_test/cmsetusercertstatus_fuzzer/cmsetusercertstatus_fuzzer.cpp index e281dc748ac0a9a9b6379e6968a438dcc80c0d50..e3abd200a7952db1633ae0b6f6df3bf73cb4a344 100644 --- a/test/fuzz_test/cmsetusercertstatus_fuzzer/cmsetusercertstatus_fuzzer.cpp +++ b/test/fuzz_test/cmsetusercertstatus_fuzzer/cmsetusercertstatus_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -51,7 +50,7 @@ namespace OHOS { bool status; (void)memcpy_s(&status, sizeof(bool), myData + offset, sizeof(bool)); - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmSetUserCertStatus(&setUserUri, userStore, status); CmFree(myData); diff --git a/test/fuzz_test/cmsystemtrustedstore_fuzzer/BUILD.gn b/test/fuzz_test/cmsystemtrustedstore_fuzzer/BUILD.gn index 0393c2aee37b581b337204997801375cd7d78309..4fa4941180357454fb3573f3705df154bd68bd08 100644 --- a/test/fuzz_test/cmsystemtrustedstore_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmsystemtrustedstore_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,29 +20,24 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmSystemTrustedStoreFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmsystemtrustedstore_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmsystemtrustedstore_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../services/cert_manager_standard/cert_manager_engine/main/core/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmsystemtrustedstore_fuzzer.cpp", - ] + sources = [ "cmsystemtrustedstore_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/core:cert_manager_engine_core_standard", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmsystemtrustedstore_fuzzer/cmsystemtrustedstore_fuzzer.cpp b/test/fuzz_test/cmsystemtrustedstore_fuzzer/cmsystemtrustedstore_fuzzer.cpp index 900e07b0f5ca641e7be0564547543efa371797ac..5954ad603ee0d3fcd5fbad7bb258e84cc846f6cb 100644 --- a/test/fuzz_test/cmsystemtrustedstore_fuzzer/cmsystemtrustedstore_fuzzer.cpp +++ b/test/fuzz_test/cmsystemtrustedstore_fuzzer/cmsystemtrustedstore_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cm_fuzz_test_common.h" #include "cert_manager_api.h" -#include "cm_test_common.h" #include "cm_ipc_client_serialization.h" #include "cm_ipc_service.h" #include "cm_param.h" @@ -137,7 +136,7 @@ namespace OHOS { uint32_t remainSize = static_cast(size); uint32_t offset = 0; - CertmanagerTest::SetATPermission(); + SetATPermission(); bool ret = false; uint8_t keyUriData[] = "1d3472b9.0"; diff --git a/test/fuzz_test/cmuninstallappcert_fuzzer/BUILD.gn b/test/fuzz_test/cmuninstallappcert_fuzzer/BUILD.gn index 0ebf1a0c4f6be45d83b443049866da966fe8356a..6e1c419f14e1dfd650b356ec7954c948376b0937 100644 --- a/test/fuzz_test/cmuninstallappcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmuninstallappcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,20 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmUninstallAppCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmuninstallappcert_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmuninstallappcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmuninstallappcert_fuzzer.cpp", - ] + sources = [ "cmuninstallappcert_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmuninstallappcert_fuzzer/cmuninstallappcert_fuzzer.cpp b/test/fuzz_test/cmuninstallappcert_fuzzer/cmuninstallappcert_fuzzer.cpp index 5467aad56864aec9168593747818a7093dc23fc7..aecdd9cb833576e4614f85ddbf8f89309cae5e94 100644 --- a/test/fuzz_test/cmuninstallappcert_fuzzer/cmuninstallappcert_fuzzer.cpp +++ b/test/fuzz_test/cmuninstallappcert_fuzzer/cmuninstallappcert_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -44,7 +43,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmUninstallAppCert(&rmKeyUri, store); CmFree(myData); diff --git a/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/BUILD.gn b/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/BUILD.gn index b54b6828244dbfcf88e01558b4fb22ae30cdffdc..cf009a3ce129fa1e42182424dc8fc4700c5e1bb2 100644 --- a/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,19 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmUninstallUserTrustedCertFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmuninstallusertrustedcert_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmuninstallusertrustedcert_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmuninstallusertrustedcert_fuzzer.cpp", - ] + sources = [ "cmuninstallusertrustedcert_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/cmuninstallusertrustedcert_fuzzer.cpp b/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/cmuninstallusertrustedcert_fuzzer.cpp index be583d8eb529d0216f0e3935cd67f584493a17ad..5b05598fe96b8a1346178d3f1f8b301fc06cbd3a 100644 --- a/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/cmuninstallusertrustedcert_fuzzer.cpp +++ b/test/fuzz_test/cmuninstallusertrustedcert_fuzzer/cmuninstallusertrustedcert_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -37,7 +36,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmUninstallUserTrustedCert(&rmUserUri); CmFree(myData); return true; diff --git a/test/fuzz_test/cmupdate_fuzzer/BUILD.gn b/test/fuzz_test/cmupdate_fuzzer/BUILD.gn index 58af3ed27a52fbc2a69e8116c6d78a10bb7a67d1..29fec0d5a48f8667d9e3b07c11f6f90847f8ee2f 100644 --- a/test/fuzz_test/cmupdate_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmupdate_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,25 +20,19 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmUpdateFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmupdate_fuzzer" + fuzz_config_file = "${cert_manager_root_dir}/test/fuzz_test/cmupdate_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmupdate_fuzzer.cpp", - ] + sources = [ "cmupdate_fuzzer.cpp" ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmupdate_fuzzer/cmupdate_fuzzer.cpp b/test/fuzz_test/cmupdate_fuzzer/cmupdate_fuzzer.cpp index 8ccdb122eda2e779cb1a1953d66835dd8976ea90..34a5c074a7cdd5a6edb1124036386ed4c7c914e1 100644 --- a/test/fuzz_test/cmupdate_fuzzer/cmupdate_fuzzer.cpp +++ b/test/fuzz_test/cmupdate_fuzzer/cmupdate_fuzzer.cpp @@ -17,7 +17,6 @@ #include "cert_manager_api.h" #include "cm_fuzz_test_common.h" -#include "cm_test_common.h" using namespace CmFuzzTest; namespace OHOS { @@ -46,7 +45,7 @@ namespace OHOS { return false; } - CertmanagerTest::SetATPermission(); + SetATPermission(); (void)CmUpdate(&upHandle, &inData); CmFree(myData); diff --git a/test/fuzz_test/cmusertrustedstore_fuzzer/BUILD.gn b/test/fuzz_test/cmusertrustedstore_fuzzer/BUILD.gn index 543075c19c43e166cf0dced5d88325808d7195d7..d3c26e88635bd3fc91585505d94bc3f149b45afd 100644 --- a/test/fuzz_test/cmusertrustedstore_fuzzer/BUILD.gn +++ b/test/fuzz_test/cmusertrustedstore_fuzzer/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/config/features.gni") import("//build/test.gni") @@ -19,29 +20,24 @@ module_output_path = "certificate_manager/certificate_manager" ##############################fuzztest########################################## ohos_fuzztest("CmUserTrustedStoreFuzzTest") { module_out_path = module_output_path - fuzz_config_file = "../../../test/fuzz_test/cmusertrustedstore_fuzzer" + fuzz_config_file = + "${cert_manager_root_dir}/test/fuzz_test/cmusertrustedstore_fuzzer" - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - "../../../services/cert_manager_standard/cert_manager_service/main/os_dependency/idl/cm_ipc", - "../../../services/cert_manager_standard/cert_manager_engine/main/core/include", - "../../../test/unittest/include", - ] cflags = [ "-g", "-O0", "-Wno-unused-variable", "-fno-omit-frame-pointer", ] - sources = [ - "../../../test/unittest/src/cm_test_common.cpp", - "cmusertrustedstore_fuzzer.cpp", - ] + sources = [ "cmusertrustedstore_fuzzer.cpp" ] deps = [ - "../../../services/cert_manager_standard:cert_manager_service", - "../../../test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/services/cert_manager_standard:cert_manager_service", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_engine/main/core:cert_manager_engine_core_standard", + "${cert_manager_root_dir}/services/cert_manager_standard/cert_manager_service/main/os_dependency/idl:libcm_service_idl_standard_static", + "${cert_manager_root_dir}/test/fuzz_test/fuzz_test_common:libcert_manager_fuzz_test_common_static", ] external_deps = [ "access_token:libaccesstoken_sdk", diff --git a/test/fuzz_test/cmusertrustedstore_fuzzer/cmusertrustedstore_fuzzer.cpp b/test/fuzz_test/cmusertrustedstore_fuzzer/cmusertrustedstore_fuzzer.cpp index a4a2d9749cc8212b5971949bc84236960e6c3a0c..5cbb136413b32d254ddf2313e6ba49ff03a05fe8 100644 --- a/test/fuzz_test/cmusertrustedstore_fuzzer/cmusertrustedstore_fuzzer.cpp +++ b/test/fuzz_test/cmusertrustedstore_fuzzer/cmusertrustedstore_fuzzer.cpp @@ -17,15 +17,16 @@ #include "cm_fuzz_test_common.h" #include "cert_manager_api.h" -#include "cm_test_common.h" #include "cm_cert_data_user.h" #include "cm_ipc_client_serialization.h" #include "cm_ipc_service.h" #include "cm_param.h" #include "cert_manager_status.h" +#include "cm_type.h" using namespace CmFuzzTest; namespace OHOS { + constexpr uint32_t TEST_USERID = 100; constexpr uint32_t MIN_DATA_USE_TIME = 10; static bool InstallUserCert(uint8_t *tmpData, uint32_t *remainSize, uint32_t *offset, struct CmBlob *keyUri) { @@ -201,7 +202,7 @@ namespace OHOS { uint32_t remainSize = static_cast(size); uint32_t offset = 0; - CertmanagerTest::SetATPermission(); + SetATPermission(); bool ret = false; uint8_t keyUriData[] = "1d3472b9.0"; diff --git a/test/fuzz_test/fuzz_test_common/BUILD.gn b/test/fuzz_test/fuzz_test_common/BUILD.gn index c50648191b9761ed190f270a1cc9938e2464eb57..b50c4e126069e902cbada5b225add2364b04efac 100644 --- a/test/fuzz_test/fuzz_test_common/BUILD.gn +++ b/test/fuzz_test/fuzz_test_common/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/ohos.gni") config("cert_manager_config") { @@ -21,24 +22,21 @@ ohos_static_library("libcert_manager_fuzz_test_common_static") { subsystem_name = "security" part_name = "certificate_manager" public_configs = [ ":cert_manager_config" ] - include_dirs = [ - "../../../frameworks/cert_manager_standard/main/common/include", - "../../../frameworks/cert_manager_standard/main/os_dependency/cm_ipc/include", - "../../../interfaces/innerkits/cert_manager_standard/main/include", - ] + sources = [ "src/cm_fuzz_test_common.cpp" ] cflags_cc = [ "-Wall", "-Werror", ] - defines = [ - "L2_STANDARD", - "_CM_LOG_ENABLE_", - ] deps = [ - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/common:libcert_manager_common_standard_static", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main/os_dependency:libcert_manager_ipc_client_static", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] external_deps = [ + "access_token:libaccesstoken_sdk", + "access_token:libnativetoken", + "access_token:libtoken_setproc", "c_utils:utils", "ipc:ipc_core", ] diff --git a/test/fuzz_test/fuzz_test_common/include/cm_cert_data_rsa.h b/test/fuzz_test/fuzz_test_common/include/cm_cert_data_rsa.h new file mode 100644 index 0000000000000000000000000000000000000000..660ecd6ab9d8cde70909adb7a4977ab6cdfe85d9 --- /dev/null +++ b/test/fuzz_test/fuzz_test_common/include/cm_cert_data_rsa.h @@ -0,0 +1,211 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef CM_CERT_DATA_RSA_H +#define CM_CERT_DATA_RSA_H + +static const uint8_t g_certPwd[] = "123456"; +static const uint8_t g_rsa2048P12CertInfo[] = { + 0x30, 0x82, 0x0b, 0xc1, 0x02, 0x01, 0x03, 0x30, 0x82, 0x0b, 0x87, 0x06, 0x09, 0x2a, 0x86, 0x48, + 0x86, 0xf7, 0x0d, 0x01, 0x07, 0x01, 0xa0, 0x82, 0x0b, 0x78, 0x04, 0x82, 0x0b, 0x74, 0x30, 0x82, + 0x0b, 0x70, 0x30, 0x82, 0x06, 0x27, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x07, + 0x06, 0xa0, 0x82, 0x06, 0x18, 0x30, 0x82, 0x06, 0x14, 0x02, 0x01, 0x00, 0x30, 0x82, 0x06, 0x0d, + 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x07, 0x01, 0x30, 0x1c, 0x06, 0x0a, 0x2a, + 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x0c, 0x01, 0x03, 0x30, 0x0e, 0x04, 0x08, 0x1a, 0x8f, 0xc1, + 0xd1, 0xda, 0x6c, 0xd1, 0xa9, 0x02, 0x02, 0x08, 0x00, 0x80, 0x82, 0x05, 0xe0, 0xd0, 0x2f, 0x2d, + 0x52, 0x09, 0x86, 0x55, 0x53, 0xf0, 0x49, 0x8f, 0x00, 0xa1, 0x4d, 0x21, 0xc8, 0xb4, 0xad, 0x27, + 0x12, 0x44, 0xab, 0x4d, 0x10, 0x14, 0xe3, 0x3c, 0x9a, 0x05, 0x77, 0x51, 0x90, 0x4a, 0x3a, 0x8a, + 0x09, 0xa9, 0x4b, 0x36, 0x50, 0x60, 0x22, 0x4b, 0x77, 0x12, 0x5c, 0x2f, 0x60, 0xd3, 0xd9, 0x30, + 0x94, 0x4d, 0x9e, 0x81, 0xc3, 0xe9, 0x9d, 0xd9, 0x47, 0xb3, 0x54, 0xa2, 0x9a, 0x8f, 0xe7, 0x58, + 0x95, 0xd7, 0x48, 0x87, 0xc4, 0x40, 0xad, 0x9a, 0x42, 0x1d, 0x36, 0xb7, 0x48, 0xbc, 0x70, 0x8c, + 0x84, 0xcb, 0x3c, 0x02, 0x25, 0x9f, 0xfe, 0x2c, 0x4a, 0x76, 0xb1, 0x27, 0x94, 0x8f, 0xb0, 0x07, + 0xf0, 0xc0, 0x00, 0x3a, 0x69, 0x16, 0xe1, 0x63, 0x0c, 0xe5, 0x92, 0xc2, 0x7d, 0x99, 0xd9, 0x11, + 0x40, 0xd8, 0x64, 0xab, 0x13, 0xda, 0x73, 0x7b, 0x12, 0x53, 0xb1, 0x0b, 0x0c, 0x67, 0x81, 0xe1, + 0xf5, 0x59, 0x3a, 0xc7, 0xe0, 0xe9, 0xda, 0x12, 0xc7, 0x2b, 0xab, 0x3d, 0xbc, 0x10, 0x3d, 0x1a, + 0x88, 0xc7, 0x1d, 0x31, 0x5f, 0x39, 0x63, 0x51, 0x8b, 0x11, 0x99, 0x05, 0xf9, 0x40, 0x42, 0x27, + 0xad, 0x75, 0x6f, 0xe2, 0x2d, 0x66, 0x28, 0x97, 0x7c, 0x6f, 0xf4, 0xfc, 0x95, 0xaa, 0x67, 0x81, + 0xd8, 0x15, 0x3c, 0xf4, 0x7b, 0x97, 0x08, 0x7b, 0x1b, 0x8c, 0xd3, 0x45, 0x8b, 0x96, 0x54, 0x2c, + 0xb1, 0x00, 0x87, 0x59, 0x5c, 0x94, 0x78, 0x29, 0xaa, 0x7b, 0x9c, 0x5c, 0x61, 0xff, 0xcc, 0x32, + 0x14, 0x4e, 0xc3, 0x1b, 0x96, 0xad, 0x4c, 0xde, 0x49, 0xe4, 0x8e, 0x63, 0x52, 0x5d, 0x24, 0x9c, + 0xd3, 0x45, 0xed, 0x98, 0xe1, 0x6e, 0x15, 0xcd, 0x76, 0xa1, 0x0b, 0x67, 0x84, 0x79, 0xbc, 0xb0, + 0x9c, 0x3e, 0xff, 0x48, 0xf9, 0xc1, 0xab, 0x76, 0xc4, 0xe4, 0x61, 0x84, 0x7a, 0xb0, 0x88, 0xa2, + 0x14, 0x0a, 0xdc, 0x01, 0x47, 0xff, 0xf6, 0x27, 0x46, 0x1e, 0x37, 0xe5, 0x5e, 0x9a, 0x55, 0x49, + 0x67, 0x7b, 0x04, 0xba, 0xef, 0x89, 0x32, 0x8a, 0x2b, 0x72, 0x8c, 0xb9, 0xba, 0x19, 0xfa, 0x09, + 0x7f, 0x24, 0xea, 0xbd, 0xcc, 0xa5, 0x3c, 0xa8, 0xc6, 0x30, 0x0f, 0xcf, 0xd2, 0xf3, 0x10, 0xed, + 0x5c, 0x7d, 0xbb, 0x0a, 0x6a, 0x27, 0x60, 0x32, 0x9a, 0xa2, 0xfb, 0x2c, 0x38, 0xd2, 0x62, 0x92, + 0x5d, 0x77, 0xe8, 0xb8, 0x3a, 0x64, 0xfe, 0xb8, 0x2f, 0x69, 0xc4, 0xdd, 0x78, 0xdd, 0x92, 0xeb, + 0xc3, 0x08, 0xc2, 0x05, 0xef, 0xa6, 0x9c, 0x12, 0xd5, 0x48, 0x27, 0xfb, 0x19, 0x66, 0x66, 0x24, + 0x52, 0x47, 0xf1, 0x7c, 0xad, 0xc9, 0xb8, 0x1a, 0xd0, 0x2d, 0x40, 0xe9, 0x36, 0xce, 0x9e, 0x07, + 0x06, 0xd0, 0xe3, 0x5d, 0x98, 0xfb, 0x67, 0x1a, 0xd1, 0x62, 0x35, 0x03, 0xe8, 0x34, 0xf0, 0xfd, + 0x24, 0xe4, 0x06, 0x52, 0x03, 0xda, 0x8e, 0x68, 0x6d, 0x74, 0xfd, 0xda, 0x9b, 0xca, 0x8e, 0x52, + 0x71, 0x9c, 0x14, 0x05, 0x10, 0x61, 0x63, 0xa4, 0x53, 0x72, 0x4a, 0xda, 0x15, 0xf8, 0x0a, 0x56, + 0x89, 0x00, 0xdd, 0x87, 0xf5, 0xdd, 0x69, 0xd6, 0x6c, 0x89, 0x15, 0x1a, 0x1f, 0x48, 0xd6, 0x2c, + 0x1e, 0x4f, 0x23, 0x06, 0x6e, 0x34, 0x0d, 0x4e, 0xe3, 0x17, 0x40, 0x22, 0x7a, 0x68, 0x37, 0xad, + 0x05, 0xdb, 0x99, 0xde, 0x1a, 0x47, 0x2f, 0xb1, 0x9e, 0x7e, 0xdb, 0xad, 0x69, 0x06, 0x25, 0xd5, + 0xd9, 0x8e, 0xaf, 0xe2, 0xaa, 0x5a, 0x9a, 0x79, 0xd6, 0xeb, 0x02, 0x10, 0xf8, 0x72, 0x78, 0x4e, + 0x51, 0x2a, 0x53, 0x55, 0xb9, 0xd3, 0x7c, 0x31, 0x42, 0xff, 0x59, 0x39, 0x92, 0xd6, 0xec, 0x46, + 0x2d, 0x4f, 0xea, 0xf1, 0x0e, 0x83, 0x57, 0x55, 0x7b, 0xf1, 0x43, 0x47, 0x82, 0x10, 0x0d, 0x72, + 0xa2, 0x40, 0x2e, 0xf7, 0x2d, 0xcb, 0x80, 0x5b, 0x8a, 0x02, 0x5b, 0x71, 0xd9, 0xa5, 0x55, 0xea, + 0x41, 0x3f, 0x15, 0x9b, 0xee, 0x92, 0x4a, 0x3e, 0x87, 0x2e, 0xc3, 0xba, 0x71, 0x81, 0x57, 0xb9, + 0x7e, 0xb3, 0xd7, 0x52, 0x05, 0x91, 0x57, 0x87, 0x16, 0x48, 0x36, 0xdb, 0x4b, 0x45, 0x32, 0xaf, + 0x22, 0xc0, 0x3b, 0xc8, 0x90, 0xce, 0x53, 0xf3, 0x85, 0x64, 0xa3, 0x04, 0xe7, 0xfc, 0xa8, 0xc1, + 0x12, 0x77, 0x4a, 0x22, 0xd6, 0xfb, 0x01, 0x8f, 0x78, 0xd3, 0x2d, 0x33, 0x4c, 0xc8, 0x9d, 0x89, + 0xd7, 0x1f, 0xf2, 0x50, 0xf7, 0x94, 0x13, 0xe7, 0x3b, 0x4e, 0x36, 0x56, 0x93, 0x1a, 0xc7, 0x7e, + 0x4f, 0x92, 0xa2, 0xae, 0x4d, 0x9d, 0xbc, 0x03, 0xd4, 0x07, 0x76, 0x38, 0xc1, 0x59, 0x59, 0x3d, + 0xc9, 0xcf, 0xdd, 0x43, 0xcc, 0x82, 0xdb, 0xc1, 0x85, 0xbe, 0x3e, 0xab, 0x18, 0xd7, 0x7d, 0x17, + 0xc9, 0x9c, 0x9c, 0x81, 0x5b, 0xa8, 0x03, 0x04, 0x62, 0xc4, 0xd8, 0x78, 0x95, 0xd0, 0xfa, 0x8e, + 0x71, 0x43, 0x30, 0x3b, 0xdd, 0x64, 0x54, 0xb5, 0xd2, 0xa6, 0x0d, 0x8a, 0x73, 0x97, 0x46, 0x81, + 0xd6, 0x61, 0x61, 0x41, 0x07, 0xed, 0x23, 0x32, 0xd2, 0x20, 0x18, 0x27, 0x2b, 0x89, 0x8e, 0x3b, + 0xd7, 0x6e, 0xed, 0x50, 0x3f, 0xcb, 0x27, 0xab, 0xb5, 0x26, 0x9b, 0x9e, 0xe4, 0xe3, 0x2a, 0x88, + 0xf5, 0x4f, 0xf7, 0xb8, 0xc4, 0x11, 0xb0, 0x0c, 0xd7, 0x85, 0x3a, 0xc9, 0x65, 0x06, 0x43, 0xbf, + 0x66, 0x19, 0xf2, 0x2a, 0xed, 0x36, 0xf0, 0xf6, 0x39, 0x78, 0xd2, 0x4b, 0xe6, 0x20, 0x64, 0x66, + 0xe2, 0x87, 0x73, 0x5d, 0x09, 0x98, 0xe5, 0x06, 0xc1, 0xc7, 0xdf, 0x47, 0x12, 0x3a, 0xe0, 0xd6, + 0x7f, 0xb4, 0x29, 0x46, 0x3e, 0x49, 0x8f, 0x3d, 0xea, 0xd6, 0x0b, 0x36, 0xa3, 0xd2, 0xa3, 0x6b, + 0x9c, 0x0c, 0xe0, 0x47, 0x58, 0xbf, 0xfd, 0x42, 0xa2, 0x94, 0xe9, 0xd1, 0xfd, 0xc4, 0xcc, 0x68, + 0x32, 0x3a, 0x1e, 0xd2, 0x6f, 0x6b, 0x48, 0xe1, 0x48, 0xe0, 0x20, 0x23, 0xfc, 0x7c, 0xf9, 0x30, + 0xb1, 0xb0, 0x0e, 0x3c, 0x14, 0xf6, 0x73, 0x17, 0x1c, 0x71, 0x4c, 0xd9, 0x1d, 0x16, 0xcf, 0x31, + 0x6d, 0x79, 0xd6, 0x99, 0x66, 0xd5, 0x7f, 0xe7, 0xc2, 0x0d, 0xb8, 0xcb, 0xdb, 0x5e, 0x26, 0x95, + 0x35, 0xf1, 0x57, 0x5c, 0xec, 0xcd, 0xf0, 0xdb, 0xb4, 0x18, 0x7f, 0x04, 0x22, 0x50, 0xbe, 0xb3, + 0x04, 0x5c, 0xcd, 0x3a, 0x62, 0xe2, 0x3b, 0x5f, 0xa1, 0xa0, 0xd8, 0xd1, 0xf0, 0x45, 0x43, 0xf4, + 0xee, 0x27, 0x4f, 0x45, 0xb7, 0x06, 0x46, 0x53, 0x65, 0x49, 0xca, 0x4c, 0x12, 0xc9, 0x5b, 0x05, + 0xb6, 0xf6, 0x26, 0x5d, 0x90, 0x4a, 0x9b, 0x50, 0xaf, 0x65, 0x92, 0x13, 0xfc, 0xc2, 0x47, 0xff, + 0xe8, 0xb6, 0x4e, 0xd2, 0xa7, 0x48, 0x8c, 0xbe, 0x3a, 0x13, 0x2e, 0xe6, 0xb9, 0xb7, 0x29, 0x2d, + 0x30, 0xaa, 0x80, 0xcf, 0x74, 0x77, 0x14, 0xb2, 0x78, 0x52, 0x25, 0xf6, 0x97, 0x99, 0x40, 0x9a, + 0xea, 0xce, 0x92, 0x68, 0xb9, 0x5c, 0x9e, 0xf4, 0xbf, 0xd9, 0xd4, 0x43, 0x7d, 0xf6, 0x10, 0x05, + 0x9d, 0xa4, 0xe2, 0x8f, 0x8e, 0x2e, 0xce, 0x07, 0x57, 0x7b, 0xa2, 0xb2, 0x90, 0xd7, 0xd5, 0x66, + 0x12, 0xaa, 0x27, 0xce, 0xcb, 0x0a, 0xe9, 0x59, 0x47, 0xbd, 0x3e, 0x65, 0xd9, 0x83, 0xa2, 0x65, + 0x27, 0x06, 0x7f, 0x04, 0xc3, 0x35, 0xba, 0x55, 0x3d, 0x68, 0xc7, 0x0c, 0xa2, 0x50, 0xc3, 0xb1, + 0x66, 0x65, 0x7f, 0x74, 0xda, 0x05, 0x11, 0x89, 0xaf, 0xf2, 0x04, 0x8b, 0x60, 0x1d, 0xbf, 0x06, + 0x84, 0x7c, 0x1d, 0xcd, 0xcb, 0x5e, 0xf3, 0xfa, 0xfd, 0x1a, 0xb0, 0x1f, 0xc1, 0x6e, 0x91, 0x67, + 0xaa, 0x05, 0x9e, 0x2d, 0x6f, 0x4c, 0xdb, 0xab, 0x99, 0x83, 0x81, 0x80, 0x21, 0xbd, 0x17, 0x50, + 0x59, 0x3b, 0x16, 0x3a, 0x66, 0x2b, 0xd9, 0xab, 0x3f, 0x4a, 0xb1, 0xa3, 0x56, 0x9e, 0xbd, 0xd3, + 0x4a, 0x85, 0x63, 0x58, 0xa5, 0xbb, 0xdf, 0x64, 0x79, 0x43, 0x8d, 0x78, 0xa3, 0x88, 0x8e, 0x0d, + 0xbe, 0x1a, 0x14, 0xc2, 0xcf, 0x48, 0x0c, 0x55, 0xa8, 0xd6, 0xea, 0xdb, 0x5d, 0x50, 0x90, 0x84, + 0xfd, 0xe9, 0xd1, 0x90, 0xfe, 0xeb, 0xd8, 0xd1, 0x9c, 0xbe, 0xd5, 0x92, 0xd8, 0x71, 0x58, 0x58, + 0xc1, 0xbf, 0x4c, 0xe2, 0xa9, 0xd5, 0xc1, 0xce, 0x4a, 0xec, 0xde, 0xb3, 0x0a, 0xa2, 0xc0, 0x00, + 0xa2, 0xfa, 0x6a, 0x83, 0x9b, 0xae, 0x6e, 0x1f, 0x35, 0x8b, 0xcf, 0xcc, 0x3f, 0xdc, 0xac, 0x68, + 0x2a, 0x50, 0x65, 0x56, 0xb8, 0x2c, 0x92, 0xff, 0xc2, 0x1a, 0xd4, 0x4e, 0x12, 0x3d, 0x40, 0x67, + 0x62, 0x75, 0xcd, 0x4f, 0x1b, 0x45, 0xff, 0xbf, 0x46, 0xf8, 0xa2, 0xd1, 0xd2, 0xc9, 0xe6, 0xb6, + 0x26, 0x55, 0xd9, 0x55, 0xc9, 0x7b, 0xe4, 0xa9, 0x69, 0x43, 0x13, 0xdb, 0x7d, 0x8f, 0xaa, 0x02, + 0x15, 0x24, 0x6d, 0x80, 0x1f, 0x42, 0x7b, 0x32, 0x76, 0xbd, 0x0c, 0xcd, 0x3c, 0x5e, 0x55, 0x4f, + 0x49, 0xf1, 0x28, 0x6d, 0xc1, 0x36, 0x39, 0x93, 0x57, 0xf5, 0x83, 0xc2, 0x9e, 0xbb, 0x7b, 0x05, + 0xbe, 0x89, 0xab, 0x80, 0x93, 0xf0, 0x9c, 0xc3, 0x97, 0xcf, 0x03, 0x25, 0xb5, 0x2e, 0x6b, 0x18, + 0xe8, 0x72, 0x46, 0x0c, 0x8f, 0xc0, 0x27, 0x52, 0x31, 0x2c, 0x20, 0x96, 0x30, 0x29, 0x66, 0xa5, + 0x70, 0x9f, 0xbf, 0xfa, 0xb3, 0x4c, 0xfd, 0xd1, 0x73, 0xf4, 0x3c, 0x29, 0x74, 0xac, 0xa9, 0xc0, + 0xb4, 0x16, 0x72, 0x4a, 0x7f, 0x07, 0xe3, 0xfe, 0xd5, 0xa0, 0x3f, 0x47, 0x86, 0x59, 0x10, 0xbc, + 0xff, 0x0d, 0x0e, 0xdc, 0xc9, 0x6d, 0x8f, 0xb0, 0xc7, 0x78, 0xd7, 0xa2, 0x79, 0xdd, 0x6b, 0x10, + 0x8b, 0x9f, 0x3c, 0xba, 0x14, 0xe5, 0x3a, 0xf1, 0x1f, 0xb5, 0x84, 0xc1, 0x6a, 0xd5, 0xad, 0x59, + 0xe8, 0x15, 0x22, 0x33, 0xb6, 0x79, 0x6d, 0xe1, 0x59, 0xb9, 0xa7, 0x0f, 0x4c, 0xcc, 0x5f, 0x2a, + 0xbd, 0xab, 0x0e, 0x45, 0x47, 0x0c, 0x8d, 0x8a, 0xe3, 0xfb, 0x61, 0x64, 0x51, 0x36, 0x87, 0x04, + 0xc7, 0xd8, 0x16, 0x46, 0x9f, 0xa4, 0x35, 0xd0, 0xa6, 0x1a, 0x85, 0xf0, 0x91, 0x34, 0xfe, 0xe7, + 0x0b, 0xd2, 0xd7, 0x91, 0x46, 0xd0, 0xfe, 0xa9, 0xfb, 0xd7, 0xf7, 0x4d, 0x81, 0x95, 0x1b, 0x96, + 0x51, 0x21, 0xa5, 0xdc, 0xee, 0x25, 0xbe, 0xb2, 0x7d, 0x3f, 0x7b, 0x35, 0x05, 0x92, 0x30, 0x5d, + 0x2d, 0x57, 0x53, 0x45, 0xa7, 0x51, 0xab, 0x09, 0x71, 0xe0, 0x01, 0x96, 0x1c, 0x9b, 0xa5, 0x2d, + 0xcf, 0xff, 0x0e, 0x80, 0xf5, 0xa4, 0x3c, 0x52, 0xa6, 0xf3, 0x16, 0x96, 0xa6, 0x64, 0xac, 0x7e, + 0xaf, 0xb7, 0xc6, 0x34, 0xfd, 0xf7, 0x0a, 0x10, 0xe6, 0x2b, 0xda, 0x10, 0xdd, 0xb2, 0x44, 0x8d, + 0x95, 0x71, 0xbf, 0xb1, 0xf3, 0x91, 0xac, 0xc6, 0x93, 0xe1, 0x91, 0x62, 0x05, 0x90, 0x38, 0x33, + 0xcf, 0x36, 0xff, 0xa5, 0x82, 0x4e, 0x14, 0x78, 0x33, 0x40, 0x18, 0x22, 0xd6, 0x60, 0x6b, 0x0b, + 0x97, 0x4f, 0x2d, 0xd0, 0x36, 0x82, 0xb3, 0x1a, 0xe8, 0xd7, 0x93, 0xff, 0x19, 0xd1, 0x74, 0xd2, + 0x29, 0xe1, 0x97, 0x60, 0x09, 0x48, 0xef, 0xc9, 0x61, 0xae, 0x3b, 0x4f, 0xd4, 0x30, 0x82, 0x05, + 0x41, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x07, 0x01, 0xa0, 0x82, 0x05, 0x32, + 0x04, 0x82, 0x05, 0x2e, 0x30, 0x82, 0x05, 0x2a, 0x30, 0x82, 0x05, 0x26, 0x06, 0x0b, 0x2a, 0x86, + 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x0c, 0x0a, 0x01, 0x02, 0xa0, 0x82, 0x04, 0xee, 0x30, 0x82, 0x04, + 0xea, 0x30, 0x1c, 0x06, 0x0a, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x0c, 0x01, 0x03, 0x30, + 0x0e, 0x04, 0x08, 0x2b, 0xef, 0x2d, 0x9b, 0x33, 0xf6, 0x82, 0x62, 0x02, 0x02, 0x08, 0x00, 0x04, + 0x82, 0x04, 0xc8, 0x59, 0x60, 0xea, 0x6e, 0x23, 0x9e, 0x82, 0x1c, 0x0a, 0x8e, 0xbd, 0x09, 0x94, + 0x98, 0x5e, 0x1a, 0x1b, 0x4a, 0xfe, 0x86, 0x2d, 0xf4, 0x54, 0xaa, 0x17, 0xba, 0xf1, 0xf1, 0x58, + 0x12, 0xa2, 0x81, 0x1c, 0x29, 0xe7, 0x94, 0x78, 0xbc, 0x68, 0x07, 0x8f, 0xdb, 0x3f, 0xab, 0xa7, + 0xa7, 0x73, 0x6d, 0xea, 0x25, 0x6f, 0x97, 0xc8, 0xba, 0x73, 0xcc, 0x1e, 0xa0, 0x73, 0x18, 0x14, + 0xe8, 0xae, 0xe0, 0x5d, 0x3c, 0x9b, 0x9e, 0xad, 0xf4, 0x46, 0xeb, 0xa4, 0x73, 0xe2, 0xb5, 0x16, + 0x8f, 0x70, 0x35, 0xe7, 0x84, 0x2d, 0x02, 0xc7, 0xc3, 0x9d, 0x1e, 0x91, 0xba, 0x47, 0xfe, 0xf2, + 0x43, 0xc2, 0x9e, 0xeb, 0x68, 0x87, 0xeb, 0x3b, 0x9a, 0x59, 0x87, 0xf6, 0x2a, 0x1e, 0xf0, 0x07, + 0x13, 0xd0, 0xc0, 0x0f, 0xe7, 0x41, 0xb7, 0x5e, 0xb2, 0x2d, 0x12, 0xd2, 0x99, 0x6f, 0x90, 0x29, + 0xf2, 0x96, 0x9e, 0xfc, 0x00, 0x75, 0xab, 0x2f, 0x87, 0x49, 0x0e, 0xe6, 0xaf, 0x46, 0xe2, 0x69, + 0x88, 0x8f, 0xd3, 0x45, 0xda, 0xcc, 0x4c, 0xf6, 0xfd, 0xaa, 0xda, 0x83, 0x77, 0xee, 0xf9, 0x4a, + 0xa9, 0x31, 0x50, 0x8d, 0x8d, 0x86, 0x89, 0xb2, 0xf3, 0xcf, 0x9b, 0xba, 0xef, 0xa2, 0x09, 0x7c, + 0x72, 0x49, 0xf2, 0xf3, 0x86, 0xa2, 0x78, 0x3e, 0xbf, 0x61, 0x2a, 0x18, 0x96, 0xa2, 0x17, 0xe2, + 0x63, 0x75, 0xfd, 0xf0, 0x82, 0xd6, 0x36, 0x5b, 0x44, 0xf3, 0x9a, 0x96, 0x29, 0x1c, 0x50, 0x91, + 0x20, 0xbb, 0x7b, 0x2d, 0x96, 0xe1, 0x0e, 0xc6, 0xce, 0x01, 0x40, 0xe8, 0x22, 0xc5, 0xac, 0x3f, + 0xfa, 0xd0, 0xac, 0xc9, 0x4e, 0x1e, 0x20, 0x8a, 0xc6, 0x40, 0xed, 0x6b, 0xb6, 0xc4, 0xc1, 0x43, + 0xec, 0x3c, 0xfe, 0xb7, 0x50, 0x19, 0x09, 0x1b, 0x21, 0x83, 0x63, 0x93, 0x18, 0xbd, 0x73, 0x42, + 0x73, 0x25, 0x4f, 0xda, 0xdb, 0x4f, 0xf9, 0xba, 0x11, 0xf3, 0x91, 0xc0, 0x5b, 0x9d, 0x93, 0xfd, + 0x94, 0x89, 0xb6, 0xea, 0x90, 0x15, 0xe5, 0xf0, 0xe8, 0xd8, 0x31, 0x2c, 0xe0, 0x92, 0x6a, 0xb7, + 0xe3, 0x43, 0x51, 0xfc, 0xa0, 0x20, 0x2b, 0x5c, 0xbb, 0xf0, 0x22, 0x2b, 0xa5, 0x00, 0x40, 0xe9, + 0x0d, 0x64, 0xf0, 0xe7, 0xca, 0x29, 0x85, 0xfc, 0x89, 0x38, 0x03, 0xaa, 0x0c, 0xad, 0x71, 0xe6, + 0xc9, 0xde, 0x42, 0x5e, 0x97, 0x74, 0x35, 0x6a, 0x88, 0x94, 0x99, 0xd5, 0xbd, 0x91, 0xa5, 0x92, + 0x35, 0x1d, 0xf4, 0x11, 0xf7, 0x7e, 0x47, 0x96, 0xe4, 0x2f, 0x85, 0x75, 0x3a, 0x16, 0x2a, 0x45, + 0x96, 0xd7, 0xb1, 0x8f, 0xd5, 0x64, 0x87, 0x5d, 0xd0, 0x44, 0x1e, 0xd6, 0x67, 0x0c, 0xc6, 0xdb, + 0xb4, 0x0a, 0xe4, 0x18, 0x0c, 0x12, 0x73, 0xb5, 0x4f, 0x44, 0xc8, 0xd6, 0x97, 0x8b, 0x99, 0x19, + 0x66, 0x55, 0x08, 0xcb, 0xa0, 0xca, 0x9e, 0x09, 0x0f, 0xe1, 0x8b, 0xd7, 0xa1, 0x12, 0x54, 0x46, + 0x2d, 0x09, 0x44, 0x27, 0x30, 0xcd, 0x02, 0xcc, 0x88, 0x8f, 0x69, 0x22, 0xed, 0x31, 0x25, 0x14, + 0x5f, 0x37, 0x5f, 0xce, 0x91, 0x95, 0x30, 0x07, 0x32, 0xaa, 0x2e, 0x55, 0x9a, 0xc4, 0x33, 0xab, + 0xd0, 0x55, 0x3d, 0x04, 0xe3, 0x84, 0x0c, 0xf1, 0xe4, 0xe6, 0x52, 0x39, 0x0e, 0x22, 0x8b, 0x4f, + 0xf3, 0x5c, 0xc2, 0xc7, 0xc3, 0xd4, 0xc1, 0x5c, 0x45, 0x83, 0xee, 0x37, 0x3e, 0xa7, 0xd9, 0xa2, + 0x9c, 0x5b, 0x4b, 0x6b, 0xdf, 0xc5, 0x5c, 0x50, 0x12, 0x1d, 0x6c, 0x73, 0xea, 0xf4, 0xdc, 0x70, + 0x3f, 0x11, 0x70, 0x0e, 0x3d, 0x4d, 0x8c, 0x69, 0xaf, 0x8b, 0x6a, 0x20, 0x75, 0x55, 0xeb, 0x6e, + 0x27, 0x21, 0x5d, 0x9c, 0xdb, 0xbb, 0xf7, 0xf9, 0x3e, 0x81, 0x2f, 0x4f, 0x96, 0xcb, 0x2e, 0xb1, + 0xc3, 0x01, 0x1f, 0xa7, 0x87, 0x43, 0xc8, 0x89, 0xec, 0x5b, 0x41, 0x42, 0x2e, 0x19, 0x0b, 0xdf, + 0x3a, 0x90, 0xaa, 0x98, 0x2f, 0xe9, 0xad, 0x02, 0xf9, 0x96, 0x40, 0x51, 0xdd, 0x4b, 0x8b, 0xe5, + 0xca, 0x84, 0xe2, 0x93, 0xdd, 0xad, 0x43, 0x37, 0x62, 0x14, 0xa1, 0x07, 0x17, 0x5d, 0x71, 0x73, + 0xc0, 0xd8, 0x02, 0x0f, 0x44, 0xcf, 0x5e, 0x6f, 0x55, 0x44, 0x70, 0xa6, 0x22, 0xe7, 0x2d, 0xc3, + 0x2c, 0x44, 0xc3, 0x0e, 0xf1, 0xda, 0x02, 0x57, 0x40, 0x24, 0x36, 0xc8, 0xf9, 0x4f, 0x17, 0x0b, + 0x9b, 0x2a, 0xa8, 0x0d, 0x84, 0xf1, 0x49, 0x3b, 0x6d, 0x23, 0xb9, 0x97, 0x47, 0x2a, 0x0b, 0xc3, + 0x80, 0xe5, 0xdf, 0x4e, 0x1f, 0x94, 0xd1, 0x0e, 0x69, 0xb5, 0xb0, 0xf8, 0xa5, 0x7d, 0x9c, 0x9f, + 0x68, 0x7d, 0x04, 0x18, 0x42, 0x32, 0x72, 0xdc, 0xab, 0xdc, 0xe6, 0xba, 0x09, 0xe8, 0xd4, 0x27, + 0x53, 0x95, 0x9c, 0x39, 0xd5, 0x70, 0x0d, 0x1e, 0xb5, 0xb7, 0x2b, 0x0a, 0x79, 0xc7, 0xd6, 0x0b, + 0xee, 0xea, 0xf8, 0x6f, 0x6a, 0xb1, 0xfc, 0x90, 0x35, 0xce, 0x46, 0x99, 0xfa, 0x88, 0x01, 0x48, + 0xd5, 0x70, 0x26, 0x4c, 0x08, 0x2a, 0x13, 0x60, 0xb0, 0x96, 0x91, 0xa7, 0xc5, 0x05, 0xd3, 0xcd, + 0x5e, 0xcb, 0x9f, 0xa4, 0x5c, 0x29, 0x98, 0xbc, 0xd6, 0x2e, 0x6a, 0xeb, 0xc8, 0xfa, 0x58, 0x45, + 0x79, 0x15, 0x30, 0x98, 0x59, 0x65, 0x30, 0x7f, 0x14, 0x14, 0xbd, 0x27, 0xd1, 0x0c, 0xbc, 0x52, + 0xda, 0x42, 0x09, 0xc5, 0xc4, 0x58, 0xdb, 0x04, 0x22, 0xbd, 0x7a, 0xac, 0x55, 0x94, 0x52, 0x46, + 0x51, 0x32, 0x84, 0x9a, 0xeb, 0xe1, 0xd3, 0x9e, 0x9d, 0x48, 0x3d, 0xd2, 0x21, 0xfa, 0x7d, 0x10, + 0x04, 0x50, 0x06, 0xf0, 0x84, 0xcb, 0x9f, 0x39, 0xbe, 0xec, 0x03, 0x7d, 0x86, 0x85, 0xf5, 0x06, + 0x8c, 0x51, 0x74, 0x13, 0xf1, 0xfa, 0x50, 0xe1, 0x69, 0x23, 0xf6, 0x3e, 0x13, 0xd2, 0xc7, 0x52, + 0x80, 0xe6, 0x41, 0x86, 0x1d, 0x8a, 0xda, 0x3c, 0x3f, 0x90, 0x5c, 0x82, 0x85, 0x8d, 0x8c, 0x64, + 0x2a, 0xeb, 0xb9, 0x23, 0x6c, 0x0a, 0xd3, 0x2b, 0x35, 0xbe, 0xb0, 0x66, 0xd8, 0x1b, 0x45, 0xa1, + 0xb6, 0x67, 0x2d, 0xa6, 0xd6, 0xcd, 0x69, 0x88, 0x57, 0x70, 0xe6, 0xaa, 0x02, 0x3b, 0x84, 0x6a, + 0xb6, 0xa5, 0x91, 0x4a, 0x69, 0x20, 0x01, 0xd7, 0x5d, 0xf2, 0x7b, 0x3e, 0xf2, 0xbb, 0xe4, 0x9e, + 0x3a, 0xc0, 0xaa, 0x72, 0x2d, 0xa6, 0x47, 0x09, 0x2e, 0x0f, 0xf6, 0x9b, 0x8e, 0x7c, 0x41, 0xa6, + 0xc6, 0x10, 0x29, 0xcc, 0x4e, 0xcf, 0x01, 0xd5, 0x93, 0x75, 0x51, 0xb8, 0xd4, 0xec, 0xee, 0x6a, + 0x2f, 0x8b, 0x45, 0x65, 0xe8, 0xf5, 0x3e, 0xbc, 0xf4, 0x59, 0xec, 0x3e, 0x20, 0x18, 0x85, 0x31, + 0x8e, 0x25, 0x59, 0x16, 0x0f, 0xf0, 0x6e, 0xb1, 0x1e, 0x58, 0x83, 0x33, 0x10, 0x0d, 0x52, 0xc3, + 0x8f, 0x7e, 0x09, 0x27, 0xba, 0xd7, 0xf5, 0x8d, 0x79, 0xcf, 0x60, 0x52, 0xa2, 0x03, 0x46, 0xf5, + 0xf8, 0x9d, 0x6d, 0x5f, 0x23, 0x68, 0x7a, 0xb0, 0x2a, 0x55, 0x44, 0xd9, 0x58, 0xfd, 0xd1, 0x2d, + 0xcc, 0x75, 0xa2, 0x90, 0x8e, 0x7f, 0x91, 0x56, 0xa5, 0x3f, 0x62, 0x1a, 0x67, 0xd5, 0xb2, 0xc8, + 0x06, 0x66, 0xa7, 0xf7, 0xeb, 0x0c, 0xe0, 0xb0, 0xb5, 0x28, 0x8d, 0xda, 0x75, 0xd5, 0x03, 0x3e, + 0xc4, 0x4e, 0xd7, 0x6c, 0x7b, 0x28, 0x92, 0x7c, 0xeb, 0xb8, 0x67, 0x1a, 0x0c, 0xc4, 0xed, 0x5f, + 0x50, 0x5a, 0xb6, 0x52, 0xba, 0x9b, 0xe5, 0xcc, 0xb6, 0x78, 0x76, 0x9a, 0xcd, 0x2d, 0x43, 0x56, + 0xa4, 0xe7, 0x97, 0x6c, 0xdc, 0xb2, 0x2c, 0xb4, 0x2c, 0x30, 0x23, 0x1c, 0x51, 0x96, 0xca, 0x0d, + 0xbd, 0xf9, 0x2d, 0x97, 0x3c, 0x84, 0x45, 0x16, 0xcb, 0x25, 0xe2, 0x73, 0x9c, 0x4b, 0xbe, 0x36, + 0x12, 0xb3, 0xd0, 0x76, 0x9e, 0x5c, 0x40, 0xb9, 0x6f, 0x4e, 0x55, 0x1c, 0x87, 0xc4, 0x8d, 0x5a, + 0xda, 0x1b, 0xec, 0xd5, 0x03, 0x7f, 0x58, 0x78, 0xcc, 0xfa, 0xae, 0x0a, 0xb4, 0x3c, 0x50, 0xcd, + 0xa8, 0x7e, 0xfc, 0x17, 0x31, 0xd8, 0xe9, 0x86, 0x60, 0xa9, 0x0b, 0x11, 0x6b, 0xda, 0xfb, 0x6e, + 0x44, 0x62, 0xd8, 0x96, 0x4f, 0x61, 0xdb, 0x62, 0x0d, 0x03, 0xa6, 0x2f, 0x11, 0x91, 0x95, 0x38, + 0xf3, 0x49, 0x94, 0xf0, 0x93, 0x0e, 0xaf, 0xff, 0x28, 0xe6, 0x24, 0xbc, 0xc4, 0x1d, 0x0d, 0xfb, + 0x00, 0xc4, 0x5b, 0xef, 0xda, 0x55, 0x76, 0xbf, 0x52, 0xf9, 0x00, 0xab, 0xd5, 0xef, 0xa5, 0x31, + 0x37, 0x60, 0xcf, 0xad, 0x79, 0x45, 0xef, 0x0f, 0x97, 0xc8, 0x0e, 0x88, 0x61, 0x56, 0x58, 0x3b, + 0xd5, 0x1c, 0xe8, 0xb0, 0x93, 0x02, 0xdf, 0xa5, 0x6c, 0xaf, 0x4b, 0x5e, 0x66, 0x7d, 0xfe, 0xaa, + 0xaf, 0xa0, 0xd4, 0x35, 0xcd, 0x81, 0xa0, 0x71, 0xe4, 0x45, 0x12, 0x24, 0x1e, 0x0d, 0x06, 0x96, + 0x1e, 0x23, 0xa3, 0x39, 0xd8, 0xcc, 0x72, 0xd7, 0xac, 0x72, 0x5c, 0x8c, 0xdf, 0x6c, 0xb4, 0xc4, + 0x2b, 0xbc, 0x1c, 0xeb, 0xbe, 0x1b, 0xbb, 0xf3, 0xbc, 0x45, 0x34, 0xe9, 0x5a, 0x7f, 0x11, 0x61, + 0xd7, 0x61, 0x15, 0x18, 0x0e, 0xf8, 0x8b, 0x23, 0x97, 0xa7, 0x46, 0x31, 0x25, 0x30, 0x23, 0x06, + 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x09, 0x15, 0x31, 0x16, 0x04, 0x14, 0x8b, 0x4e, + 0x13, 0x2a, 0xf1, 0x4d, 0xa3, 0xe9, 0x31, 0x5c, 0x6d, 0xce, 0x5a, 0x09, 0x93, 0x0a, 0xf4, 0x12, + 0x19, 0x7b, 0x30, 0x31, 0x30, 0x21, 0x30, 0x09, 0x06, 0x05, 0x2b, 0x0e, 0x03, 0x02, 0x1a, 0x05, + 0x00, 0x04, 0x14, 0x00, 0x3b, 0x70, 0x95, 0x68, 0xd3, 0xd8, 0x4f, 0x71, 0xd0, 0x7d, 0x41, 0x49, + 0x48, 0xef, 0x88, 0x6d, 0xe0, 0x9d, 0x53, 0x04, 0x08, 0x0e, 0x46, 0xa3, 0xb5, 0x73, 0x88, 0x7c, + 0x22, 0x02, 0x02, 0x08, 0x00 +}; +#endif /* CM_CERT_DATA_RSA_H */ \ No newline at end of file diff --git a/test/fuzz_test/fuzz_test_common/include/cm_cert_data_user.h b/test/fuzz_test/fuzz_test_common/include/cm_cert_data_user.h new file mode 100644 index 0000000000000000000000000000000000000000..374a97dc6eeff1bbbdad683d20d8a16080cadd22 --- /dev/null +++ b/test/fuzz_test/fuzz_test_common/include/cm_cert_data_user.h @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef CM_CERT_DATA_USER_H +#define CM_CERT_DATA_USER_H +static const uint8_t g_certData01[] = { /* 40dc992e.0 */ + 0x30, 0x82, 0x04, 0x31, 0x30, 0x82, 0x03, 0x19, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x01, 0x00, + 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x30, + 0x81, 0x95, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x47, 0x52, 0x31, + 0x44, 0x30, 0x42, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x3b, 0x48, 0x65, 0x6c, 0x6c, 0x65, 0x6e, + 0x69, 0x63, 0x20, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x69, 0x63, 0x20, 0x61, 0x6e, 0x64, 0x20, + 0x52, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x43, 0x65, 0x72, 0x74, 0x2e, 0x20, 0x41, 0x75, 0x74, 0x68, + 0x6f, 0x72, 0x69, 0x74, 0x79, 0x31, 0x40, 0x30, 0x3e, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x37, + 0x48, 0x65, 0x6c, 0x6c, 0x65, 0x6e, 0x69, 0x63, 0x20, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x69, + 0x63, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x52, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x49, + 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x52, 0x6f, 0x6f, 0x74, + 0x43, 0x41, 0x20, 0x32, 0x30, 0x31, 0x31, 0x30, 0x1e, 0x17, 0x0d, 0x31, 0x31, 0x31, 0x32, 0x30, + 0x36, 0x31, 0x33, 0x34, 0x39, 0x35, 0x32, 0x5a, 0x17, 0x0d, 0x33, 0x31, 0x31, 0x32, 0x30, 0x31, + 0x31, 0x33, 0x34, 0x39, 0x35, 0x32, 0x5a, 0x30, 0x81, 0x95, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, + 0x55, 0x04, 0x06, 0x13, 0x02, 0x47, 0x52, 0x31, 0x44, 0x30, 0x42, 0x06, 0x03, 0x55, 0x04, 0x0a, + 0x13, 0x3b, 0x48, 0x65, 0x6c, 0x6c, 0x65, 0x6e, 0x69, 0x63, 0x20, 0x41, 0x63, 0x61, 0x64, 0x65, + 0x6d, 0x69, 0x63, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x52, 0x65, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x43, 0x65, + 0x72, 0x74, 0x2e, 0x20, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x31, 0x40, 0x30, + 0x3e, 0x06, 0x03, 0x55, 0x04, 0x03, 0x13, 0x37, 0x48, 0x65, 0x6c, 0x6c, 0x65, 0x6e, 0x69, 0x63, + 0x20, 0x41, 0x63, 0x61, 0x64, 0x65, 0x6d, 0x69, 0x63, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x52, 0x65, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x20, 0x49, 0x6e, 0x73, 0x74, 0x69, 0x74, 0x75, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x20, 0x52, 0x6f, 0x6f, 0x74, 0x43, 0x41, 0x20, 0x32, 0x30, 0x31, 0x31, 0x30, + 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, + 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, + 0xa9, 0x53, 0x00, 0xe3, 0x2e, 0xa6, 0xf6, 0x8e, 0xfa, 0x60, 0xd8, 0x2d, 0x95, 0x3e, 0xf8, 0x2c, + 0x2a, 0x54, 0x4e, 0xcd, 0xb9, 0x84, 0x61, 0x94, 0x58, 0x4f, 0x8f, 0x3d, 0x8b, 0xe4, 0x43, 0xf3, + 0x75, 0x89, 0x8d, 0x51, 0xe4, 0xc3, 0x37, 0xd2, 0x8a, 0x88, 0x4d, 0x79, 0x1e, 0xb7, 0x12, 0xdd, + 0x43, 0x78, 0x4a, 0x8a, 0x92, 0xe6, 0xd7, 0x48, 0xd5, 0x0f, 0xa4, 0x3a, 0x29, 0x44, 0x35, 0xb8, + 0x07, 0xf6, 0x68, 0x1d, 0x55, 0xcd, 0x38, 0x51, 0xf0, 0x8c, 0x24, 0x31, 0x85, 0xaf, 0x83, 0xc9, + 0x7d, 0xe9, 0x77, 0xaf, 0xed, 0x1a, 0x7b, 0x9d, 0x17, 0xf9, 0xb3, 0x9d, 0x38, 0x50, 0x0f, 0xa6, + 0x5a, 0x79, 0x91, 0x80, 0xaf, 0x37, 0xae, 0xa6, 0xd3, 0x31, 0xfb, 0xb5, 0x26, 0x09, 0x9d, 0x3c, + 0x5a, 0xef, 0x51, 0xc5, 0x2b, 0xdf, 0x96, 0x5d, 0xeb, 0x32, 0x1e, 0x02, 0xda, 0x70, 0x49, 0xec, + 0x6e, 0x0c, 0xc8, 0x9a, 0x37, 0x8d, 0xf7, 0xf1, 0x36, 0x60, 0x4b, 0x26, 0x2c, 0x82, 0x9e, 0xd0, + 0x78, 0xf3, 0x0d, 0x0f, 0x63, 0xa4, 0x51, 0x30, 0xe1, 0xf9, 0x2b, 0x27, 0x12, 0x07, 0xd8, 0xea, + 0xbd, 0x18, 0x62, 0x98, 0xb0, 0x59, 0x37, 0x7d, 0xbe, 0xee, 0xf3, 0x20, 0x51, 0x42, 0x5a, 0x83, + 0xef, 0x93, 0xba, 0x69, 0x15, 0xf1, 0x62, 0x9d, 0x9f, 0x99, 0x39, 0x82, 0xa1, 0xb7, 0x74, 0x2e, + 0x8b, 0xd4, 0xc5, 0x0b, 0x7b, 0x2f, 0xf0, 0xc8, 0x0a, 0xda, 0x3d, 0x79, 0x0a, 0x9a, 0x93, 0x1c, + 0xa5, 0x28, 0x72, 0x73, 0x91, 0x43, 0x9a, 0xa7, 0xd1, 0x4d, 0x85, 0x84, 0xb9, 0xa9, 0x74, 0x8f, + 0x14, 0x40, 0xc7, 0xdc, 0xde, 0xac, 0x41, 0x64, 0x6c, 0xb4, 0x19, 0x9b, 0x02, 0x63, 0x6d, 0x24, + 0x64, 0x8f, 0x44, 0xb2, 0x25, 0xea, 0xce, 0x5d, 0x74, 0x0c, 0x63, 0x32, 0x5c, 0x8d, 0x87, 0xe5, + 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x81, 0x89, 0x30, 0x81, 0x86, 0x30, 0x0f, 0x06, 0x03, 0x55, + 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0b, 0x06, 0x03, + 0x55, 0x1d, 0x0f, 0x04, 0x04, 0x03, 0x02, 0x01, 0x06, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, + 0x04, 0x16, 0x04, 0x14, 0xa6, 0x91, 0x42, 0xfd, 0x13, 0x61, 0x4a, 0x23, 0x9e, 0x08, 0xa4, 0x29, + 0xe5, 0xd8, 0x13, 0x04, 0x23, 0xee, 0x41, 0x25, 0x30, 0x47, 0x06, 0x03, 0x55, 0x1d, 0x1e, 0x04, + 0x40, 0x30, 0x3e, 0xa0, 0x3c, 0x30, 0x05, 0x82, 0x03, 0x2e, 0x67, 0x72, 0x30, 0x05, 0x82, 0x03, + 0x2e, 0x65, 0x75, 0x30, 0x06, 0x82, 0x04, 0x2e, 0x65, 0x64, 0x75, 0x30, 0x06, 0x82, 0x04, 0x2e, + 0x6f, 0x72, 0x67, 0x30, 0x05, 0x81, 0x03, 0x2e, 0x67, 0x72, 0x30, 0x05, 0x81, 0x03, 0x2e, 0x65, + 0x75, 0x30, 0x06, 0x81, 0x04, 0x2e, 0x65, 0x64, 0x75, 0x30, 0x06, 0x81, 0x04, 0x2e, 0x6f, 0x72, + 0x67, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, + 0x03, 0x82, 0x01, 0x01, 0x00, 0x1f, 0xef, 0x79, 0x41, 0xe1, 0x7b, 0x6e, 0x3f, 0xb2, 0x8c, 0x86, + 0x37, 0x42, 0x4a, 0x4e, 0x1c, 0x37, 0x1e, 0x8d, 0x66, 0xba, 0x24, 0x81, 0xc9, 0x4f, 0x12, 0x0f, + 0x21, 0xc0, 0x03, 0x97, 0x86, 0x25, 0x6d, 0x5d, 0xd3, 0x22, 0x29, 0xa8, 0x6c, 0xa2, 0x0d, 0xa9, + 0xeb, 0x3d, 0x06, 0x5b, 0x99, 0x3a, 0xc7, 0xcc, 0xc3, 0x9a, 0x34, 0x7f, 0xab, 0x0e, 0xc8, 0x4e, + 0x1c, 0xe1, 0xfa, 0xe4, 0xdc, 0xcd, 0x0d, 0xbe, 0xbf, 0x24, 0xfe, 0x6c, 0xe7, 0x6b, 0xc2, 0x0d, + 0xc8, 0x06, 0x9e, 0x4e, 0x8d, 0x61, 0x28, 0xa6, 0x6a, 0xfd, 0xe5, 0xf6, 0x62, 0xea, 0x18, 0x3c, + 0x4e, 0xa0, 0x53, 0x9d, 0xb2, 0x3a, 0x9c, 0xeb, 0xa5, 0x9c, 0x91, 0x16, 0xb6, 0x4d, 0x82, 0xe0, + 0x0c, 0x05, 0x48, 0xa9, 0x6c, 0xf5, 0xcc, 0xf8, 0xcb, 0x9d, 0x49, 0xb4, 0xf0, 0x02, 0xa5, 0xfd, + 0x70, 0x03, 0xed, 0x8a, 0x21, 0xa5, 0xae, 0x13, 0x86, 0x49, 0xc3, 0x33, 0x73, 0xbe, 0x87, 0x3b, + 0x74, 0x8b, 0x17, 0x45, 0x26, 0x4c, 0x16, 0x91, 0x83, 0xfe, 0x67, 0x7d, 0xcd, 0x4d, 0x63, 0x67, + 0xfa, 0xf3, 0x03, 0x12, 0x96, 0x78, 0x06, 0x8d, 0xb1, 0x67, 0xed, 0x8e, 0x3f, 0xbe, 0x9f, 0x4f, + 0x02, 0xf5, 0xb3, 0x09, 0x2f, 0xf3, 0x4c, 0x87, 0xdf, 0x2a, 0xcb, 0x95, 0x7c, 0x01, 0xcc, 0xac, + 0x36, 0x7a, 0xbf, 0xa2, 0x73, 0x7a, 0xf7, 0x8f, 0xc1, 0xb5, 0x9a, 0xa1, 0x14, 0xb2, 0x8f, 0x33, + 0x9f, 0x0d, 0xef, 0x22, 0xdc, 0x66, 0x7b, 0x84, 0xbd, 0x45, 0x17, 0x06, 0x3d, 0x3c, 0xca, 0xb9, + 0x77, 0x34, 0x8f, 0xca, 0xea, 0xcf, 0x3f, 0x31, 0x3e, 0xe3, 0x88, 0xe3, 0x80, 0x49, 0x25, 0xc8, + 0x97, 0xb5, 0x9d, 0x9a, 0x99, 0x4d, 0xb0, 0x3c, 0xf8, 0x4a, 0x00, 0x9b, 0x64, 0xdd, 0x9f, 0x39, + 0x4b, 0xd1, 0x27, 0xd7, 0xb8 +}; +#endif /* CM_CERT_DATA_USER_H */ \ No newline at end of file diff --git a/test/fuzz_test/fuzz_test_common/include/cm_fuzz_test_common.h b/test/fuzz_test/fuzz_test_common/include/cm_fuzz_test_common.h index cc48ab76d40f542dab91298cd161f761981936e3..ef1ec4bfcd23a472d9add5ab5b0272846801c85f 100644 --- a/test/fuzz_test/fuzz_test_common/include/cm_fuzz_test_common.h +++ b/test/fuzz_test/fuzz_test_common/include/cm_fuzz_test_common.h @@ -23,6 +23,8 @@ #include "securec.h" namespace CmFuzzTest { +void SetATPermission(void); + constexpr uint32_t CERT_INFO_LEN = sizeof(uint32_t) + MAX_LEN_CERTIFICATE + sizeof(uint32_t) + MAX_LEN_CERT_ALIAS + sizeof(uint32_t); diff --git a/test/fuzz_test/fuzz_test_common/src/cm_fuzz_test_common.cpp b/test/fuzz_test/fuzz_test_common/src/cm_fuzz_test_common.cpp index e42902bb77631b2c5dea569f1ccb3faba151b541..8034da626cd181c6c9ee8349e5f31f9ed30fedc5 100644 --- a/test/fuzz_test/fuzz_test_common/src/cm_fuzz_test_common.cpp +++ b/test/fuzz_test/fuzz_test_common/src/cm_fuzz_test_common.cpp @@ -17,10 +17,49 @@ #include "cm_ipc_client_serialization.h" #include "message_parcel.h" +#include "nativetoken_kit.h" +#include "token_setproc.h" +#include "accesstoken_kit.h" +#include namespace CmFuzzTest { +constexpr uint32_t SLEEP_TIME = 3; +constexpr int32_t PERMISSION_MAX = 4; +constexpr int32_t PERMISSION_INDEX0 = 0; +constexpr int32_t PERMISSION_INDEX1 = 1; +constexpr int32_t PERMISSION_INDEX2 = 2; +constexpr int32_t PERMISSION_INDEX3 = 3; constexpr uint32_t NUM_10 = 10; constexpr uint32_t NUM_9 = 9; +void SetATPermission(void) +{ + static bool firstRun = true; + const char **perms = new const char *[PERMISSION_MAX]; // 4 permissions + perms[PERMISSION_INDEX0] = "ohos.permission.ACCESS_CERT_MANAGER_INTERNAL"; // system_core + perms[PERMISSION_INDEX1] = "ohos.permission.ACCESS_CERT_MANAGER"; // normal + perms[PERMISSION_INDEX2] = "ohos.permission.ACCESS_USER_TRUSTED_CERT"; // system_core + perms[PERMISSION_INDEX3] = "ohos.permission.ACCESS_SYSTEM_APP_CERT"; // system_core + NativeTokenInfoParams infoInstance = { + .dcapsNum = 0, + .permsNum = PERMISSION_MAX, + .dcaps = nullptr, + .perms = perms, + .acls = nullptr, + .processName = "TestCertManager", + .aplStr = "system_core", + }; + + auto tokenId = GetAccessTokenId(&infoInstance); + SetSelfTokenID(tokenId); + OHOS::Security::AccessToken::AccessTokenKit::ReloadNativeTokenInfo(); + if (firstRun) { + system("pidof accesstoken_ser | xargs kill -9"); + sleep(SLEEP_TIME); + firstRun = false; + } + delete[] perms; +} + bool GetUintFromBuffer(uint8_t *srcData, uint32_t *remSize, uint32_t *offset, uint32_t *outVal) { if (*remSize < sizeof(uint32_t)) { diff --git a/test/unittest/common_permission_test/BUILD.gn b/test/unittest/common_permission_test/BUILD.gn index cc3b5306fb23e7b2bebede191912222fc7259a8d..02a7dbdef053e5eabfc2d1e67d309440cc92ff9d 100644 --- a/test/unittest/common_permission_test/BUILD.gn +++ b/test/unittest/common_permission_test/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/test.gni") module_output_path = "cert_manager_standard/cert_manager_standard_test" @@ -39,10 +40,9 @@ ohos_unittest("cm_common_permission_test") { } deps = [ - "../../../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] - defines = [ "_CM_LOG_ENABLE_" ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", diff --git a/test/unittest/include/cm_cert_data_user.h b/test/unittest/include/cm_cert_data_user.h index 799619ee3b7bfe34ef51460de994cc773188ff95..c6cdca719fa4a3cd78d90464d2340d1137c24b44 100644 --- a/test/unittest/include/cm_cert_data_user.h +++ b/test/unittest/include/cm_cert_data_user.h @@ -306,6 +306,61 @@ static const uint8_t g_certData05[] = { /* 2e0g9ue5 */ 0x59, 0xae, 0x6b, 0x04, 0x1b }; +static const uint8_t g_certData07[] { /*882de061*/ + 0x30, 0x82, 0x03, 0x38, 0x30, 0x82, 0x02, 0x20, 0xa0, 0x03, 0x02, 0x01, 0x02, 0x02, 0x06, 0x20, + 0x06, 0x05, 0x16, 0x70, 0x02, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, + 0x01, 0x05, 0x05, 0x00, 0x30, 0x3b, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, + 0x02, 0x52, 0x4f, 0x31, 0x11, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x08, 0x63, 0x65, + 0x72, 0x74, 0x53, 0x49, 0x47, 0x4e, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, + 0x10, 0x63, 0x65, 0x72, 0x74, 0x53, 0x49, 0x47, 0x4e, 0x20, 0x52, 0x4f, 0x4f, 0x54, 0x20, 0x43, + 0x41, 0x30, 0x1e, 0x17, 0x0d, 0x30, 0x36, 0x30, 0x37, 0x30, 0x34, 0x31, 0x37, 0x32, 0x30, 0x30, + 0x34, 0x5a, 0x17, 0x0d, 0x33, 0x31, 0x30, 0x37, 0x30, 0x34, 0x31, 0x37, 0x32, 0x30, 0x30, 0x34, + 0x5a, 0x30, 0x3b, 0x31, 0x0b, 0x30, 0x09, 0x06, 0x03, 0x55, 0x04, 0x06, 0x13, 0x02, 0x52, 0x4f, + 0x31, 0x11, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x08, 0x63, 0x65, 0x72, 0x74, 0x53, + 0x49, 0x47, 0x4e, 0x31, 0x19, 0x30, 0x17, 0x06, 0x03, 0x55, 0x04, 0x0b, 0x13, 0x10, 0x63, 0x65, + 0x72, 0x74, 0x53, 0x49, 0x47, 0x4e, 0x20, 0x52, 0x4f, 0x4f, 0x54, 0x20, 0x43, 0x41, 0x30, 0x82, + 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05, + 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xb7, + 0x33, 0xb9, 0x7e, 0xc8, 0x25, 0x4a, 0x8e, 0xb5, 0xdb, 0xb4, 0x28, 0x1b, 0xaa, 0x57, 0x90, 0xe8, + 0xd1, 0x22, 0xd3, 0x64, 0xba, 0xd3, 0x93, 0xe8, 0xd4, 0xac, 0x86, 0x61, 0x40, 0x6a, 0x60, 0x57, + 0x68, 0x54, 0x84, 0x4d, 0xbc, 0x6a, 0x54, 0x02, 0x05, 0xff, 0xdf, 0x9b, 0x9a, 0x2a, 0xae, 0x5d, + 0x07, 0x8f, 0x4a, 0xc3, 0x28, 0x7f, 0xef, 0xfb, 0x2b, 0xfa, 0x79, 0xf1, 0xc7, 0xad, 0xf0, 0x10, + 0x53, 0x24, 0x90, 0x8b, 0x66, 0xc9, 0xa8, 0x88, 0xab, 0xaf, 0x5a, 0xa3, 0x00, 0xe9, 0xbe, 0xba, + 0x46, 0xee, 0x5b, 0x73, 0x7b, 0x2c, 0x17, 0x82, 0x81, 0x5e, 0x62, 0x2c, 0xa1, 0x02, 0x65, 0xb3, + 0xbd, 0xc5, 0x2b, 0x00, 0x7e, 0xc4, 0xfc, 0x03, 0x33, 0x57, 0x0d, 0xed, 0xe2, 0xfa, 0xce, 0x5d, + 0x45, 0xd6, 0x38, 0xcd, 0x35, 0xb6, 0xb2, 0xc1, 0xd0, 0x9c, 0x81, 0x4a, 0xaa, 0xe4, 0xb2, 0x01, + 0x5c, 0x1d, 0x8f, 0x5f, 0x99, 0xc4, 0xb1, 0xad, 0xdb, 0x88, 0x21, 0xeb, 0x90, 0x08, 0x82, 0x80, + 0xf3, 0x30, 0xa3, 0x43, 0xe6, 0x90, 0x82, 0xae, 0x55, 0x28, 0x49, 0xed, 0x5b, 0xd7, 0xa9, 0x10, + 0x38, 0x0e, 0xfe, 0x8f, 0x4c, 0x5b, 0x9b, 0x46, 0xea, 0x41, 0xf5, 0xb0, 0x08, 0x74, 0xc3, 0xd0, + 0x88, 0x33, 0xb6, 0x7c, 0xd7, 0x74, 0xdf, 0xdc, 0x84, 0xd1, 0x43, 0x0e, 0x75, 0x39, 0xa1, 0x25, + 0x40, 0x28, 0xea, 0x78, 0xcb, 0x0e, 0x2c, 0x2e, 0x39, 0x9d, 0x8c, 0x8b, 0x6e, 0x16, 0x1c, 0x2f, + 0x26, 0x82, 0x10, 0xe2, 0xe3, 0x65, 0x94, 0x0a, 0x04, 0xc0, 0x5e, 0xf7, 0x5d, 0x5b, 0xf8, 0x10, + 0xe2, 0xd0, 0xba, 0x7a, 0x4b, 0xfb, 0xde, 0x37, 0x00, 0x00, 0x1a, 0x5b, 0x28, 0xe3, 0xd2, 0x9c, + 0x73, 0x3e, 0x32, 0x87, 0x98, 0xa1, 0xc9, 0x51, 0x2f, 0xd7, 0xde, 0xac, 0x33, 0xb3, 0x4f, 0x02, + 0x03, 0x01, 0x00, 0x01, 0xa3, 0x42, 0x30, 0x40, 0x30, 0x0f, 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, + 0x01, 0xff, 0x04, 0x05, 0x30, 0x03, 0x01, 0x01, 0xff, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x1d, 0x0f, + 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x01, 0xc6, 0x30, 0x1d, 0x06, 0x03, 0x55, 0x1d, 0x0e, + 0x04, 0x16, 0x04, 0x14, 0xe0, 0x8c, 0x9b, 0xdb, 0x25, 0x49, 0xb3, 0xf1, 0x7c, 0x86, 0xd6, 0xb2, + 0x42, 0x87, 0x0b, 0xd0, 0x6b, 0xa0, 0xd9, 0xe4, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, + 0xf7, 0x0d, 0x01, 0x01, 0x05, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x3e, 0xd2, 0x1c, 0x89, + 0x2e, 0x35, 0xfc, 0xf8, 0x75, 0xdd, 0xe6, 0x7f, 0x65, 0x88, 0xf4, 0x72, 0x4c, 0xc9, 0x2c, 0xd7, + 0x32, 0x4e, 0xf3, 0xdd, 0x19, 0x79, 0x47, 0xbd, 0x8e, 0x3b, 0x5b, 0x93, 0x0f, 0x50, 0x49, 0x24, + 0x13, 0x6b, 0x14, 0x06, 0x72, 0xef, 0x09, 0xd3, 0xa1, 0xa1, 0xe3, 0x40, 0x84, 0xc9, 0xe7, 0x18, + 0x32, 0x74, 0x3c, 0x48, 0x6e, 0x0f, 0x9f, 0x4b, 0xd4, 0xf7, 0x1e, 0xd3, 0x93, 0x86, 0x64, 0x54, + 0x97, 0x63, 0x72, 0x50, 0xd5, 0x55, 0xcf, 0xfa, 0x20, 0x93, 0x02, 0xa2, 0x9b, 0xc3, 0x23, 0x93, + 0x4e, 0x16, 0x55, 0x76, 0xa0, 0x70, 0x79, 0x6d, 0xcd, 0x21, 0x1f, 0xcf, 0x2f, 0x2d, 0xbc, 0x19, + 0xe3, 0x88, 0x31, 0xf8, 0x59, 0x1a, 0x81, 0x09, 0xc8, 0x97, 0xa6, 0x74, 0xc7, 0x60, 0xc4, 0x5b, + 0xcc, 0x57, 0x8e, 0xb2, 0x75, 0xfd, 0x1b, 0x02, 0x09, 0xdb, 0x59, 0x6f, 0x72, 0x93, 0x69, 0xf7, + 0x31, 0x41, 0xd6, 0x88, 0x38, 0xbf, 0x87, 0xb2, 0xbd, 0x16, 0x79, 0xf9, 0xaa, 0xe4, 0xbe, 0x88, + 0x25, 0xdd, 0x61, 0x27, 0x23, 0x1c, 0xb5, 0x31, 0x07, 0x04, 0x36, 0xb4, 0x1a, 0x90, 0xbd, 0xa0, + 0x74, 0x71, 0x50, 0x89, 0x6d, 0xbc, 0x14, 0xe3, 0x0f, 0x86, 0xae, 0xf1, 0xab, 0x3e, 0xc7, 0xa0, + 0x09, 0xcc, 0xa3, 0x48, 0xd1, 0xe0, 0xdb, 0x64, 0xe7, 0x92, 0xb5, 0xcf, 0xaf, 0x72, 0x43, 0x70, + 0x8b, 0xf9, 0xc3, 0x84, 0x3c, 0x13, 0xaa, 0x7e, 0x92, 0x9b, 0x57, 0x53, 0x93, 0xfa, 0x70, 0xc2, + 0x91, 0x0e, 0x31, 0xf9, 0x9b, 0x67, 0x5d, 0xe9, 0x96, 0x38, 0x5e, 0x5f, 0xb3, 0x73, 0x4e, 0x88, + 0x15, 0x67, 0xde, 0x9e, 0x76, 0x10, 0x62, 0x20, 0xbe, 0x55, 0x69, 0x95, 0x43, 0x00, 0x39, 0x4d, + 0xf6, 0xee, 0xb0, 0x5a, 0x4e, 0x49, 0x44, 0x54, 0x58, 0x5f, 0x42, 0x83 +}; + static char g_certData06[] = "-----BEGIN CERTIFICATE-----\r\n" "MIID6jCCAtKgAwIBAgIIIM2q/TmRoLcwDQYJKoZIhvcNAQELBQAwWjELMAkGA1UE\r\n" diff --git a/test/unittest/inner_permission_test/BUILD.gn b/test/unittest/inner_permission_test/BUILD.gn index 30b4c407e5b58625a92138bdf1c99123bb8854e1..5cd365c3fdbd06bf3f8100c6f02c1627f96f3fae 100644 --- a/test/unittest/inner_permission_test/BUILD.gn +++ b/test/unittest/inner_permission_test/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/test.gni") module_output_path = "cert_manager_standard/cert_manager_standard_test" @@ -39,10 +40,9 @@ ohos_unittest("cm_inner_permission_test") { } deps = [ - "../../../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] - defines = [ "_CM_LOG_ENABLE_" ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", diff --git a/test/unittest/module_test/BUILD.gn b/test/unittest/module_test/BUILD.gn index a31043b8a667c68278e4a0135d85a2016683c365..773ddd41194f1c06f84c5a448e9543b94c5b75d1 100644 --- a/test/unittest/module_test/BUILD.gn +++ b/test/unittest/module_test/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/test.gni") module_output_path = "cert_manager_standard/cert_manager_standard_test" @@ -43,10 +44,9 @@ ohos_unittest("cm_module_test") { } deps = [ - "../../../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] - defines = [ "_CM_LOG_ENABLE_" ] external_deps = [ "bounds_checking_function:libsec_static", "c_utils:utils", diff --git a/test/unittest/module_test/src/cm_log_test.cpp b/test/unittest/module_test/src/cm_log_test.cpp index 111a392fe8b40384f787df9170bceb121cdf154c..e71dc3d007d45ffe5e711d225585e96b1c7e9aaa 100644 --- a/test/unittest/module_test/src/cm_log_test.cpp +++ b/test/unittest/module_test/src/cm_log_test.cpp @@ -24,7 +24,7 @@ using namespace testing::ext; namespace { -static constexpr uint32_t DEFAULT_SIZE = 1024; +static constexpr uint32_t DEFAULT_SIZE = 2048; class CmLogTest : public testing::Test { public: static void SetUpTestCase(void); diff --git a/test/unittest/multi_thread_test/BUILD.gn b/test/unittest/multi_thread_test/BUILD.gn index 3251d76b8076683f28e551db423d154d772c35f0..d261dac5ca66d2fcefac0d211aee2c10c68f4bf5 100644 --- a/test/unittest/multi_thread_test/BUILD.gn +++ b/test/unittest/multi_thread_test/BUILD.gn @@ -11,6 +11,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +import("//base/security/certificate_manager/cert_manager.gni") import("//build/test.gni") module_output_path = "cert_manager_standard/cert_manager_standard_test" @@ -42,10 +43,9 @@ ohos_unittest("cm_multi_thread_test") { } deps = [ - "../../../frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", - "../../../interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", + "${cert_manager_root_dir}/frameworks/cert_manager_standard/main:cert_manager_standard_frameworks", + "${cert_manager_root_dir}/interfaces/innerkits/cert_manager_standard/main:cert_manager_sdk", ] - defines = [ "_CM_LOG_ENABLE_" ] external_deps = [ "access_token:libaccesstoken_sdk", "access_token:libnativetoken", diff --git a/test/unittest/src/cm_user_cert_test.cpp b/test/unittest/src/cm_user_cert_test.cpp index 70f0ef50e2bcdbb25d5120677bcbc26987e923a2..3d2d2e1757765e7935f6504f9e56039fa945d659 100755 --- a/test/unittest/src/cm_user_cert_test.cpp +++ b/test/unittest/src/cm_user_cert_test.cpp @@ -141,6 +141,24 @@ struct UserCertInfoResult g_certInfoExpectResult[] = { } }; +struct UserCertInfoResult g_userCertInfoExpectResult[] = { + { + { + "oh:t=c;o=882de061;u=100;a=0", + "882de061", + true, + "CN=,OU=certSIGN ROOT CA,O=certSIGN", + "CN=,OU=certSIGN ROOT CA,O=certSIGN", + "200605167002", + "2006-7-5", + "2031-7-5", + "EA:A9:62:C4:FA:4A:6B:AF:EB:E4:15:19:6D:35:1C:CD:88:8D:4F:53:F3:FA:8A:E6:D7:C4:66:A9:4E:60:42:BB", + { sizeof(g_certData07), const_cast(g_certData07) } + }, + true + } +}; + struct UserCertStatusExpectResult { char uri[MAX_URI_LEN]; bool inparamStatus; @@ -1222,6 +1240,39 @@ HWTEST_F(CmUserCertTest, GetUserCertInfoTest006, TestSize.Level0) } } +/** + * @tc.name: GetUserCertInfoTest007 + * @tc.desc: Test SA Get user cert info interface performance + * @tc.type: FUNC + * @tc.require: AR000H0MJ8 /SR000H09N7 + */ +HWTEST_F(CmUserCertTest, GetUserCertInfoTest007, TestSize.Level0) +{ + int32_t ret; + uint8_t aliasBuf013[] = "882de061"; + uint8_t uriBuf027[MAX_URI_LEN] = {0}; + + struct CmBlob testUserCert = { sizeof(g_certData07), const_cast(g_certData07) }; + struct CmBlob testCertAlias = { sizeof(aliasBuf013), aliasBuf013 }; + struct CmBlob testCertUri = { sizeof(uriBuf027), uriBuf027}; + + ret = CmInstallUserCACert(&testUserCert, &testCertAlias, TEST_USERID, true, &testCertUri); + EXPECT_EQ(ret, CM_SUCCESS) << "normal install user ca cert test failed, recode:" << ret; + + struct CertInfo *certInfo008 = nullptr; + InitUserCertInfo(&certInfo008); + ret = CmGetUserCertInfo(&testCertUri, CM_USER_TRUSTED_STORE, certInfo008); + + EXPECT_EQ(CompareCertInfo(certInfo008, &(g_userCertInfoExpectResult[0].certInfo)), true) << + DumpCertInfo(certInfo008); + EXPECT_EQ(ret, CM_SUCCESS) << "Normal get user cert info test failed, recode:" << ret; + EXPECT_EQ(CompareCertData(&(certInfo008->certInfo), &(g_userCertInfoExpectResult[0].certInfo.certInfo)), true); + FreeCertInfo(certInfo008); + + ret = CmUninstallUserTrustedCert(&testCertUri); + EXPECT_EQ(ret, CM_SUCCESS) << "Normal user cert Uninstall test failed, recode:" << ret; +} + /** * @tc.name: SetUserCertStatusTest001 * @tc.desc: Test CertManager Set user cert status interface base function