227ca839b2a4b9e644b26b224e62aa981998073b
[openssl.git] / doc / crypto / CMS_final.pod
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
15 CMS_final() finalises the structure B<cms>. It's purpose is to perform any
16 operations necessary on B<cms> (digest computation for example) and set the
17 appropriate fields. The parameter B<data> contains the content to be 
18 processed. The B<dcont> parameter contains a BIO to write content to after
19 processing: this is only used with detached data and will usually be set to
20 NULL.
21
22 =head1 NOTES
23
24 This function will normally be called when the B<CMS_PARTIAL> flag is used. It
25 should only be used when streaming is not performed because the streaming
26 I/O functions perform finalisation operations internally.
27
28 =head1 RETURN VALUES
29
30 CMS_final() returns 1 for success or 0 for failure.
31
32 =head1 SEE ALSO
33
34 L<ERR_get_error(3)>, L<CMS_sign(3)>,
35 L<CMS_encrypt(3)>
36
37 =head1 HISTORY
38
39 CMS_final() was added to OpenSSL 0.9.8
40
41 =cut