xref: /onnv-gate/usr/src/common/openssl/doc/crypto/EVP_PKEY_new.pod (revision 2175:b0b2f052a486)
1*2175Sjp161948=pod
2*2175Sjp161948
3*2175Sjp161948=head1 NAME
4*2175Sjp161948
5*2175Sjp161948EVP_PKEY_new, EVP_PKEY_free - private key allocation functions.
6*2175Sjp161948
7*2175Sjp161948=head1 SYNOPSIS
8*2175Sjp161948
9*2175Sjp161948 #include <openssl/evp.h>
10*2175Sjp161948
11*2175Sjp161948 EVP_PKEY *EVP_PKEY_new(void);
12*2175Sjp161948 void EVP_PKEY_free(EVP_PKEY *key);
13*2175Sjp161948
14*2175Sjp161948
15*2175Sjp161948=head1 DESCRIPTION
16*2175Sjp161948
17*2175Sjp161948The EVP_PKEY_new() function allocates an empty B<EVP_PKEY>
18*2175Sjp161948structure which is used by OpenSSL to store private keys.
19*2175Sjp161948
20*2175Sjp161948EVP_PKEY_free() frees up the private key B<key>.
21*2175Sjp161948
22*2175Sjp161948=head1 NOTES
23*2175Sjp161948
24*2175Sjp161948The B<EVP_PKEY> structure is used by various OpenSSL functions
25*2175Sjp161948which require a general private key without reference to any
26*2175Sjp161948particular algorithm.
27*2175Sjp161948
28*2175Sjp161948The structure returned by EVP_PKEY_new() is empty. To add a
29*2175Sjp161948private key to this empty structure the functions described in
30*2175Sjp161948L<EVP_PKEY_set1_RSA(3)|EVP_PKEY_set1_RSA(3)> should be used.
31*2175Sjp161948
32*2175Sjp161948=head1 RETURN VALUES
33*2175Sjp161948
34*2175Sjp161948EVP_PKEY_new() returns either the newly allocated B<EVP_PKEY>
35*2175Sjp161948structure of B<NULL> if an error occurred.
36*2175Sjp161948
37*2175Sjp161948EVP_PKEY_free() does not return a value.
38*2175Sjp161948
39*2175Sjp161948=head1 SEE ALSO
40*2175Sjp161948
41*2175Sjp161948L<EVP_PKEY_set1_RSA(3)|EVP_PKEY_set1_RSA(3)>
42*2175Sjp161948
43*2175Sjp161948=head1 HISTORY
44*2175Sjp161948
45*2175Sjp161948TBA
46*2175Sjp161948
47*2175Sjp161948=cut
48