mirror of
https://github.com/openssl/openssl.git
synced 2024-12-09 05:51:54 +08:00
a528d4f0a9
If something was "present in all versions" of SSLeay, or if it was added to a version of SSLeay (and therefore predates OpenSSL), remove mention of it. Documentation history now starts with OpenSSL. Remove mention of all history before OpenSSL 0.9.8, inclusive. Remove all AUTHOR sections. Reviewed-by: Tim Hudson <tjh@openssl.org>
54 lines
1.5 KiB
Plaintext
54 lines
1.5 KiB
Plaintext
=pod
|
|
|
|
=head1 NAME
|
|
|
|
PKCS12_parse - parse a PKCS#12 structure
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
#include <openssl/pkcs12.h>
|
|
|
|
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509) **ca);
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
PKCS12_parse() parses a PKCS12 structure.
|
|
|
|
B<p12> is the B<PKCS12> structure to parse. B<pass> is the passphrase to use.
|
|
If successful the private key will be written to B<*pkey>, the corresponding
|
|
certificate to B<*cert> and any additional certificates to B<*ca>.
|
|
|
|
=head1 NOTES
|
|
|
|
The parameters B<pkey> and B<cert> cannot be B<NULL>. B<ca> can be <NULL> in
|
|
which case additional certificates will be discarded. B<*ca> can also be a
|
|
valid STACK in which case additional certificates are appended to B<*ca>. If
|
|
B<*ca> is B<NULL> a new STACK will be allocated.
|
|
|
|
The B<friendlyName> and B<localKeyID> attributes (if present) on each
|
|
certificate will be stored in the B<alias> and B<keyid> attributes of the
|
|
B<X509> structure.
|
|
|
|
=head1 RETURN VALUES
|
|
|
|
PKCS12_parse() returns 1 for success and zero if an error occurred.
|
|
|
|
The error can be obtained from L<ERR_get_error(3)>
|
|
|
|
=head1 BUGS
|
|
|
|
Only a single private key and corresponding certificate is returned by this
|
|
function. More complex PKCS#12 files with multiple private keys will only
|
|
return the first match.
|
|
|
|
Only B<friendlyName> and B<localKeyID> attributes are currently stored in
|
|
certificates. Other attributes are discarded.
|
|
|
|
Attributes currently cannot be stored in the private key B<EVP_PKEY> structure.
|
|
|
|
=head1 SEE ALSO
|
|
|
|
L<d2i_PKCS12(3)>
|
|
|
|
=cut
|