From 3a984990c2398055734e8113cedf37c6d3c6a17e Mon Sep 17 00:00:00 2001 From: Chris Conlon Date: Fri, 10 Jan 2014 16:17:02 -0700 Subject: [PATCH] update pkcs7.h --- cyassl/ctaocrypt/pkcs7.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/cyassl/ctaocrypt/pkcs7.h b/cyassl/ctaocrypt/pkcs7.h index ceb7cdb5e..72acf14c2 100644 --- a/cyassl/ctaocrypt/pkcs7.h +++ b/cyassl/ctaocrypt/pkcs7.h @@ -46,12 +46,11 @@ enum PKCS7_TYPES { }; enum Pkcs7_Misc { + MAX_ENCRYPTED_KEY_SZ = 512, /* max enc. key size, RSA <= 4096 */ + MAX_CONTENT_KEY_LEN = DES3_KEYLEN, MAX_RECIP_SZ = MAX_VERSION_SZ + MAX_SEQ_SZ + ASN_NAME_MAX + MAX_SN_SZ + - MAX_SEQ_SZ + MAX_ALGO_SZ + 1 + - MAX_ENCRYPTED_KEY_SZ - MAX_CONTENT_KEY_LEN = DES3_KEYLEN, - MAX_ENCRYPTED_KEY_SZ = 512, /* max enc. key size, RSA <= 4096 */ + MAX_SEQ_SZ + MAX_ALGO_SZ + 1 + MAX_ENCRYPTED_KEY_SZ }; CYASSL_API int Pkcs7_encrypt(const byte* certs, word32 certSz, byte* data, @@ -59,6 +58,11 @@ CYASSL_API int Pkcs7_encrypt(const byte* certs, word32 certSz, byte* data, word32* outSz, word32 flags); CYASSL_LOCAL int SetContentType(int pkcs7TypeOID, byte* output); +CYASSL_LOCAL int CreateRecipientInfo(const byte* cert, word32 certSz, + int keyEncAlgo, int blockKeySz, + RNG* rng, byte* contentKeyPlain, + byte* contentKeyEnc, + int* keyEncSz, byte* out, word32 outSz); #ifdef __cplusplus } /* extern "C" */