1=pod
2
3=head1 NAME
4
5 CMS_final - finalise a CMS_ContentInfo structure
6
7=head1 SYNOPSIS
8
9 #include <openssl/cms.h>
10
11 int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont, unsigned int flags);
12
13=head1 DESCRIPTION
14
15CMS_final() finalises the structure B<cms>. It's purpose is to perform any
16operations necessary on B<cms> (digest computation for example) and set the
17appropriate fields. The parameter B<data> contains the content to be 
18processed. The B<dcont> parameter contains a BIO to write content to after
19processing: this is only used with detached data and will usually be set to
20NULL.
21
22=head1 NOTES
23
24This function will normally be called when the B<CMS_PARTIAL> flag is used. It
25should only be used when streaming is not performed because the streaming
26I/O functions perform finalisation operations internally.
27
28=head1 RETURN VALUES
29
30CMS_final() returns 1 for success or 0 for failure.
31
32=head1 SEE ALSO
33
34L<ERR_get_error(3)|ERR_get_error(3)>, L<CMS_sign(3)|CMS_sign(3)>,
35L<CMS_encrypt(3)|CMS_encrypt(3)>
36
37=head1 HISTORY
38
39CMS_final() was added to OpenSSL 0.9.8
40
41=cut
42