PEM_WRITE_BIO_CMS_STREAM(3ossl)
π PEM_WRITE_BIO_CMS_STREAM(3ossl) β the OpenSSL glow-up
okay so bestie, this is the manual page for PEM_WRITE_BIO_CMS_STREAM(3ossl) from OpenSSL, and honestly? it's a short one, but she serves. let's get into it π
β¨ NAME β¨
PEM_write_bio_CMS_stream β output a CMS_ContentInfo structure in PEM format. that's it, that's the whole job, and she does it flawlessly π
πΈ SYNOPSIS πΈ
#include <openssl/cms.h>
int PEM_write_bio_CMS_stream(BIO *out, CMS_ContentInfo *cms, BIO *data, int flags);
look at that signature. four args, zero drama. iconic π
π¦ DESCRIPTION π¦
so PEM_write_bio_CMS_stream() outputs a CMS_ContentInfo structure in PEM format. yes, PEM β the cute lil -----BEGIN text-y one, not the raw binary one.
and like, everything else about it? it is otherwise identical to the function SMIME_write_CMS(). literally identical in every other way, no cap. so if you already know that one, you already know this one π«Ά
β NOTES β
this function is effectively a version of PEM_write_bio_CMS() that supports streaming. that's the whole tea β same energy, but she can stream π₯
π RETURN VALUES π
PEM_write_bio_CMS_stream() returns 1 for success or 0 for failure.
so likeβ¦ check your return values, bestie. 0 means something went wrong and you should go ask ERR_get_error(3) what happened π
π SEE ALSO π
ERR_get_error(3)CMS_sign(3)CMS_verify(3)CMS_encrypt(3)CMS_decrypt(3)PEM_write(3)SMIME_write_CMS(3)i2d_CMS_bio_stream(3)
(the CMS_encrypt(3) and CMS_decrypt(3) entries are listed on one line in the original β that's not a typo, that's just how the manpage flexes β¨)
π§ HISTORY π§
the PEM_write_bio_CMS_stream() function was added in OpenSSL 1.0.0. she's been around. she's a legacy queen π
π COPYRIGHT π
Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved.
Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.
fr fr read the license before you go copy-pasting, that's the one thing you gotta actually do π
and that's the page!! mwah π this was OpenSSL 3.5.0, dated 2026-09-25, and the page itself is PEM_WRITE_BIO_CMS_STREAM(3ossl) β take care of her, she's a streamer π¦β¨
π¦ where this page comes from
- opensuse-leap 16.0: openssl-3-doc 3.5.0-160000.11.1 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms