L<foo|foo> is sub-optimal If the xref is the same as the title, which is what we do, then you only need L<foo>. This fixes all 1457 occurrences in 349 files. Approximately. (And pod used to need both.) Reviewed-by: Richard Levitte <levitte@openssl.org>
		
			
				
	
	
		
			57 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
=pod
 | 
						|
 | 
						|
=head1 NAME
 | 
						|
 | 
						|
d2i_PKCS8PrivateKey_bio, d2i_PKCS8PrivateKey_fp,
 | 
						|
i2d_PKCS8PrivateKey_bio, i2d_PKCS8PrivateKey_fp,
 | 
						|
i2d_PKCS8PrivateKey_nid_bio, i2d_PKCS8PrivateKey_nid_fp - PKCS#8 format private key functions
 | 
						|
 | 
						|
=head1 SYNOPSIS
 | 
						|
 | 
						|
 #include <openssl/evp.h>
 | 
						|
 | 
						|
 EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, void *u);
 | 
						|
 EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u);
 | 
						|
 | 
						|
 int i2d_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY *x, const EVP_CIPHER *enc,
 | 
						|
				  char *kstr, int klen,
 | 
						|
				  pem_password_cb *cb, void *u);
 | 
						|
 | 
						|
 int i2d_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,
 | 
						|
				  char *kstr, int klen,
 | 
						|
				  pem_password_cb *cb, void *u);
 | 
						|
 | 
						|
 int i2d_PKCS8PrivateKey_nid_bio(BIO *bp, EVP_PKEY *x, int nid,
 | 
						|
				  char *kstr, int klen,
 | 
						|
				  pem_password_cb *cb, void *u);
 | 
						|
 | 
						|
 int i2d_PKCS8PrivateKey_nid_fp(FILE *fp, EVP_PKEY *x, int nid,
 | 
						|
				  char *kstr, int klen,
 | 
						|
				  pem_password_cb *cb, void *u);
 | 
						|
 | 
						|
=head1 DESCRIPTION
 | 
						|
 | 
						|
The PKCS#8 functions encode and decode private keys in PKCS#8 format using both
 | 
						|
PKCS#5 v1.5 and PKCS#5 v2.0 password based encryption algorithms.
 | 
						|
 | 
						|
Other than the use of DER as opposed to PEM these functions are identical to the
 | 
						|
corresponding B<PEM> function as described in the L<pem(3)> manual page.
 | 
						|
 | 
						|
=head1 NOTES
 | 
						|
 | 
						|
Before using these functions L<OpenSSL_add_all_algorithms(3)>
 | 
						|
should be called to initialize the internal algorithm lookup tables otherwise errors about
 | 
						|
unknown algorithms will occur if an attempt is made to decrypt a private key. 
 | 
						|
 | 
						|
These functions are currently the only way to store encrypted private keys using DER format.
 | 
						|
 | 
						|
Currently all the functions use BIOs or FILE pointers, there are no functions which
 | 
						|
work directly on memory: this can be readily worked around by converting the buffers
 | 
						|
to memory BIOs, see L<BIO_s_mem(3)> for details.
 | 
						|
 | 
						|
=head1 SEE ALSO
 | 
						|
 | 
						|
L<pem(3)>
 | 
						|
 | 
						|
=cut
 |