Constify version strings and some structures.
[openssl.git] / crypto / x509v3 / v3_skey.c
index 58da456cb566d79036ab9f6590e12a7983a0d74d..da0a3558f65bb85fc53f42f9c70afbfe6fe8e9ab 100644 (file)
@@ -62,8 +62,8 @@
 #include <openssl/x509v3.h>
 
 static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str);
-X509V3_EXT_METHOD v3_skey_id = { 
-NID_subject_key_identifier, 0, &ASN1_OCTET_STRING_it,
+const X509V3_EXT_METHOD v3_skey_id = { 
+NID_subject_key_identifier, 0, ASN1_ITEM_ref(ASN1_OCTET_STRING),
 0,0,0,0,
 (X509V3_EXT_I2S)i2s_ASN1_OCTET_STRING,
 (X509V3_EXT_S2I)s2i_skey_id,
@@ -104,20 +104,19 @@ static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method,
        ASN1_OCTET_STRING *oct;
        ASN1_BIT_STRING *pk;
        unsigned char pkey_dig[EVP_MAX_MD_SIZE];
-       EVP_MD_CTX md;
        unsigned int diglen;
 
        if(strcmp(str, "hash")) return s2i_ASN1_OCTET_STRING(method, ctx, str);
 
        if(!(oct = M_ASN1_OCTET_STRING_new())) {
-               X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
+               X509V3err(X509V3_F_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
                return NULL;
        }
 
        if(ctx && (ctx->flags == CTX_TEST)) return oct;
 
        if(!ctx || (!ctx->subject_req && !ctx->subject_cert)) {
-               X509V3err(X509V3_F_S2I_ASN1_SKEY_ID,X509V3_R_NO_PUBLIC_KEY);
+               X509V3err(X509V3_F_S2I_SKEY_ID,X509V3_R_NO_PUBLIC_KEY);
                goto err;
        }
 
@@ -126,16 +125,14 @@ static ASN1_OCTET_STRING *s2i_skey_id(X509V3_EXT_METHOD *method,
        else pk = ctx->subject_cert->cert_info->key->public_key;
 
        if(!pk) {
-               X509V3err(X509V3_F_S2I_ASN1_SKEY_ID,X509V3_R_NO_PUBLIC_KEY);
+               X509V3err(X509V3_F_S2I_SKEY_ID,X509V3_R_NO_PUBLIC_KEY);
                goto err;
        }
 
-       EVP_DigestInit(&md, EVP_sha1());
-       EVP_DigestUpdate(&md, pk->data, pk->length);
-       EVP_DigestFinal(&md, pkey_dig, &diglen);
+       EVP_Digest(pk->data, pk->length, pkey_dig, &diglen, EVP_sha1(), NULL);
 
        if(!M_ASN1_OCTET_STRING_set(oct, pkey_dig, diglen)) {
-               X509V3err(X509V3_F_S2I_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
+               X509V3err(X509V3_F_S2I_SKEY_ID,ERR_R_MALLOC_FAILURE);
                goto err;
        }