Fix the effect of no-dso in crypto/init.c
[oweals/openssl.git] / crypto / ec / ecx_meth.c
index 354d3879467fa8a0ce96e4257f335fe8658ad7f6..06e3911340d8f9fd0901c093f85718c6196074b4 100644 (file)
@@ -32,7 +32,7 @@ typedef enum {
 } ecx_key_op_t;
 
 /* Setup EVP_PKEY using public, private or generation */
-static int ecx_key_op(EVP_PKEY *pkey, X509_ALGOR *palg,
+static int ecx_key_op(EVP_PKEY *pkey, const X509_ALGOR *palg,
                       const unsigned char *p, int plen, ecx_key_op_t op)
 {
     X25519_KEY *xkey;
@@ -135,12 +135,12 @@ static int ecx_pub_cmp(const EVP_PKEY *a, const EVP_PKEY *b)
     return !CRYPTO_memcmp(akey->pubkey, bkey->pubkey, X25519_KEYLEN);
 }
 
-static int ecx_priv_decode(EVP_PKEY *pkey, PKCS8_PRIV_KEY_INFO *p8)
+static int ecx_priv_decode(EVP_PKEY *pkey, const PKCS8_PRIV_KEY_INFO *p8)
 {
     const unsigned char *p;
     int plen;
     ASN1_OCTET_STRING *oct = NULL;
-    X509_ALGOR *palg;
+    const X509_ALGOR *palg;
     int rv;
 
     if (!PKCS8_pkey_get0(NULL, &p, &plen, &palg, p8))
@@ -151,7 +151,7 @@ static int ecx_priv_decode(EVP_PKEY *pkey, PKCS8_PRIV_KEY_INFO *p8)
         p = NULL;
         plen = 0;
     } else {
-        p = ASN1_STRING_data(oct);
+        p = ASN1_STRING_get0_data(oct);
         plen = ASN1_STRING_length(oct);
     }