OpenSSL SMIME_write_PKCS7(3openssl)
NNNNAAAAMMMMEEEESMIME_write_PKCS7 - convert PKCS#7 structure to S/MIME
format. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS#include
int SMIME_write_PKCS7(BIO *out, PKCS7 *p7, BIO *data, int flags);
DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNNSMIME_write_PKCS7() adds the appropriate MIME headers to a
PKCS#7 structure to produce an S/MIME message.
oooouuuutttt is the BIO to write the data to. pppp7777 is the appropriate PPPPKKKKCCCCSSSS7777 structure. If cleartext signing (mmmmuuuullllttttiiiippppaaaarrrrtttt////ssssiiiiggggnnnneeeedddd) is being used then the signed data must be supplied in the ddddaaaattttaaaa argument. ffffllllaaaaggggssss is an optional set of flags. NNNNOOOOTTTTEEEESSSS The following flags can be passed in the ffffllllaaaaggggssss parameter.If PPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD is set then cleartext signing will be
used, this option only makes sense for signedData wherePPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD is also set when PKCS7_sign() is also called.
If the PPPPKKKKCCCCSSSS7777_TTTTEEEEXXXXTTTT flag is set MIME headers for type
tttteeeexxxxtttt////ppppllllaaaaiiiinnnn are added to the content, this only makes senseif PPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD is also set.
If the PPPPKKKKCCCCSSSS7777_PPPPAAAARRRRTTTTSSSSIIIIGGGGNNNN flag is set the signed data is
finalized and output along with the content. This flagshould only be set if PPPPKKKKCCCCSSSS7777_DDDDEEEETTTTAAAACCCCHHHHEEEEDDDD is also set and the
previous call to PKCS7_sign() also set these flags.
If cleartext signing is being used and PPPPKKKKCCCCSSSS7777_PPPPAAAARRRRTTTTSSSSIIIIGGGGNNNN not
set then the data must be read twice: once to compute thesignature in PKCS7_sign() and once to output the S/MIME
message. BBBBUUUUGGGGSSSSSMIME_write_PKCS7() always base64 encodes PKCS#7 structures,
there should be an option to disable this. RRRREEEETTTTUUUURRRRNNNN VVVVAAAALLLLUUUUEEEESSSSSMIME_write_PKCS7() returns 1 for success or 0 for failure.
SSSSEEEEEEEE AAAALLLLSSSSOOOOERR_get_error(3), PKCS7_sign(3), PKCS7_verify(3),
PKCS7_encrypt(3) PKCS7_decrypt(3)
27/Mar/2010 Last change: 0.9.8o 1
OpenSSL SMIME_write_PKCS7(3openssl)
HHHHIIIISSSSTTTTOOOORRRRYYYYSMIME_write_PKCS7() was added to OpenSSL 0.9.5
27/Mar/2010 Last change: 0.9.8o 2