You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

196 lines
7.7 KiB

From 3cc1bcebd9da74f8d2fa8648e076ba715e76c657 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Fri, 25 May 2018 18:43:32 +0200
Subject: [PATCH] Fix the build with older gcrypt in RHEL 7
Use deprecated GCRY_PK_ECDSA instead of GCRY_PK_ECC (which will be
mapped to GCRY_PK_ECC in newer versions).
---
pkcs11/gkm/gkm-crypto.c | 4 ++--
pkcs11/gkm/gkm-data-der.c | 10 +++++-----
pkcs11/gkm/gkm-private-xsa-key.c | 4 ++--
pkcs11/gkm/gkm-public-xsa-key.c | 4 ++--
pkcs11/gkm/gkm-sexp-key.c | 4 ++--
pkcs11/gkm/gkm-sexp.c | 2 +-
pkcs11/gkm/test-sexp.c | 2 +-
pkcs11/ssh-store/gkm-ssh-openssh.c | 4 ++--
8 files changed, 17 insertions(+), 17 deletions(-)
diff --git a/pkcs11/gkm/gkm-crypto.c b/pkcs11/gkm/gkm-crypto.c
index 7195e0a..cafe251 100644
--- a/pkcs11/gkm/gkm-crypto.c
+++ b/pkcs11/gkm/gkm-crypto.c
@@ -306,7 +306,7 @@ gkm_crypto_sign_xsa (gcry_sexp_t sexp, CK_MECHANISM_TYPE mech, CK_BYTE_PTR data,
rv = gkm_dsa_mechanism_sign (sexp, data, n_data, signature, n_signature);
break;
case CKM_ECDSA:
- g_return_val_if_fail (algorithm == GCRY_PK_ECC, CKR_GENERAL_ERROR);
+ g_return_val_if_fail (algorithm == GCRY_PK_ECDSA, CKR_GENERAL_ERROR);
rv = gkm_ecdsa_mechanism_sign (sexp, data, n_data, signature, n_signature);
break;
default:
@@ -370,7 +370,7 @@ gkm_crypto_verify_xsa (gcry_sexp_t sexp, CK_MECHANISM_TYPE mech, CK_BYTE_PTR dat
rv = gkm_dsa_mechanism_verify (sexp, data, n_data, signature, n_signature);
break;
case CKM_ECDSA:
- g_return_val_if_fail (algorithm == GCRY_PK_ECC, CKR_GENERAL_ERROR);
+ g_return_val_if_fail (algorithm == GCRY_PK_ECDSA, CKR_GENERAL_ERROR);
rv = gkm_ecdsa_mechanism_verify (sexp, data, n_data, signature, n_signature);
break;
default:
diff --git a/pkcs11/gkm/gkm-data-der.c b/pkcs11/gkm/gkm-data-der.c
index 68f41d4..2f91eaf 100644
--- a/pkcs11/gkm/gkm-data-der.c
+++ b/pkcs11/gkm/gkm-data-der.c
@@ -800,7 +800,7 @@ gkm_data_der_read_private_pkcs8_plain (GBytes *data,
else if (key_algo == OID_PKIX1_DSA)
algorithm = GCRY_PK_DSA;
else if (key_algo == OID_PKIX1_ECDSA)
- algorithm = GCRY_PK_ECC;
+ algorithm = GCRY_PK_ECDSA;
if (!algorithm) {
ret = GKM_DATA_UNRECOGNIZED;
@@ -829,7 +829,7 @@ done:
if (ret == GKM_DATA_UNRECOGNIZED && params)
ret = gkm_data_der_read_private_key_dsa_parts (keydata, params, s_key);
break;
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
ret = gkm_data_der_read_private_key_ecdsa (keydata, s_key);
break;
default:
@@ -1325,7 +1325,7 @@ gkm_data_der_write_public_key (gcry_sexp_t s_key)
return gkm_data_der_write_public_key_rsa (s_key);
case GCRY_PK_DSA:
return gkm_data_der_write_public_key_dsa (s_key);
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
return gkm_data_der_write_public_key_ecdsa (s_key);
default:
g_return_val_if_reached (NULL);
@@ -1350,7 +1350,7 @@ gkm_data_der_write_private_key (gcry_sexp_t s_key)
return gkm_data_der_write_private_key_rsa (s_key);
case GCRY_PK_DSA:
return gkm_data_der_write_private_key_dsa (s_key);
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
return gkm_data_der_write_private_key_ecdsa (s_key);
default:
g_return_val_if_reached (NULL);
@@ -1460,7 +1460,7 @@ gkm_data_der_write_private_pkcs8_plain (gcry_sexp_t skey)
params = gkm_data_der_write_private_key_dsa_params (skey);
break;
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
oid = OID_PKIX1_ECDSA;
params = NULL;
key = gkm_data_der_write_private_key_ecdsa (skey);
diff --git a/pkcs11/gkm/gkm-private-xsa-key.c b/pkcs11/gkm/gkm-private-xsa-key.c
index 3dbbd12..878d5f0 100644
--- a/pkcs11/gkm/gkm-private-xsa-key.c
+++ b/pkcs11/gkm/gkm-private-xsa-key.c
@@ -361,10 +361,10 @@ gkm_private_xsa_key_real_get_attribute (GkmObject *base, GkmSession *session, CK
return gkm_sexp_key_set_part (GKM_SEXP_KEY (self), GCRY_PK_DSA, "g", attr);
case CKA_EC_POINT:
- return gkm_sexp_key_set_ec_q (GKM_SEXP_KEY (self), GCRY_PK_ECC, attr);
+ return gkm_sexp_key_set_ec_q (GKM_SEXP_KEY (self), GCRY_PK_ECDSA, attr);
case CKA_EC_PARAMS:
- return gkm_sexp_key_set_ec_params (GKM_SEXP_KEY (self), GCRY_PK_ECC, attr);
+ return gkm_sexp_key_set_ec_params (GKM_SEXP_KEY (self), GCRY_PK_ECDSA, attr);
/* (EC)DSA private parts */
case CKA_VALUE:
diff --git a/pkcs11/gkm/gkm-public-xsa-key.c b/pkcs11/gkm/gkm-public-xsa-key.c
index 5cc93f3..fced172 100644
--- a/pkcs11/gkm/gkm-public-xsa-key.c
+++ b/pkcs11/gkm/gkm-public-xsa-key.c
@@ -267,10 +267,10 @@ gkm_public_xsa_key_real_get_attribute (GkmObject *base, GkmSession *session, CK_
return gkm_sexp_key_set_part (GKM_SEXP_KEY (self), GCRY_PK_DSA, "y", attr);
case CKA_EC_POINT:
- return gkm_sexp_key_set_ec_q (GKM_SEXP_KEY (self), GCRY_PK_ECC, attr);
+ return gkm_sexp_key_set_ec_q (GKM_SEXP_KEY (self), GCRY_PK_ECDSA, attr);
case CKA_EC_PARAMS:
- return gkm_sexp_key_set_ec_params (GKM_SEXP_KEY (self), GCRY_PK_ECC, attr);
+ return gkm_sexp_key_set_ec_params (GKM_SEXP_KEY (self), GCRY_PK_ECDSA, attr);
};
return GKM_OBJECT_CLASS (gkm_public_xsa_key_parent_class)->get_attribute (base, session, attr);
diff --git a/pkcs11/gkm/gkm-sexp-key.c b/pkcs11/gkm/gkm-sexp-key.c
index 8b98bdc..9d0f233 100644
--- a/pkcs11/gkm/gkm-sexp-key.c
+++ b/pkcs11/gkm/gkm-sexp-key.c
@@ -65,7 +65,7 @@ gkm_sexp_key_real_get_attribute (GkmObject *base, GkmSession *session, CK_ATTRIB
return gkm_attribute_set_ulong (attr, CKK_RSA);
case GCRY_PK_DSA:
return gkm_attribute_set_ulong (attr, CKK_DSA);
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
return gkm_attribute_set_ulong (attr, CKK_ECDSA);
default:
g_return_val_if_reached (CKR_GENERAL_ERROR);
@@ -104,7 +104,7 @@ gkm_sexp_key_real_get_attribute (GkmObject *base, GkmSession *session, CK_ATTRIB
case GCRY_PK_DSA:
return gkm_attribute_set_data (attr, (CK_VOID_PTR)GKM_DSA_MECHANISMS,
sizeof (GKM_DSA_MECHANISMS));
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
return gkm_attribute_set_data (attr, (CK_VOID_PTR)GKM_ECDSA_MECHANISMS,
sizeof (GKM_ECDSA_MECHANISMS));
default:
diff --git a/pkcs11/gkm/gkm-sexp.c b/pkcs11/gkm/gkm-sexp.c
index 287f874..d2c8a53 100644
--- a/pkcs11/gkm/gkm-sexp.c
+++ b/pkcs11/gkm/gkm-sexp.c
@@ -235,7 +235,7 @@ gkm_sexp_key_to_public (gcry_sexp_t privkey, gcry_sexp_t *pubkey)
case GCRY_PK_DSA:
*pubkey = dsa_numbers_to_public (numbers);
break;
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
*pubkey = ecdsa_numbers_to_public (numbers);
break;
default:
diff --git a/pkcs11/gkm/test-sexp.c b/pkcs11/gkm/test-sexp.c
index ba104a0..78cc08e 100644
--- a/pkcs11/gkm/test-sexp.c
+++ b/pkcs11/gkm/test-sexp.c
@@ -152,7 +152,7 @@ test_parse_key (Test *test, gconstpointer unused)
/* Get the private key out */
ret = gkm_sexp_parse_key (test->ecdsakey, &algorithm, &is_priv, &sexp);
g_assert (ret);
- g_assert (algorithm == GCRY_PK_ECC);
+ g_assert (algorithm == GCRY_PK_ECDSA);
g_assert (is_priv == TRUE);
g_assert (sexp != NULL);
gcry_sexp_release (sexp);
diff --git a/pkcs11/ssh-store/gkm-ssh-openssh.c b/pkcs11/ssh-store/gkm-ssh-openssh.c
index 6c21264..c1644d5 100644
--- a/pkcs11/ssh-store/gkm-ssh-openssh.c
+++ b/pkcs11/ssh-store/gkm-ssh-openssh.c
@@ -34,7 +34,7 @@ keytype_to_algo (const gchar *salgo)
else if ((strcmp (salgo, "ecdsa-sha2-nistp256") == 0)
|| (strcmp (salgo, "ecdsa-sha2-nistp384") == 0)
|| (strcmp (salgo, "ecdsa-sha2-nistp521") == 0))
- return GCRY_PK_ECC;
+ return GCRY_PK_ECDSA;
return 0;
}
@@ -190,7 +190,7 @@ read_public (EggBuffer *req, gsize *offset, gcry_sexp_t *key, int *algo)
case GCRY_PK_DSA:
ret = read_public_dsa (req, offset, key);
break;
- case GCRY_PK_ECC:
+ case GCRY_PK_ECDSA:
ret = read_public_ecdsa (req, offset, key);
break;
default:
--
1.8.3.1