From: Wootak Jung Date: Thu, 20 Jul 2023 05:17:24 +0000 (+0900) Subject: Migrate to openssl 3.0 X-Git-Tag: accepted/tizen/unified/20230725.012952^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3e902a35d76bb97221de1faddcea5ba644920f24;p=platform%2Fcore%2Fapi%2Ftelephony.git Migrate to openssl 3.0 Change-Id: I1ce99cce5dff3fbe13eb9c1d9a48460435f4344c Signed-off-by: Wootak Jung --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 81ec8ce..ed8c76c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,7 +14,7 @@ IF(STDOUT_LOG) ADD_DEFINITIONS("-DTEL_STDOUT") ENDIF(STDOUT_LOG) -PKG_CHECK_MODULES(pkgs REQUIRED dlog tapi glib-2.0 capi-base-common openssl1.1 +PKG_CHECK_MODULES(pkgs REQUIRED dlog tapi glib-2.0 capi-base-common openssl3 capi-system-info cynara-client cynara-session cynara-creds-self gio-2.0) INCLUDE_DIRECTORIES(${pkgs_INCLUDE_DIRS}) LINK_DIRECTORIES(${pkgs_LIBRARY_DIRS}) diff --git a/packaging/capi-telephony.spec b/packaging/capi-telephony.spec index b0e220b..52b7885 100644 --- a/packaging/capi-telephony.spec +++ b/packaging/capi-telephony.spec @@ -13,7 +13,7 @@ BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(tapi) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(capi-base-common) -BuildRequires: pkgconfig(openssl1.1) +BuildRequires: pkgconfig(openssl3) BuildRequires: pkgconfig(capi-system-info) BuildRequires: pkgconfig(cynara-client) BuildRequires: pkgconfig(cynara-session) diff --git a/src/telephony_sim.c b/src/telephony_sim.c index 142eddc..8e26dc1 100644 --- a/src/telephony_sim.c +++ b/src/telephony_sim.c @@ -20,7 +20,7 @@ #include #include #include -#include +#include #include #include #include @@ -475,23 +475,29 @@ API int telephony_sim_get_subscriber_id(telephony_h handle, char **subscriber_id TelSimImsiInfo_t imsi_info; error_code = tel_get_sim_imsi(tapi_h, &imsi_info); if (error_code == TAPI_API_SUCCESS) { - SHA256_CTX ctx; + EVP_MD_CTX *md_ctx; + const EVP_MD *sha256; + unsigned char md[EVP_MAX_MD_SIZE]; + unsigned int md_len; char *imsi; - unsigned char md[SHA256_DIGEST_LENGTH]; int i; imsi = g_strdup_printf("%s%s%s", imsi_info.szMcc, imsi_info.szMnc, imsi_info.szMsin); - SHA256_Init(&ctx); - SHA256_Update(&ctx, imsi, strlen(imsi)); - SHA256_Final(md, &ctx); + md_ctx = EVP_MD_CTX_new(); + sha256 = EVP_sha256(); - *subscriber_id = malloc(SHA256_DIGEST_LENGTH * 2 + 1); - for (i = 0; i < SHA256_DIGEST_LENGTH; i++) + EVP_DigestInit_ex(md_ctx, sha256, NULL); + EVP_DigestUpdate(md_ctx, imsi, strlen(imsi)); + EVP_DigestFinal_ex(md_ctx, md, &md_len); + + subscriber_id = g_malloc0(md_len * 2 + 1); + for (i = 0; i < md_len; i++) snprintf(*subscriber_id + (i * 2), 3, "%02x", md[i]); INFO("Subscriber ID: [%s]", *subscriber_id); g_free(imsi); + EVP_MD_CTX_free(md_ctx); /* LCOV_EXCL_START */ } else if (error_code == TAPI_API_ACCESS_DENIED) { ERR("get_subscriber_id: PERMISSION_DENIED");