diff options
author | Dr. Stephen Henson <steve@openssl.org> | 1999-12-29 02:59:18 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 1999-12-29 02:59:18 +0000 |
commit | f45f40fffff1348ce2b12c9da520a1ea88567294 (patch) | |
tree | b2db6279ebb534b83d5dc653f96d97b9fe8f238f /crypto/asn1 | |
parent | 6447cce37251e6d947279a3fd6874e59ed0d3d2d (diff) |
Add OIDs for idea and blowfish. Unfortunately these are in
the middle of the OID table so the diff is rather large :-(
Diffstat (limited to 'crypto/asn1')
-rw-r--r-- | crypto/asn1/asn1.h | 1 | ||||
-rw-r--r-- | crypto/asn1/asn1_err.c | 1 | ||||
-rw-r--r-- | crypto/asn1/p5_pbev2.c | 13 |
3 files changed, 12 insertions, 3 deletions
diff --git a/crypto/asn1/asn1.h b/crypto/asn1/asn1.h index ccec930522..a24775d4fa 100644 --- a/crypto/asn1/asn1.h +++ b/crypto/asn1/asn1.h @@ -999,6 +999,7 @@ void ASN1_STRING_TABLE_cleanup(void); #define ASN1_R_BN_LIB 107 #define ASN1_R_BOOLEAN_IS_WRONG_LENGTH 108 #define ASN1_R_BUFFER_TOO_SMALL 109 +#define ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER 166 #define ASN1_R_DATA_IS_WRONG 110 #define ASN1_R_DECODE_ERROR 155 #define ASN1_R_DECODING_ERROR 111 diff --git a/crypto/asn1/asn1_err.c b/crypto/asn1/asn1_err.c index 3471c48165..62aa5f4988 100644 --- a/crypto/asn1/asn1_err.c +++ b/crypto/asn1/asn1_err.c @@ -275,6 +275,7 @@ static ERR_STRING_DATA ASN1_str_reasons[]= {ASN1_R_BN_LIB ,"bn lib"}, {ASN1_R_BOOLEAN_IS_WRONG_LENGTH ,"boolean is wrong length"}, {ASN1_R_BUFFER_TOO_SMALL ,"buffer too small"}, +{ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER ,"cipher has no object identifier"}, {ASN1_R_DATA_IS_WRONG ,"data is wrong"}, {ASN1_R_DECODE_ERROR ,"decode error"}, {ASN1_R_DECODING_ERROR ,"decoding error"}, diff --git a/crypto/asn1/p5_pbev2.c b/crypto/asn1/p5_pbev2.c index 19888473e6..502a8c399d 100644 --- a/crypto/asn1/p5_pbev2.c +++ b/crypto/asn1/p5_pbev2.c @@ -175,15 +175,22 @@ X509_ALGOR *PKCS5_pbe2_set(const EVP_CIPHER *cipher, int iter, PBKDF2PARAM *kdf = NULL; PBE2PARAM *pbe2 = NULL; ASN1_OCTET_STRING *osalt = NULL; + ASN1_OBJECT *obj; + + alg_nid = EVP_CIPHER_type(cipher); + obj = OBJ_nid2obj(alg_nid); + if(!obj || !obj->data) { + ASN1err(ASN1_F_PKCS5_PBE2_SET, + ASN1_R_CIPHER_HAS_NO_OBJECT_IDENTIFIER); + goto err; + } if(!(pbe2 = PBE2PARAM_new())) goto merr; /* Setup the AlgorithmIdentifier for the encryption scheme */ scheme = pbe2->encryption; - alg_nid = EVP_CIPHER_type(cipher); - - scheme->algorithm = OBJ_nid2obj(alg_nid); + scheme->algorithm = obj; if(!(scheme->parameter = ASN1_TYPE_new())) goto merr; /* Create random IV */ |