aboutsummaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
Diffstat (limited to 'crypto')
-rw-r--r--crypto/asn1/p7_s_e.c9
-rw-r--r--crypto/asn1/p7_signd.c11
-rw-r--r--crypto/pkcs7/pk7_lib.c6
-rw-r--r--crypto/pkcs7/pkcs7.h4
-rw-r--r--crypto/x509/x509.h3
5 files changed, 20 insertions, 13 deletions
diff --git a/crypto/asn1/p7_s_e.c b/crypto/asn1/p7_s_e.c
index bf20fd0b63..1df66ddbcb 100644
--- a/crypto/asn1/p7_s_e.c
+++ b/crypto/asn1/p7_s_e.c
@@ -70,7 +70,7 @@ int i2d_PKCS7_SIGN_ENVELOPE(PKCS7_SIGN_ENVELOPE *a, unsigned char **pp)
M_ASN1_I2D_len_SET_type(X509_ALGOR,a->md_algs,i2d_X509_ALGOR);
M_ASN1_I2D_len(a->enc_data,i2d_PKCS7_ENC_CONTENT);
M_ASN1_I2D_len_IMP_SEQUENCE_opt_type(X509,a->cert,i2d_X509,0);
- M_ASN1_I2D_len_IMP_SET_opt(a->crl,i2d_X509_CRL,1);
+ M_ASN1_I2D_len_IMP_SET_opt_type(X509_CRL,a->crl,i2d_X509_CRL,1);
M_ASN1_I2D_len_SET(a->signer_info,i2d_PKCS7_SIGNER_INFO);
M_ASN1_I2D_seq_total();
@@ -80,7 +80,7 @@ int i2d_PKCS7_SIGN_ENVELOPE(PKCS7_SIGN_ENVELOPE *a, unsigned char **pp)
M_ASN1_I2D_put_SET_type(X509_ALGOR,a->md_algs,i2d_X509_ALGOR);
M_ASN1_I2D_put(a->enc_data,i2d_PKCS7_ENC_CONTENT);
M_ASN1_I2D_put_IMP_SEQUENCE_opt_type(X509,a->cert,i2d_X509,0);
- M_ASN1_I2D_put_IMP_SET_opt(a->crl,i2d_X509_CRL,1);
+ M_ASN1_I2D_put_IMP_SET_opt_type(X509_CRL,a->crl,i2d_X509_CRL,1);
M_ASN1_I2D_put_SET(a->signer_info,i2d_PKCS7_SIGNER_INFO);
M_ASN1_I2D_finish();
@@ -100,7 +100,8 @@ PKCS7_SIGN_ENVELOPE *d2i_PKCS7_SIGN_ENVELOPE(PKCS7_SIGN_ENVELOPE **a,
X509_ALGOR_free);
M_ASN1_D2I_get(ret->enc_data,d2i_PKCS7_ENC_CONTENT);
M_ASN1_D2I_get_IMP_set_opt_type(X509,ret->cert,d2i_X509,X509_free,0);
- M_ASN1_D2I_get_IMP_set_opt(ret->crl,d2i_X509_CRL,X509_CRL_free,1);
+ M_ASN1_D2I_get_IMP_set_opt_type(X509_CRL,ret->crl,d2i_X509_CRL,
+ X509_CRL_free,1);
M_ASN1_D2I_get_set(ret->signer_info,d2i_PKCS7_SIGNER_INFO,
PKCS7_SIGNER_INFO_free);
@@ -133,7 +134,7 @@ void PKCS7_SIGN_ENVELOPE_free(PKCS7_SIGN_ENVELOPE *a)
sk_X509_ALGOR_pop_free(a->md_algs,X509_ALGOR_free);
PKCS7_ENC_CONTENT_free(a->enc_data);
sk_X509_pop_free(a->cert,X509_free);
- sk_pop_free(a->crl,X509_CRL_free);
+ sk_X509_CRL_pop_free(a->crl,X509_CRL_free);
sk_pop_free(a->signer_info,PKCS7_SIGNER_INFO_free);
Free((char *)a);
}
diff --git a/crypto/asn1/p7_signd.c b/crypto/asn1/p7_signd.c
index 1dbde84d4c..f7a15a30f2 100644
--- a/crypto/asn1/p7_signd.c
+++ b/crypto/asn1/p7_signd.c
@@ -69,7 +69,7 @@ int i2d_PKCS7_SIGNED(PKCS7_SIGNED *a, unsigned char **pp)
M_ASN1_I2D_len_SET_type(X509_ALGOR,a->md_algs,i2d_X509_ALGOR);
M_ASN1_I2D_len(a->contents,i2d_PKCS7);
M_ASN1_I2D_len_IMP_SEQUENCE_opt_type(X509,a->cert,i2d_X509,0);
- M_ASN1_I2D_len_IMP_SET_opt(a->crl,i2d_X509_CRL,1);
+ M_ASN1_I2D_len_IMP_SET_opt_type(X509_CRL,a->crl,i2d_X509_CRL,1);
M_ASN1_I2D_len_SET(a->signer_info,i2d_PKCS7_SIGNER_INFO);
M_ASN1_I2D_seq_total();
@@ -78,7 +78,7 @@ int i2d_PKCS7_SIGNED(PKCS7_SIGNED *a, unsigned char **pp)
M_ASN1_I2D_put_SET_type(X509_ALGOR,a->md_algs,i2d_X509_ALGOR);
M_ASN1_I2D_put(a->contents,i2d_PKCS7);
M_ASN1_I2D_put_IMP_SEQUENCE_opt_type(X509,a->cert,i2d_X509,0);
- M_ASN1_I2D_put_IMP_SET_opt(a->crl,i2d_X509_CRL,1);
+ M_ASN1_I2D_put_IMP_SET_opt_type(X509_CRL,a->crl,i2d_X509_CRL,1);
M_ASN1_I2D_put_SET(a->signer_info,i2d_PKCS7_SIGNER_INFO);
M_ASN1_I2D_finish();
@@ -96,7 +96,8 @@ PKCS7_SIGNED *d2i_PKCS7_SIGNED(PKCS7_SIGNED **a, unsigned char **pp,
X509_ALGOR_free);
M_ASN1_D2I_get(ret->contents,d2i_PKCS7);
M_ASN1_D2I_get_IMP_set_opt_type(X509,ret->cert,d2i_X509,X509_free,0);
- M_ASN1_D2I_get_IMP_set_opt(ret->crl,d2i_X509_CRL,X509_CRL_free,1);
+ M_ASN1_D2I_get_IMP_set_opt_type(X509_CRL,ret->crl,d2i_X509_CRL,
+ X509_CRL_free,1);
M_ASN1_D2I_get_set(ret->signer_info,d2i_PKCS7_SIGNER_INFO,
PKCS7_SIGNER_INFO_free);
@@ -126,10 +127,12 @@ void PKCS7_SIGNED_free(PKCS7_SIGNED *a)
sk_X509_ALGOR_pop_free(a->md_algs,X509_ALGOR_free);
PKCS7_free(a->contents);
sk_X509_pop_free(a->cert,X509_free);
- sk_pop_free(a->crl,X509_CRL_free);
+ sk_X509_CRL_pop_free(a->crl,X509_CRL_free);
sk_pop_free(a->signer_info,PKCS7_SIGNER_INFO_free);
Free((char *)a);
}
IMPLEMENT_STACK_OF(X509_ALGOR)
IMPLEMENT_ASN1_SET_OF(X509_ALGOR)
+IMPLEMENT_STACK_OF(X509_CRL)
+IMPLEMENT_ASN1_SET_OF(X509_CRL)
diff --git a/crypto/pkcs7/pk7_lib.c b/crypto/pkcs7/pk7_lib.c
index e121ebf003..79f6f612dd 100644
--- a/crypto/pkcs7/pk7_lib.c
+++ b/crypto/pkcs7/pk7_lib.c
@@ -262,7 +262,7 @@ int PKCS7_add_certificate(PKCS7 *p7, X509 *x509)
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl)
{
int i;
- STACK **sk;
+ STACK_OF(X509_CRL) **sk;
i=OBJ_obj2nid(p7->type);
switch (i)
@@ -279,10 +279,10 @@ int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl)
}
if (*sk == NULL)
- *sk=sk_new_null();
+ *sk=sk_X509_CRL_new_null();
CRYPTO_add(&crl->references,1,CRYPTO_LOCK_X509_CRL);
- sk_push(*sk,(char *)crl);
+ sk_X509_CRL_push(*sk,crl);
return(1);
}
diff --git a/crypto/pkcs7/pkcs7.h b/crypto/pkcs7/pkcs7.h
index 9d6ae038a4..d10a14cf7d 100644
--- a/crypto/pkcs7/pkcs7.h
+++ b/crypto/pkcs7/pkcs7.h
@@ -112,7 +112,7 @@ typedef struct pkcs7_signed_st
ASN1_INTEGER *version; /* version 1 */
STACK_OF(X509_ALGOR) *md_algs; /* md used */
STACK_OF(X509) *cert; /* [ 0 ] */
- STACK /* X509_CRL */ *crl; /* [ 1 ] */
+ STACK_OF(X509_CRL) *crl; /* [ 1 ] */
STACK /* PKCS7_SIGNER_INFO */ *signer_info;
struct pkcs7_st *contents;
@@ -140,7 +140,7 @@ typedef struct pkcs7_signedandenveloped_st
ASN1_INTEGER *version; /* version 1 */
STACK_OF(X509_ALGOR) *md_algs; /* md used */
STACK_OF(X509) *cert; /* [ 0 ] */
- STACK /* X509_CRL */ *crl; /* [ 1 ] */
+ STACK_OF(X509_CRL) *crl; /* [ 1 ] */
STACK /* PKCS7_SIGNER_INFO */ *signer_info;
PKCS7_ENC_CONTENT *enc_data;
diff --git a/crypto/x509/x509.h b/crypto/x509/x509.h
index 125dbcfe2e..d15712c561 100644
--- a/crypto/x509/x509.h
+++ b/crypto/x509/x509.h
@@ -275,6 +275,9 @@ typedef struct X509_crl_st
int references;
} X509_CRL;
+DECLARE_STACK_OF(X509_CRL)
+DECLARE_ASN1_SET_OF(X509_CRL)
+
typedef struct private_key_st
{
int version;