summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/cms/cms_env.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/cms/cms_env.c')
-rw-r--r--src/lib/libcrypto/cms/cms_env.c94
1 files changed, 40 insertions, 54 deletions
diff --git a/src/lib/libcrypto/cms/cms_env.c b/src/lib/libcrypto/cms/cms_env.c
index fbfbdd98ca..d6bf34c02a 100644
--- a/src/lib/libcrypto/cms/cms_env.c
+++ b/src/lib/libcrypto/cms/cms_env.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: cms_env.c,v 1.16 2019/08/10 18:15:52 jsing Exp $ */ 1/* $OpenBSD: cms_env.c,v 1.17 2019/08/11 10:38:27 jsing Exp $ */
2/* 2/*
3 * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 3 * Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
4 * project. 4 * project.
@@ -69,8 +69,7 @@ CMS_EnvelopedData *
69cms_get0_enveloped(CMS_ContentInfo *cms) 69cms_get0_enveloped(CMS_ContentInfo *cms)
70{ 70{
71 if (OBJ_obj2nid(cms->contentType) != NID_pkcs7_enveloped) { 71 if (OBJ_obj2nid(cms->contentType) != NID_pkcs7_enveloped) {
72 CMSerr(CMS_F_CMS_GET0_ENVELOPED, 72 CMSerror(CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA);
73 CMS_R_CONTENT_TYPE_NOT_ENVELOPED_DATA);
74 return NULL; 73 return NULL;
75 } 74 }
76 return cms->d.envelopedData; 75 return cms->d.envelopedData;
@@ -82,7 +81,7 @@ cms_enveloped_data_init(CMS_ContentInfo *cms)
82 if (cms->d.other == NULL) { 81 if (cms->d.other == NULL) {
83 cms->d.envelopedData = M_ASN1_new_of(CMS_EnvelopedData); 82 cms->d.envelopedData = M_ASN1_new_of(CMS_EnvelopedData);
84 if (!cms->d.envelopedData) { 83 if (!cms->d.envelopedData) {
85 CMSerr(CMS_F_CMS_ENVELOPED_DATA_INIT, ERR_R_MALLOC_FAILURE); 84 CMSerror(ERR_R_MALLOC_FAILURE);
86 return NULL; 85 return NULL;
87 } 86 }
88 cms->d.envelopedData->version = 0; 87 cms->d.envelopedData->version = 0;
@@ -116,12 +115,11 @@ cms_env_asn1_ctrl(CMS_RecipientInfo *ri, int cmd)
116 return 1; 115 return 1;
117 i = pkey->ameth->pkey_ctrl(pkey, ASN1_PKEY_CTRL_CMS_ENVELOPE, cmd, ri); 116 i = pkey->ameth->pkey_ctrl(pkey, ASN1_PKEY_CTRL_CMS_ENVELOPE, cmd, ri);
118 if (i == -2) { 117 if (i == -2) {
119 CMSerr(CMS_F_CMS_ENV_ASN1_CTRL, 118 CMSerror(CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE);
120 CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE);
121 return 0; 119 return 0;
122 } 120 }
123 if (i <= 0) { 121 if (i <= 0) {
124 CMSerr(CMS_F_CMS_ENV_ASN1_CTRL, CMS_R_CTRL_FAILURE); 122 CMSerror(CMS_R_CTRL_FAILURE);
125 return 0; 123 return 0;
126 } 124 }
127 125
@@ -177,7 +175,7 @@ CMS_EnvelopedData_create(const EVP_CIPHER *cipher)
177 175
178 merr: 176 merr:
179 CMS_ContentInfo_free(cms); 177 CMS_ContentInfo_free(cms);
180 CMSerr(CMS_F_CMS_ENVELOPEDDATA_CREATE, ERR_R_MALLOC_FAILURE); 178 CMSerror(ERR_R_MALLOC_FAILURE);
181 return NULL; 179 return NULL;
182} 180}
183 181
@@ -255,8 +253,7 @@ CMS_add1_recipient_cert(CMS_ContentInfo *cms, X509 *recip, unsigned int flags)
255 253
256 pk = X509_get0_pubkey(recip); 254 pk = X509_get0_pubkey(recip);
257 if (!pk) { 255 if (!pk) {
258 CMSerr(CMS_F_CMS_ADD1_RECIPIENT_CERT, 256 CMSerror(CMS_R_ERROR_GETTING_PUBLIC_KEY);
259 CMS_R_ERROR_GETTING_PUBLIC_KEY);
260 goto err; 257 goto err;
261 } 258 }
262 259
@@ -273,8 +270,7 @@ CMS_add1_recipient_cert(CMS_ContentInfo *cms, X509 *recip, unsigned int flags)
273 break; 270 break;
274 271
275 default: 272 default:
276 CMSerr(CMS_F_CMS_ADD1_RECIPIENT_CERT, 273 CMSerror(CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE);
277 CMS_R_NOT_SUPPORTED_FOR_THIS_KEY_TYPE);
278 goto err; 274 goto err;
279 275
280 } 276 }
@@ -285,7 +281,7 @@ CMS_add1_recipient_cert(CMS_ContentInfo *cms, X509 *recip, unsigned int flags)
285 return ri; 281 return ri;
286 282
287 merr: 283 merr:
288 CMSerr(CMS_F_CMS_ADD1_RECIPIENT_CERT, ERR_R_MALLOC_FAILURE); 284 CMSerror(ERR_R_MALLOC_FAILURE);
289 err: 285 err:
290 M_ASN1_free_of(ri, CMS_RecipientInfo); 286 M_ASN1_free_of(ri, CMS_RecipientInfo);
291 return NULL; 287 return NULL;
@@ -298,7 +294,7 @@ CMS_RecipientInfo_ktri_get0_algs(CMS_RecipientInfo *ri, EVP_PKEY **pk,
298 CMS_KeyTransRecipientInfo *ktri; 294 CMS_KeyTransRecipientInfo *ktri;
299 295
300 if (ri->type != CMS_RECIPINFO_TRANS) { 296 if (ri->type != CMS_RECIPINFO_TRANS) {
301 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_ALGS, CMS_R_NOT_KEY_TRANSPORT); 297 CMSerror(CMS_R_NOT_KEY_TRANSPORT);
302 return 0; 298 return 0;
303 } 299 }
304 300
@@ -321,8 +317,7 @@ CMS_RecipientInfo_ktri_get0_signer_id(CMS_RecipientInfo *ri,
321 CMS_KeyTransRecipientInfo *ktri; 317 CMS_KeyTransRecipientInfo *ktri;
322 318
323 if (ri->type != CMS_RECIPINFO_TRANS) { 319 if (ri->type != CMS_RECIPINFO_TRANS) {
324 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_GET0_SIGNER_ID, 320 CMSerror(CMS_R_NOT_KEY_TRANSPORT);
325 CMS_R_NOT_KEY_TRANSPORT);
326 return 0; 321 return 0;
327 } 322 }
328 ktri = ri->d.ktri; 323 ktri = ri->d.ktri;
@@ -334,8 +329,7 @@ int
334CMS_RecipientInfo_ktri_cert_cmp(CMS_RecipientInfo *ri, X509 *cert) 329CMS_RecipientInfo_ktri_cert_cmp(CMS_RecipientInfo *ri, X509 *cert)
335{ 330{
336 if (ri->type != CMS_RECIPINFO_TRANS) { 331 if (ri->type != CMS_RECIPINFO_TRANS) {
337 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_CERT_CMP, 332 CMSerror(CMS_R_NOT_KEY_TRANSPORT);
338 CMS_R_NOT_KEY_TRANSPORT);
339 return -2; 333 return -2;
340 } 334 }
341 335
@@ -346,7 +340,7 @@ int
346CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey) 340CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey)
347{ 341{
348 if (ri->type != CMS_RECIPINFO_TRANS) { 342 if (ri->type != CMS_RECIPINFO_TRANS) {
349 CMSerr(CMS_F_CMS_RECIPIENTINFO_SET0_PKEY, CMS_R_NOT_KEY_TRANSPORT); 343 CMSerror(CMS_R_NOT_KEY_TRANSPORT);
350 return 0; 344 return 0;
351 } 345 }
352 EVP_PKEY_free(ri->d.ktri->pkey); 346 EVP_PKEY_free(ri->d.ktri->pkey);
@@ -369,7 +363,7 @@ cms_RecipientInfo_ktri_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
369 int ret = 0; 363 int ret = 0;
370 364
371 if (ri->type != CMS_RECIPINFO_TRANS) { 365 if (ri->type != CMS_RECIPINFO_TRANS) {
372 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT, CMS_R_NOT_KEY_TRANSPORT); 366 CMSerror(CMS_R_NOT_KEY_TRANSPORT);
373 return 0; 367 return 0;
374 } 368 }
375 ktri = ri->d.ktri; 369 ktri = ri->d.ktri;
@@ -391,7 +385,7 @@ cms_RecipientInfo_ktri_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
391 385
392 if (EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_ENCRYPT, 386 if (EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_ENCRYPT,
393 EVP_PKEY_CTRL_CMS_ENCRYPT, 0, ri) <= 0) { 387 EVP_PKEY_CTRL_CMS_ENCRYPT, 0, ri) <= 0) {
394 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT, CMS_R_CTRL_ERROR); 388 CMSerror(CMS_R_CTRL_ERROR);
395 goto err; 389 goto err;
396 } 390 }
397 391
@@ -401,7 +395,7 @@ cms_RecipientInfo_ktri_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
401 ek = OPENSSL_malloc(eklen); 395 ek = OPENSSL_malloc(eklen);
402 396
403 if (ek == NULL) { 397 if (ek == NULL) {
404 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_ENCRYPT, ERR_R_MALLOC_FAILURE); 398 CMSerror(ERR_R_MALLOC_FAILURE);
405 goto err; 399 goto err;
406 } 400 }
407 401
@@ -436,7 +430,7 @@ cms_RecipientInfo_ktri_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
436 ec = cms->d.envelopedData->encryptedContentInfo; 430 ec = cms->d.envelopedData->encryptedContentInfo;
437 431
438 if (ktri->pkey == NULL) { 432 if (ktri->pkey == NULL) {
439 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT, CMS_R_NO_PRIVATE_KEY); 433 CMSerror(CMS_R_NO_PRIVATE_KEY);
440 return 0; 434 return 0;
441 } 435 }
442 436
@@ -452,7 +446,7 @@ cms_RecipientInfo_ktri_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
452 446
453 if (EVP_PKEY_CTX_ctrl(ktri->pctx, -1, EVP_PKEY_OP_DECRYPT, 447 if (EVP_PKEY_CTX_ctrl(ktri->pctx, -1, EVP_PKEY_OP_DECRYPT,
454 EVP_PKEY_CTRL_CMS_DECRYPT, 0, ri) <= 0) { 448 EVP_PKEY_CTRL_CMS_DECRYPT, 0, ri) <= 0) {
455 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT, CMS_R_CTRL_ERROR); 449 CMSerror(CMS_R_CTRL_ERROR);
456 goto err; 450 goto err;
457 } 451 }
458 452
@@ -463,13 +457,13 @@ cms_RecipientInfo_ktri_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
463 ek = OPENSSL_malloc(eklen); 457 ek = OPENSSL_malloc(eklen);
464 458
465 if (ek == NULL) { 459 if (ek == NULL) {
466 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT, ERR_R_MALLOC_FAILURE); 460 CMSerror(ERR_R_MALLOC_FAILURE);
467 goto err; 461 goto err;
468 } 462 }
469 463
470 if (EVP_PKEY_decrypt(ktri->pctx, ek, &eklen, ktri->encryptedKey->data, 464 if (EVP_PKEY_decrypt(ktri->pctx, ek, &eklen, ktri->encryptedKey->data,
471 ktri->encryptedKey->length) <= 0) { 465 ktri->encryptedKey->length) <= 0) {
472 CMSerr(CMS_F_CMS_RECIPIENTINFO_KTRI_DECRYPT, CMS_R_CMS_LIB); 466 CMSerror(CMS_R_CMS_LIB);
473 goto err; 467 goto err;
474 } 468 }
475 469
@@ -498,7 +492,7 @@ CMS_RecipientInfo_kekri_id_cmp(CMS_RecipientInfo *ri, const unsigned char *id,
498 CMS_KEKRecipientInfo *kekri; 492 CMS_KEKRecipientInfo *kekri;
499 493
500 if (ri->type != CMS_RECIPINFO_KEK) { 494 if (ri->type != CMS_RECIPINFO_KEK) {
501 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_ID_CMP, CMS_R_NOT_KEK); 495 CMSerror(CMS_R_NOT_KEK);
502 return -2; 496 return -2;
503 } 497 }
504 kekri = ri->d.kekri; 498 kekri = ri->d.kekri;
@@ -558,7 +552,7 @@ CMS_add0_recipient_key(CMS_ContentInfo *cms, int nid, unsigned char *key,
558 break; 552 break;
559 553
560 default: 554 default:
561 CMSerr(CMS_F_CMS_ADD0_RECIPIENT_KEY, CMS_R_INVALID_KEY_LENGTH); 555 CMSerror(CMS_R_INVALID_KEY_LENGTH);
562 goto err; 556 goto err;
563 } 557 }
564 558
@@ -567,13 +561,12 @@ CMS_add0_recipient_key(CMS_ContentInfo *cms, int nid, unsigned char *key,
567 size_t exp_keylen = aes_wrap_keylen(nid); 561 size_t exp_keylen = aes_wrap_keylen(nid);
568 562
569 if (!exp_keylen) { 563 if (!exp_keylen) {
570 CMSerr(CMS_F_CMS_ADD0_RECIPIENT_KEY, 564 CMSerror(CMS_R_UNSUPPORTED_KEK_ALGORITHM);
571 CMS_R_UNSUPPORTED_KEK_ALGORITHM);
572 goto err; 565 goto err;
573 } 566 }
574 567
575 if (keylen != exp_keylen) { 568 if (keylen != exp_keylen) {
576 CMSerr(CMS_F_CMS_ADD0_RECIPIENT_KEY, CMS_R_INVALID_KEY_LENGTH); 569 CMSerror(CMS_R_INVALID_KEY_LENGTH);
577 goto err; 570 goto err;
578 } 571 }
579 572
@@ -622,7 +615,7 @@ CMS_add0_recipient_key(CMS_ContentInfo *cms, int nid, unsigned char *key,
622 return ri; 615 return ri;
623 616
624 merr: 617 merr:
625 CMSerr(CMS_F_CMS_ADD0_RECIPIENT_KEY, ERR_R_MALLOC_FAILURE); 618 CMSerror(ERR_R_MALLOC_FAILURE);
626 err: 619 err:
627 M_ASN1_free_of(ri, CMS_RecipientInfo); 620 M_ASN1_free_of(ri, CMS_RecipientInfo);
628 return NULL; 621 return NULL;
@@ -636,7 +629,7 @@ CMS_RecipientInfo_kekri_get0_id(CMS_RecipientInfo *ri, X509_ALGOR **palg,
636 CMS_KEKIdentifier *rkid; 629 CMS_KEKIdentifier *rkid;
637 630
638 if (ri->type != CMS_RECIPINFO_KEK) { 631 if (ri->type != CMS_RECIPINFO_KEK) {
639 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_GET0_ID, CMS_R_NOT_KEK); 632 CMSerror(CMS_R_NOT_KEK);
640 return 0; 633 return 0;
641 } 634 }
642 rkid = ri->d.kekri->kekid; 635 rkid = ri->d.kekri->kekid;
@@ -669,7 +662,7 @@ CMS_RecipientInfo_set0_key(CMS_RecipientInfo *ri, unsigned char *key,
669 CMS_KEKRecipientInfo *kekri; 662 CMS_KEKRecipientInfo *kekri;
670 663
671 if (ri->type != CMS_RECIPINFO_KEK) { 664 if (ri->type != CMS_RECIPINFO_KEK) {
672 CMSerr(CMS_F_CMS_RECIPIENTINFO_SET0_KEY, CMS_R_NOT_KEK); 665 CMSerror(CMS_R_NOT_KEK);
673 return 0; 666 return 0;
674 } 667 }
675 668
@@ -695,25 +688,24 @@ cms_RecipientInfo_kekri_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
695 kekri = ri->d.kekri; 688 kekri = ri->d.kekri;
696 689
697 if (!kekri->key) { 690 if (!kekri->key) {
698 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT, CMS_R_NO_KEY); 691 CMSerror(CMS_R_NO_KEY);
699 return 0; 692 return 0;
700 } 693 }
701 694
702 if (AES_set_encrypt_key(kekri->key, kekri->keylen << 3, &actx)) { 695 if (AES_set_encrypt_key(kekri->key, kekri->keylen << 3, &actx)) {
703 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT, 696 CMSerror(CMS_R_ERROR_SETTING_KEY);
704 CMS_R_ERROR_SETTING_KEY);
705 goto err; 697 goto err;
706 } 698 }
707 699
708 wkey = OPENSSL_malloc(ec->keylen + 8); 700 wkey = OPENSSL_malloc(ec->keylen + 8);
709 if (wkey == NULL) { 701 if (wkey == NULL) {
710 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT, ERR_R_MALLOC_FAILURE); 702 CMSerror(ERR_R_MALLOC_FAILURE);
711 goto err; 703 goto err;
712 } 704 }
713 705
714 wkeylen = AES_wrap_key(&actx, NULL, wkey, ec->key, ec->keylen); 706 wkeylen = AES_wrap_key(&actx, NULL, wkey, ec->key, ec->keylen);
715 if (wkeylen <= 0) { 707 if (wkeylen <= 0) {
716 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_ENCRYPT, CMS_R_WRAP_ERROR); 708 CMSerror(CMS_R_WRAP_ERROR);
717 goto err; 709 goto err;
718 } 710 }
719 711
@@ -745,34 +737,31 @@ cms_RecipientInfo_kekri_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
745 kekri = ri->d.kekri; 737 kekri = ri->d.kekri;
746 738
747 if (!kekri->key) { 739 if (!kekri->key) {
748 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, CMS_R_NO_KEY); 740 CMSerror(CMS_R_NO_KEY);
749 return 0; 741 return 0;
750 } 742 }
751 743
752 wrap_nid = OBJ_obj2nid(kekri->keyEncryptionAlgorithm->algorithm); 744 wrap_nid = OBJ_obj2nid(kekri->keyEncryptionAlgorithm->algorithm);
753 if (aes_wrap_keylen(wrap_nid) != kekri->keylen) { 745 if (aes_wrap_keylen(wrap_nid) != kekri->keylen) {
754 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, 746 CMSerror(CMS_R_INVALID_KEY_LENGTH);
755 CMS_R_INVALID_KEY_LENGTH);
756 return 0; 747 return 0;
757 } 748 }
758 749
759 /* If encrypted key length is invalid don't bother */ 750 /* If encrypted key length is invalid don't bother */
760 751
761 if (kekri->encryptedKey->length < 16) { 752 if (kekri->encryptedKey->length < 16) {
762 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, 753 CMSerror(CMS_R_INVALID_ENCRYPTED_KEY_LENGTH);
763 CMS_R_INVALID_ENCRYPTED_KEY_LENGTH);
764 goto err; 754 goto err;
765 } 755 }
766 756
767 if (AES_set_decrypt_key(kekri->key, kekri->keylen << 3, &actx)) { 757 if (AES_set_decrypt_key(kekri->key, kekri->keylen << 3, &actx)) {
768 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, 758 CMSerror(CMS_R_ERROR_SETTING_KEY);
769 CMS_R_ERROR_SETTING_KEY);
770 goto err; 759 goto err;
771 } 760 }
772 761
773 ukey = OPENSSL_malloc(kekri->encryptedKey->length - 8); 762 ukey = OPENSSL_malloc(kekri->encryptedKey->length - 8);
774 if (ukey == NULL) { 763 if (ukey == NULL) {
775 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, ERR_R_MALLOC_FAILURE); 764 CMSerror(ERR_R_MALLOC_FAILURE);
776 goto err; 765 goto err;
777 } 766 }
778 767
@@ -780,7 +769,7 @@ cms_RecipientInfo_kekri_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
780 kekri->encryptedKey->length); 769 kekri->encryptedKey->length);
781 770
782 if (ukeylen <= 0) { 771 if (ukeylen <= 0) {
783 CMSerr(CMS_F_CMS_RECIPIENTINFO_KEKRI_DECRYPT, CMS_R_UNWRAP_ERROR); 772 CMSerror(CMS_R_UNWRAP_ERROR);
784 goto err; 773 goto err;
785 } 774 }
786 775
@@ -812,8 +801,7 @@ CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
812 return cms_RecipientInfo_pwri_crypt(cms, ri, 0); 801 return cms_RecipientInfo_pwri_crypt(cms, ri, 0);
813 802
814 default: 803 default:
815 CMSerr(CMS_F_CMS_RECIPIENTINFO_DECRYPT, 804 CMSerror(CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE);
816 CMS_R_UNSUPPORTED_RECIPIENTINFO_TYPE);
817 return 0; 805 return 0;
818 } 806 }
819} 807}
@@ -835,8 +823,7 @@ CMS_RecipientInfo_encrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri)
835 return cms_RecipientInfo_pwri_crypt(cms, ri, 1); 823 return cms_RecipientInfo_pwri_crypt(cms, ri, 1);
836 824
837 default: 825 default:
838 CMSerr(CMS_F_CMS_RECIPIENTINFO_ENCRYPT, 826 CMSerror(CMS_R_UNSUPPORTED_RECIPIENT_TYPE);
839 CMS_R_UNSUPPORTED_RECIPIENT_TYPE);
840 return 0; 827 return 0;
841 } 828 }
842} 829}
@@ -935,8 +922,7 @@ cms_EnvelopedData_init_bio(CMS_ContentInfo *cms)
935 for (i = 0; i < sk_CMS_RecipientInfo_num(rinfos); i++) { 922 for (i = 0; i < sk_CMS_RecipientInfo_num(rinfos); i++) {
936 ri = sk_CMS_RecipientInfo_value(rinfos, i); 923 ri = sk_CMS_RecipientInfo_value(rinfos, i);
937 if (CMS_RecipientInfo_encrypt(cms, ri) <= 0) { 924 if (CMS_RecipientInfo_encrypt(cms, ri) <= 0) {
938 CMSerr(CMS_F_CMS_ENVELOPEDDATA_INIT_BIO, 925 CMSerror(CMS_R_ERROR_SETTING_RECIPIENTINFO);
939 CMS_R_ERROR_SETTING_RECIPIENTINFO);
940 goto err; 926 goto err;
941 } 927 }
942 } 928 }