=pod

=head1 NAME

 i2d_CMS_bio_stream - output CMS_ContentInfo structure in BER format.

=head1 SYNOPSIS

 #include <openssl/cms.h>

 int i2d_CMS_bio_stream(BIO *out, CMS_ContentInfo *cms, BIO *data, int flags);

=head1 DESCRIPTION

i2d_CMS_bio_stream() outputs a CMS_ContentInfo structure in BER format.

It is otherwise identical to the function SMIME_write_CMS().

=head1 NOTES

This function is effectively a version of the i2d_CMS_bio() supporting
streaming.

=head1 BUGS

The prefix "i2d" is arguably wrong because the function outputs BER format.

=head1 RETURN VALUES

i2d_CMS_bio_stream() returns 1 for success or 0 for failure.

=head1 SEE ALSO

L<ERR_get_error(3)|ERR_get_error(3)>, L<CMS_sign(3)|CMS_sign(3)>,
L<CMS_verify(3)|CMS_verify(3)>, L<CMS_encrypt(3)|CMS_encrypt(3)>
L<CMS_decrypt(3)|CMS_decrypt(3)>,
L<SMIME_write_CMS(3)|SMIME_write_CMS(3)>,
L<PEM_write_bio_CMS_stream(3)|PEM_write_bio_CMS_stream(3)>

=head1 HISTORY

i2d_CMS_bio_stream() was added to OpenSSL 1.0.0

=cut
