1=pod 2 3=head1 NAME 4 5EVP_PKEY_print_public, EVP_PKEY_print_private, EVP_PKEY_print_params - public key algorithm printing routines. 6 7=head1 SYNOPSIS 8 9 #include <openssl/evp.h> 10 11 int EVP_PKEY_print_public(BIO *out, const EVP_PKEY *pkey, 12 int indent, ASN1_PCTX *pctx); 13 int EVP_PKEY_print_private(BIO *out, const EVP_PKEY *pkey, 14 int indent, ASN1_PCTX *pctx); 15 int EVP_PKEY_print_params(BIO *out, const EVP_PKEY *pkey, 16 int indent, ASN1_PCTX *pctx); 17 18=head1 DESCRIPTION 19 20The functions EVP_PKEY_print_public(), EVP_PKEY_print_private() and 21EVP_PKEY_print_params() print out the public, private or parameter components 22of key B<pkey> respectively. The key is sent to BIO B<out> in human readable 23form. The parameter B<indent> indicated how far the printout should be indented. 24 25The B<pctx> parameter allows the print output to be finely tuned by using 26ASN1 printing options. If B<pctx> is set to NULL then default values will 27be used. 28 29=head1 NOTES 30 31Currently no public key algorithms include any options in the B<pctx> parameter 32parameter. 33 34If the key does not include all the components indicated by the function then 35only those contained in the key will be printed. For example passing a public 36key to EVP_PKEY_print_private() will only print the public components. 37 38=head1 RETURN VALUES 39 40These functions all return 1 for success and 0 or a negative value for failure. 41In particular a return value of -2 indicates the operation is not supported by 42the public key algorithm. 43 44=head1 SEE ALSO 45 46L<EVP_PKEY_CTX_new(3)|EVP_PKEY_CTX_new(3)>, 47L<EVP_PKEY_keygen(3)|EVP_PKEY_keygen(3)> 48 49=head1 HISTORY 50 51These functions were first added to OpenSSL 1.0.0. 52 53=cut 54