=pod

=head1 NAME

CMS_EncryptedData_set1_key - Sets the cipher and key for
CMS EncryptedData

=head1 SYNOPSIS

 #include <openssl/cms.h>

 int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph,
                                const unsigned char *key, size_t keylen);

=head1 DESCRIPTION

CMS_EncryptedData_set1_key() takes in a I<cms> EncryptedData object and sets
the appropriate attributes to I<ciph>, it makes a copy of the symmetric I<key>
of size I<keylen>. AEAD cipher algorithms are not supported.

=head1 RETURN VALUES

CMS_EncryptedData_set1_key() returns 0 if an error occurred otherwise
returns 1.

=head1 SEE ALSO

L<CMS_EncryptedData_encrypt(3)>, L<CMS_EncryptedData_decrypt(3)>

=head1 COPYRIGHT

Copyright 2025 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
