From ccbec9c275b134fb641dfd01bb87e5dcb7898ead Mon Sep 17 00:00:00 2001 From: Praneeth Sarode Date: Fri, 25 Jul 2025 23:12:44 +0530 Subject: [PATCH] fix(pki): remove redundant key type_c assignment in build pubkey and privkey functions Whenever the pki_pubkey_build_ecdsa and pki_privkey_build_ecdsa functions are called, the key type assignment is already done. So, we don't need to assign it again. Moreover, because the pki_key_ecdsa_nid_to_name function was used, for key types like the SSH_KEYTYPE_SK_ECDSA, we assign the wrong type string to the key, based on the nid. Signed-off-by: Praneeth Sarode Reviewed-by: Jakub Jelen --- src/pki_crypto.c | 2 -- src/pki_gcrypt.c | 2 -- src/pki_mbedcrypto.c | 2 -- 3 files changed, 6 deletions(-) diff --git a/src/pki_crypto.c b/src/pki_crypto.c index 33e43b9e..24433387 100644 --- a/src/pki_crypto.c +++ b/src/pki_crypto.c @@ -227,7 +227,6 @@ int pki_privkey_build_ecdsa(ssh_key key, int nid, ssh_string e, ssh_string exp) } key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); #if OPENSSL_VERSION_NUMBER < 0x30000000L ecdsa = EC_KEY_new_by_curve_name(key->ecdsa_nid); @@ -341,7 +340,6 @@ int pki_pubkey_build_ecdsa(ssh_key key, int nid, ssh_string e) #endif /* OPENSSL_VERSION_NUMBER */ key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); #if OPENSSL_VERSION_NUMBER < 0x30000000L ecdsa = EC_KEY_new_by_curve_name(key->ecdsa_nid); diff --git a/src/pki_gcrypt.c b/src/pki_gcrypt.c index 144dbf23..fece7cdb 100644 --- a/src/pki_gcrypt.c +++ b/src/pki_gcrypt.c @@ -1100,7 +1100,6 @@ int pki_privkey_build_ecdsa(ssh_key key, int nid, ssh_string e, ssh_string exp) gpg_error_t err; key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); err = gcry_sexp_build(&key->ecdsa, NULL, @@ -1122,7 +1121,6 @@ int pki_pubkey_build_ecdsa(ssh_key key, int nid, ssh_string e) gpg_error_t err; key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); err = gcry_sexp_build(&key->ecdsa, NULL, diff --git a/src/pki_mbedcrypto.c b/src/pki_mbedcrypto.c index 265ef543..d501337d 100644 --- a/src/pki_mbedcrypto.c +++ b/src/pki_mbedcrypto.c @@ -1802,7 +1802,6 @@ int pki_privkey_build_ecdsa(ssh_key key, int nid, ssh_string e, ssh_string exp) mbedtls_ecp_point Q; key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); key->ecdsa = malloc(sizeof(mbedtls_ecdsa_context)); if (key->ecdsa == NULL) { @@ -1870,7 +1869,6 @@ int pki_pubkey_build_ecdsa(ssh_key key, int nid, ssh_string e) mbedtls_ecp_point Q; key->ecdsa_nid = nid; - key->type_c = pki_key_ecdsa_nid_to_name(nid); key->ecdsa = malloc(sizeof(mbedtls_ecdsa_context)); if (key->ecdsa == NULL) {