Add documentation for CMS_EnvelopedData_create()
authorJakub Zelenka <jakub.openssl@gmail.com>
Sun, 12 Apr 2020 20:29:41 +0000 (21:29 +0100)
committerDmitry Belyavskiy <beldmit@gmail.com>
Thu, 7 May 2020 07:55:57 +0000 (10:55 +0300)
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/11529)

doc/man3/CMS_EnvelopedData_create.pod [new file with mode: 0644]
util/missingcrypto.txt

diff --git a/doc/man3/CMS_EnvelopedData_create.pod b/doc/man3/CMS_EnvelopedData_create.pod
new file mode 100644 (file)
index 0000000..625daa8
--- /dev/null
@@ -0,0 +1,52 @@
+=pod
+
+=head1 NAME
+
+CMS_EnvelopedData_create - Create CMS envelope
+
+=head1 SYNOPSIS
+
+ #include <openssl/cms.h>
+
+ CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher);
+
+=head1 DESCRIPTION
+
+CMS_EnvelopedData_create() creates a B<CMS_ContentInfo> structure with
+a type B<NID_pkcs7_enveloped>. B<cipher> is the symmetric cipher to use.
+
+The algorithm passed in the B<cipher> parameter must support ASN1 encoding of
+its parameters.
+
+The recipients can be added later using L<CMS_add1_recipient_cert(3)> or
+L<CMS_add0_recipient_key(3)>.
+
+The B<CMS_ContentInfo> structure needs to be finalized using L<CMS_final(3)>
+and then freed using L<CMS_ContentInfo_free(3)>.
+
+=head1 NOTES
+
+Although CMS_EnvelopedData_create() allocates a new B<CMS_ContentInfo>
+structure it is usually not used in applications. The wrappers
+L<CMS_encrypt(3)> and L<CMS_decrypt(3)> are often used instead.
+
+=head1 RETURN VALUES
+
+If the allocation fails, CMS_EnvelopedData_create() returns NULL and sets
+an error code that can be obtained by L<ERR_get_error(3)>.
+Otherwise it returns a pointer to the newly allocated structure.
+
+=head1 SEE ALSO
+
+L<ERR_get_error(3)>, L<CMS_encrypt(3)>, L<CMS_decrypt(3)>, L<CMS_final(3)>
+
+=head1 COPYRIGHT
+
+Copyright 2020 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
+L<https://www.openssl.org/source/license.html>.
+
+=cut
index a84428d733bafcf2469a2b33999e1b0dcb2678b7..0f53ea5e558b3db4e7a403ef9e6492d04cf50f56 100644 (file)
@@ -314,7 +314,6 @@ CMS_ContentInfo_it(3)
 CMS_EncryptedData_decrypt(3)
 CMS_EncryptedData_encrypt(3)
 CMS_EncryptedData_set1_key(3)
-CMS_EnvelopedData_create(3)
 CMS_ReceiptRequest_it(3)
 CMS_RecipientEncryptedKey_cert_cmp(3)
 CMS_RecipientEncryptedKey_get0_id(3)