summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/libcrypto/doc/DH_generate_key.pod3
-rw-r--r--src/lib/libcrypto/doc/DH_generate_parameters.pod10
-rw-r--r--src/lib/libcrypto/doc/DH_get_ex_new_index.pod3
-rw-r--r--src/lib/libcrypto/doc/DH_new.pod6
-rw-r--r--src/lib/libcrypto/doc/DSA_get_ex_new_index.pod3
-rw-r--r--src/lib/libcrypto/doc/DSA_set_method.pod8
-rw-r--r--src/lib/libcrypto/doc/EVP_DigestInit.pod22
-rw-r--r--src/lib/libcrypto/doc/EVP_DigestSignInit.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_DigestVerifyInit.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_EncryptInit.pod59
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_CTX_ctrl.pod11
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_CTX_new.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_cmp.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_derive.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_keygen.pod5
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_print_private.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_set1_RSA.pod4
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_verify.pod3
-rw-r--r--src/lib/libcrypto/doc/EVP_PKEY_verify_recover.pod6
-rw-r--r--src/lib/libcrypto/doc/EVP_VerifyInit.pod7
-rw-r--r--src/lib/libcrypto/doc/OBJ_nid2obj.pod6
-rw-r--r--src/lib/libcrypto/doc/OPENSSL_VERSION_NUMBER.pod4
-rw-r--r--src/lib/libcrypto/doc/OpenSSL_add_all_algorithms.pod24
-rw-r--r--src/lib/libcrypto/doc/PEM_read_bio_PrivateKey.pod24
-rw-r--r--src/lib/libcrypto/doc/PEM_write_bio_CMS_stream.pod2
-rw-r--r--src/lib/libcrypto/doc/PKCS12_create.pod14
-rw-r--r--src/lib/libcrypto/doc/PKCS7_decrypt.pod10
-rw-r--r--src/lib/libcrypto/doc/PKCS7_verify.pod12
-rw-r--r--src/lib/libcrypto/doc/RAND_bytes.pod9
-rw-r--r--src/lib/libcrypto/doc/RAND_load_file.pod3
-rw-r--r--src/lib/libcrypto/doc/RSA_blinding_on.pod3
-rw-r--r--src/lib/libcrypto/doc/RSA_get_ex_new_index.pod24
-rw-r--r--src/lib/libcrypto/doc/RSA_new.pod6
-rw-r--r--src/lib/libcrypto/doc/RSA_private_encrypt.pod7
-rw-r--r--src/lib/libcrypto/doc/RSA_sign_ASN1_OCTET_STRING.pod3
-rw-r--r--src/lib/libcrypto/doc/SHA1.pod3
-rw-r--r--src/lib/libcrypto/doc/X509_NAME_add_entry_by_txt.pod5
-rw-r--r--src/lib/libcrypto/doc/X509_NAME_print_ex.pod42
-rw-r--r--src/lib/libcrypto/doc/X509_STORE_CTX_get_error.pod62
-rw-r--r--src/lib/libcrypto/doc/X509_STORE_CTX_get_ex_new_index.pod4
-rw-r--r--src/lib/libcrypto/doc/X509_STORE_CTX_new.pod6
-rw-r--r--src/lib/libcrypto/doc/X509_STORE_set_verify_cb_func.pod3
-rw-r--r--src/lib/libcrypto/doc/X509_VERIFY_PARAM_set_flags.pod7
-rw-r--r--src/lib/libcrypto/doc/bn.pod8
-rw-r--r--src/lib/libcrypto/doc/d2i_RSAPublicKey.pod8
-rw-r--r--src/lib/libcrypto/doc/dh.pod9
-rw-r--r--src/lib/libssl/src/doc/crypto/ASN1_OBJECT_new.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/ASN1_STRING_print_ex.pod33
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_ctrl.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_f_buffer.pod15
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_f_cipher.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_find_type.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_new.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_s_bio.pod51
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_s_fd.pod8
-rw-r--r--src/lib/libssl/src/doc/crypto/BIO_set_callback.pod5
-rw-r--r--src/lib/libssl/src/doc/crypto/BN_add.pod5
-rw-r--r--src/lib/libssl/src/doc/crypto/BN_add_word.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/BN_cmp.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/BN_generate_prime.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/BN_mod_inverse.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/BUF_MEM_new.pod16
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_add0_cert.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_add1_recipient_cert.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_decrypt.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_encrypt.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_final.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_get0_RecipientInfos.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_get0_SignerInfos.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_get0_type.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_get1_ReceiptRequest.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_sign.pod7
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_sign_add1_signer.pod8
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_sign_receipt.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_uncompress.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_verify.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CMS_verify_receipt.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CONF_modules_free.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/CONF_modules_load_file.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/CRYPTO_set_ex_data.pod15
-rw-r--r--src/lib/libssl/src/doc/crypto/DH_generate_key.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/DH_generate_parameters.pod10
-rw-r--r--src/lib/libssl/src/doc/crypto/DH_get_ex_new_index.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/DH_new.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/DSA_get_ex_new_index.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/DSA_set_method.pod8
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_DigestInit.pod22
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_DigestSignInit.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_DigestVerifyInit.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_EncryptInit.pod59
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_ctrl.pod11
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_new.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_cmp.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_derive.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_keygen.pod5
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_print_private.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_set1_RSA.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_verify.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_PKEY_verify_recover.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/EVP_VerifyInit.pod7
-rw-r--r--src/lib/libssl/src/doc/crypto/OBJ_nid2obj.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/OPENSSL_VERSION_NUMBER.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/OpenSSL_add_all_algorithms.pod24
-rw-r--r--src/lib/libssl/src/doc/crypto/PEM_read_bio_PrivateKey.pod24
-rw-r--r--src/lib/libssl/src/doc/crypto/PEM_write_bio_CMS_stream.pod2
-rw-r--r--src/lib/libssl/src/doc/crypto/PKCS12_create.pod14
-rw-r--r--src/lib/libssl/src/doc/crypto/PKCS7_decrypt.pod10
-rw-r--r--src/lib/libssl/src/doc/crypto/PKCS7_verify.pod12
-rw-r--r--src/lib/libssl/src/doc/crypto/RAND_bytes.pod9
-rw-r--r--src/lib/libssl/src/doc/crypto/RAND_load_file.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/RSA_blinding_on.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/RSA_get_ex_new_index.pod24
-rw-r--r--src/lib/libssl/src/doc/crypto/RSA_new.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/RSA_private_encrypt.pod7
-rw-r--r--src/lib/libssl/src/doc/crypto/RSA_sign_ASN1_OCTET_STRING.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/SHA1.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_NAME_add_entry_by_txt.pod5
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_NAME_print_ex.pod42
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_error.pod62
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_ex_new_index.pod4
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_STORE_CTX_new.pod6
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_STORE_set_verify_cb_func.pod3
-rw-r--r--src/lib/libssl/src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod7
-rw-r--r--src/lib/libssl/src/doc/crypto/bn.pod8
-rw-r--r--src/lib/libssl/src/doc/crypto/d2i_PKCS8PrivateKey.pod20
-rw-r--r--src/lib/libssl/src/doc/crypto/d2i_RSAPublicKey.pod8
-rw-r--r--src/lib/libssl/src/doc/crypto/dh.pod9
-rw-r--r--src/lib/libssl/src/doc/crypto/lhash.pod3
128 files changed, 714 insertions, 497 deletions
diff --git a/src/lib/libcrypto/doc/DH_generate_key.pod b/src/lib/libcrypto/doc/DH_generate_key.pod
index 81f09fdf45..148e13762b 100644
--- a/src/lib/libcrypto/doc/DH_generate_key.pod
+++ b/src/lib/libcrypto/doc/DH_generate_key.pod
@@ -40,7 +40,8 @@ The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
40 40
41=head1 SEE ALSO 41=head1 SEE ALSO
42 42
43L<dh(3)|dh(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<rand(3)|rand(3)>, L<DH_size(3)|DH_size(3)> 43L<dh(3)|dh(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<rand(3)|rand(3)>,
44L<DH_size(3)|DH_size(3)>
44 45
45=head1 HISTORY 46=head1 HISTORY
46 47
diff --git a/src/lib/libcrypto/doc/DH_generate_parameters.pod b/src/lib/libcrypto/doc/DH_generate_parameters.pod
index 862aa0c39a..d19e0217ee 100644
--- a/src/lib/libcrypto/doc/DH_generate_parameters.pod
+++ b/src/lib/libcrypto/doc/DH_generate_parameters.pod
@@ -23,11 +23,11 @@ seeded prior to calling DH_generate_parameters().
23B<prime_len> is the length in bits of the safe prime to be generated. 23B<prime_len> is the length in bits of the safe prime to be generated.
24B<generator> is a small number E<gt> 1, typically 2 or 5. 24B<generator> is a small number E<gt> 1, typically 2 or 5.
25 25
26A callback function may be used to provide feedback about the progress 26A callback function may be used to provide feedback about the progress of the
27of the key generation. If B<callback> is not B<NULL>, it will be 27key generation. If B<callback> is not B<NULL>, it will be called as described
28called as described in L<BN_generate_prime(3)|BN_generate_prime(3)> while a random prime 28in L<BN_generate_prime(3)|BN_generate_prime(3)> while a random prime number is
29number is generated, and when a prime has been found, B<callback(3, 29generated, and when a prime has been found, B<callback(3, 0, cb_arg)> is
300, cb_arg)> is called. 30called.
31 31
32DH_check() validates Diffie-Hellman parameters. It checks that B<p> is 32DH_check() validates Diffie-Hellman parameters. It checks that B<p> is
33a safe prime, and that B<g> is a suitable generator. In the case of an 33a safe prime, and that B<g> is a suitable generator. In the case of an
diff --git a/src/lib/libcrypto/doc/DH_get_ex_new_index.pod b/src/lib/libcrypto/doc/DH_get_ex_new_index.pod
index fa5eab2650..934ec094bb 100644
--- a/src/lib/libcrypto/doc/DH_get_ex_new_index.pod
+++ b/src/lib/libcrypto/doc/DH_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data - add application specific data to DH structures 5DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data - add application specific
6data to DH structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/DH_new.pod b/src/lib/libcrypto/doc/DH_new.pod
index 60c930093e..d6c3ca82b5 100644
--- a/src/lib/libcrypto/doc/DH_new.pod
+++ b/src/lib/libcrypto/doc/DH_new.pod
@@ -21,9 +21,9 @@ erased before the memory is returned to the system.
21 21
22=head1 RETURN VALUES 22=head1 RETURN VALUES
23 23
24If the allocation fails, DH_new() returns B<NULL> and sets an error 24If the allocation fails, DH_new() returns B<NULL> and sets an error code that
25code that can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns 25can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns a
26a pointer to the newly allocated structure. 26pointer to the newly allocated structure.
27 27
28DH_free() returns no value. 28DH_free() returns no value.
29 29
diff --git a/src/lib/libcrypto/doc/DSA_get_ex_new_index.pod b/src/lib/libcrypto/doc/DSA_get_ex_new_index.pod
index fb6efc1182..e2fcabf370 100644
--- a/src/lib/libcrypto/doc/DSA_get_ex_new_index.pod
+++ b/src/lib/libcrypto/doc/DSA_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data - add application specific data to DSA structures 5DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data - add application
6specific data to DSA structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/DSA_set_method.pod b/src/lib/libcrypto/doc/DSA_set_method.pod
index 5ad7362f58..707370adf7 100644
--- a/src/lib/libcrypto/doc/DSA_set_method.pod
+++ b/src/lib/libcrypto/doc/DSA_set_method.pod
@@ -103,8 +103,8 @@ B<DSA_METHOD>s.
103 103
104DSA_set_default_method() returns no value. 104DSA_set_default_method() returns no value.
105 105
106DSA_set_method() returns non-zero if the provided B<meth> was successfully set as 106DSA_set_method() returns non-zero if the provided B<meth> was successfully set
107the method for B<dsa> (including unloading the ENGINE handle if the previous 107as the method for B<dsa> (including unloading the ENGINE handle if the previous
108method was supplied by an ENGINE). 108method was supplied by an ENGINE).
109 109
110DSA_new_method() returns NULL and sets an error code that can be 110DSA_new_method() returns NULL and sets an error code that can be
@@ -117,8 +117,8 @@ As of version 0.9.7, DSA_METHOD implementations are grouped together with other
117algorithmic APIs (eg. RSA_METHOD, EVP_CIPHER, etc) in B<ENGINE> modules. If a 117algorithmic APIs (eg. RSA_METHOD, EVP_CIPHER, etc) in B<ENGINE> modules. If a
118default ENGINE is specified for DSA functionality using an ENGINE API function, 118default ENGINE is specified for DSA functionality using an ENGINE API function,
119that will override any DSA defaults set using the DSA API (ie. 119that will override any DSA defaults set using the DSA API (ie.
120DSA_set_default_method()). For this reason, the ENGINE API is the recommended way 120DSA_set_default_method()). For this reason, the ENGINE API is the recommended
121to control default implementations for use in DSA and other cryptographic 121way to control default implementations for use in DSA and other cryptographic
122algorithms. 122algorithms.
123 123
124=head1 SEE ALSO 124=head1 SEE ALSO
diff --git a/src/lib/libcrypto/doc/EVP_DigestInit.pod b/src/lib/libcrypto/doc/EVP_DigestInit.pod
index dcc5d73f69..2ff01b9c7c 100644
--- a/src/lib/libcrypto/doc/EVP_DigestInit.pod
+++ b/src/lib/libcrypto/doc/EVP_DigestInit.pod
@@ -4,12 +4,12 @@
4 4
5EVP_MD_CTX_init, EVP_MD_CTX_create, EVP_DigestInit_ex, EVP_DigestUpdate, 5EVP_MD_CTX_init, EVP_MD_CTX_create, EVP_DigestInit_ex, EVP_DigestUpdate,
6EVP_DigestFinal_ex, EVP_MD_CTX_cleanup, EVP_MD_CTX_destroy, EVP_MAX_MD_SIZE, 6EVP_DigestFinal_ex, EVP_MD_CTX_cleanup, EVP_MD_CTX_destroy, EVP_MAX_MD_SIZE,
7EVP_MD_CTX_copy_ex, EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size, 7EVP_MD_CTX_copy_ex, EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type,
8EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size, EVP_MD_CTX_block_size, EVP_MD_CTX_type, 8EVP_MD_size, EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size,
9EVP_md_null, EVP_md2, EVP_md5, EVP_sha, EVP_sha1, EVP_sha224, EVP_sha256, 9EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_md_null, EVP_md2, EVP_md5, EVP_sha,
10EVP_sha384, EVP_sha512, EVP_dss, EVP_dss1, EVP_mdc2, 10EVP_sha1, EVP_sha224, EVP_sha256, EVP_sha384, EVP_sha512, EVP_dss, EVP_dss1,
11EVP_ripemd160, EVP_get_digestbyname, EVP_get_digestbynid, EVP_get_digestbyobj - 11EVP_mdc2, EVP_ripemd160, EVP_get_digestbyname, EVP_get_digestbynid,
12EVP digest routines 12EVP_get_digestbyobj - EVP digest routines
13 13
14=head1 SYNOPSIS 14=head1 SYNOPSIS
15 15
@@ -127,11 +127,11 @@ normally used when setting ASN1 OIDs.
127EVP_MD_CTX_md() returns the B<EVP_MD> structure corresponding to the passed 127EVP_MD_CTX_md() returns the B<EVP_MD> structure corresponding to the passed
128B<EVP_MD_CTX>. 128B<EVP_MD_CTX>.
129 129
130EVP_MD_pkey_type() returns the NID of the public key signing algorithm associated 130EVP_MD_pkey_type() returns the NID of the public key signing algorithm
131with this digest. For example EVP_sha1() is associated with RSA so this will 131associated with this digest. For example EVP_sha1() is associated with RSA so
132return B<NID_sha1WithRSAEncryption>. Since digests and signature algorithms 132this will return B<NID_sha1WithRSAEncryption>. Since digests and signature
133are no longer linked this function is only retained for compatibility 133algorithms are no longer linked this function is only retained for
134reasons. 134compatibility reasons.
135 135
136EVP_md2(), EVP_md5(), EVP_sha(), EVP_sha1(), EVP_sha224(), EVP_sha256(), 136EVP_md2(), EVP_md5(), EVP_sha(), EVP_sha1(), EVP_sha224(), EVP_sha256(),
137EVP_sha384(), EVP_sha512(), EVP_mdc2() and EVP_ripemd160() return B<EVP_MD> 137EVP_sha384(), EVP_sha512(), EVP_mdc2() and EVP_ripemd160() return B<EVP_MD>
diff --git a/src/lib/libcrypto/doc/EVP_DigestSignInit.pod b/src/lib/libcrypto/doc/EVP_DigestSignInit.pod
index 11e8f6f937..7aec6daecc 100644
--- a/src/lib/libcrypto/doc/EVP_DigestSignInit.pod
+++ b/src/lib/libcrypto/doc/EVP_DigestSignInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_DigestSignInit, EVP_DigestSignUpdate, EVP_DigestSignFinal - EVP signing functions 5EVP_DigestSignInit, EVP_DigestSignUpdate, EVP_DigestSignFinal - EVP signing
6functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_DigestVerifyInit.pod b/src/lib/libcrypto/doc/EVP_DigestVerifyInit.pod
index 819e0d4b9f..60666bfddc 100644
--- a/src/lib/libcrypto/doc/EVP_DigestVerifyInit.pod
+++ b/src/lib/libcrypto/doc/EVP_DigestVerifyInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_DigestVerifyInit, EVP_DigestVerifyUpdate, EVP_DigestVerifyFinal - EVP signature verification functions 5EVP_DigestVerifyInit, EVP_DigestVerifyUpdate, EVP_DigestVerifyFinal - EVP
6signature verification functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_EncryptInit.pod b/src/lib/libcrypto/doc/EVP_EncryptInit.pod
index 84875e0fe0..d42445cf10 100644
--- a/src/lib/libcrypto/doc/EVP_EncryptInit.pod
+++ b/src/lib/libcrypto/doc/EVP_EncryptInit.pod
@@ -239,11 +239,13 @@ RC5 can be set.
239EVP_EncryptInit_ex(), EVP_EncryptUpdate() and EVP_EncryptFinal_ex() 239EVP_EncryptInit_ex(), EVP_EncryptUpdate() and EVP_EncryptFinal_ex()
240return 1 for success and 0 for failure. 240return 1 for success and 0 for failure.
241 241
242EVP_DecryptInit_ex() and EVP_DecryptUpdate() return 1 for success and 0 for failure. 242EVP_DecryptInit_ex() and EVP_DecryptUpdate() return 1 for success and 0 for
243EVP_DecryptFinal_ex() returns 0 if the decrypt failed or 1 for success. 243failure. EVP_DecryptFinal_ex() returns 0 if the decrypt failed or 1 for
244success.
244 245
245EVP_CipherInit_ex() and EVP_CipherUpdate() return 1 for success and 0 for failure. 246EVP_CipherInit_ex() and EVP_CipherUpdate() return 1 for success and 0 for
246EVP_CipherFinal_ex() returns 0 for a decryption failure or 1 for success. 247failure. EVP_CipherFinal_ex() returns 0 for a decryption failure or 1 for
248success.
247 249
248EVP_CIPHER_CTX_cleanup() returns 1 for success and 0 for failure. 250EVP_CIPHER_CTX_cleanup() returns 1 for success and 0 for failure.
249 251
@@ -285,11 +287,13 @@ Null cipher: does nothing.
285 287
286DES in CBC, ECB, CFB and OFB modes respectively. 288DES in CBC, ECB, CFB and OFB modes respectively.
287 289
288=item EVP_des_ede_cbc(void), EVP_des_ede(), EVP_des_ede_ofb(void), EVP_des_ede_cfb(void) 290=item EVP_des_ede_cbc(void), EVP_des_ede(), EVP_des_ede_ofb(void),
291EVP_des_ede_cfb(void)
289 292
290Two key triple DES in CBC, ECB, CFB and OFB modes respectively. 293Two key triple DES in CBC, ECB, CFB and OFB modes respectively.
291 294
292=item EVP_des_ede3_cbc(void), EVP_des_ede3(), EVP_des_ede3_ofb(void), EVP_des_ede3_cfb(void) 295=item EVP_des_ede3_cbc(void), EVP_des_ede3(), EVP_des_ede3_ofb(void),
296EVP_des_ede3_cfb(void)
293 297
294Three key triple DES in CBC, ECB, CFB and OFB modes respectively. 298Three key triple DES in CBC, ECB, CFB and OFB modes respectively.
295 299
@@ -299,44 +303,49 @@ DESX algorithm in CBC mode.
299 303
300=item EVP_rc4(void) 304=item EVP_rc4(void)
301 305
302RC4 stream cipher. This is a variable key length cipher with default key length 128 bits. 306RC4 stream cipher. This is a variable key length cipher with default key length
307128 bits.
303 308
304=item EVP_rc4_40(void) 309=item EVP_rc4_40(void)
305 310
306RC4 stream cipher with 40 bit key length. This is obsolete and new code should use EVP_rc4() 311RC4 stream cipher with 40 bit key length. This is obsolete and new code should
307and the EVP_CIPHER_CTX_set_key_length() function. 312use EVP_rc4() and the EVP_CIPHER_CTX_set_key_length() function.
308 313
309=item EVP_idea_cbc() EVP_idea_ecb(void), EVP_idea_cfb(void), EVP_idea_ofb(void), EVP_idea_cbc(void) 314=item EVP_idea_cbc() EVP_idea_ecb(void), EVP_idea_cfb(void),
315EVP_idea_ofb(void), EVP_idea_cbc(void)
310 316
311IDEA encryption algorithm in CBC, ECB, CFB and OFB modes respectively. 317IDEA encryption algorithm in CBC, ECB, CFB and OFB modes respectively.
312 318
313=item EVP_rc2_cbc(void), EVP_rc2_ecb(void), EVP_rc2_cfb(void), EVP_rc2_ofb(void) 319=item EVP_rc2_cbc(void), EVP_rc2_ecb(void), EVP_rc2_cfb(void), EVP_rc2_ofb(void)
314 320
315RC2 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 321RC2 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a
316length cipher with an additional parameter called "effective key bits" or "effective key length". 322variable key length cipher with an additional parameter called "effective key
317By default both are set to 128 bits. 323bits" or "effective key length". By default both are set to 128 bits.
318 324
319=item EVP_rc2_40_cbc(void), EVP_rc2_64_cbc(void) 325=item EVP_rc2_40_cbc(void), EVP_rc2_64_cbc(void)
320 326
321RC2 algorithm in CBC mode with a default key length and effective key length of 40 and 64 bits. 327RC2 algorithm in CBC mode with a default key length and effective key length of
322These are obsolete and new code should use EVP_rc2_cbc(), EVP_CIPHER_CTX_set_key_length() and 32840 and 64 bits. These are obsolete and new code should use EVP_rc2_cbc(),
323EVP_CIPHER_CTX_ctrl() to set the key length and effective key length. 329EVP_CIPHER_CTX_set_key_length() and EVP_CIPHER_CTX_ctrl() to set the key length
330and effective key length.
324 331
325=item EVP_bf_cbc(void), EVP_bf_ecb(void), EVP_bf_cfb(void), EVP_bf_ofb(void); 332=item EVP_bf_cbc(void), EVP_bf_ecb(void), EVP_bf_cfb(void), EVP_bf_ofb(void);
326 333
327Blowfish encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 334Blowfish encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This
328length cipher. 335is a variable key length cipher.
329 336
330=item EVP_cast5_cbc(void), EVP_cast5_ecb(void), EVP_cast5_cfb(void), EVP_cast5_ofb(void) 337=item EVP_cast5_cbc(void), EVP_cast5_ecb(void), EVP_cast5_cfb(void),
338EVP_cast5_ofb(void)
331 339
332CAST encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 340CAST encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is
333length cipher. 341a variable key length cipher.
334 342
335=item EVP_rc5_32_12_16_cbc(void), EVP_rc5_32_12_16_ecb(void), EVP_rc5_32_12_16_cfb(void), EVP_rc5_32_12_16_ofb(void) 343=item EVP_rc5_32_12_16_cbc(void), EVP_rc5_32_12_16_ecb(void),
344EVP_rc5_32_12_16_cfb(void), EVP_rc5_32_12_16_ofb(void)
336 345
337RC5 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key length 346RC5 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a
338cipher with an additional "number of rounds" parameter. By default the key length is set to 128 347variable key length cipher with an additional "number of rounds" parameter. By
339bits and 12 rounds. 348default the key length is set to 128 bits and 12 rounds.
340 349
341=back 350=back
342 351
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_CTX_ctrl.pod b/src/lib/libcrypto/doc/EVP_PKEY_CTX_ctrl.pod
index e8d1ddda75..ba6e51100b 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_CTX_ctrl.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_CTX_ctrl.pod
@@ -65,14 +65,15 @@ RSA_PKCS1_OAEP_PADDING for OAEP padding (encrypt and decrypt only),
65RSA_X931_PADDING for X9.31 padding (signature operations only) and 65RSA_X931_PADDING for X9.31 padding (signature operations only) and
66RSA_PKCS1_PSS_PADDING (sign and verify only). 66RSA_PKCS1_PSS_PADDING (sign and verify only).
67 67
68Two RSA padding modes behave differently if EVP_PKEY_CTX_set_signature_md() 68Two RSA padding modes behave differently if EVP_PKEY_CTX_set_signature_md() is
69is used. If this macro is called for PKCS#1 padding the plaintext buffer is 69used. If this macro is called for PKCS#1 padding the plaintext buffer is an
70an actual digest value and is encapsulated in a DigestInfo structure according 70actual digest value and is encapsulated in a DigestInfo structure according to
71to PKCS#1 when signing and this structure is expected (and stripped off) when 71PKCS#1 when signing and this structure is expected (and stripped off) when
72verifying. If this control is not used with RSA and PKCS#1 padding then the 72verifying. If this control is not used with RSA and PKCS#1 padding then the
73supplied data is used directly and not encapsulated. In the case of X9.31 73supplied data is used directly and not encapsulated. In the case of X9.31
74padding for RSA the algorithm identifier byte is added or checked and removed 74padding for RSA the algorithm identifier byte is added or checked and removed
75if this control is called. If it is not called then the first byte of the plaintext buffer is expected to be the algorithm identifier byte. 75if this control is called. If it is not called then the first byte of the
76plaintext buffer is expected to be the algorithm identifier byte.
76 77
77The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro sets the RSA PSS salt length to 78The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro sets the RSA PSS salt length to
78B<len> as its name implies it is only supported for PSS padding. Two special 79B<len> as its name implies it is only supported for PSS padding. Two special
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_CTX_new.pod b/src/lib/libcrypto/doc/EVP_PKEY_CTX_new.pod
index a9af867580..9822d6806f 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_CTX_new.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_CTX_new.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_CTX_new, EVP_PKEY_CTX_new_id, EVP_PKEY_CTX_dup, EVP_PKEY_CTX_free - public key algorithm context functions. 5EVP_PKEY_CTX_new, EVP_PKEY_CTX_new_id, EVP_PKEY_CTX_dup, EVP_PKEY_CTX_free -
6public key algorithm context functions.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_cmp.pod b/src/lib/libcrypto/doc/EVP_PKEY_cmp.pod
index 4145245299..c389216086 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_cmp.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_cmp.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_copy_parameters, EVP_PKEY_missing_parameters, EVP_PKEY_cmp_parameters, EVP_PKEY_cmp - public key parameter and comparison functions 5EVP_PKEY_copy_parameters, EVP_PKEY_missing_parameters, EVP_PKEY_cmp_parameters,
6EVP_PKEY_cmp - public key parameter and comparison functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_derive.pod b/src/lib/libcrypto/doc/EVP_PKEY_derive.pod
index de877ead1a..2424ce0e54 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_derive.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_derive.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_derive_init, EVP_PKEY_derive_set_peer, EVP_PKEY_derive - derive public key algorithm shared secret. 5EVP_PKEY_derive_init, EVP_PKEY_derive_set_peer, EVP_PKEY_derive - derive public
6key algorithm shared secret.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_keygen.pod b/src/lib/libcrypto/doc/EVP_PKEY_keygen.pod
index b6102da036..378fb310ff 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_keygen.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_keygen.pod
@@ -2,7 +2,10 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_keygen_init, EVP_PKEY_keygen, EVP_PKEY_paramgen_init, EVP_PKEY_paramgen, EVP_PKEY_CTX_set_cb, EVP_PKEY_CTX_get_cb, EVP_PKEY_CTX_get_keygen_info, EVP_PKEVP_PKEY_CTX_set_app_data, EVP_PKEY_CTX_get_app_data - key and parameter generation functions 5EVP_PKEY_keygen_init, EVP_PKEY_keygen, EVP_PKEY_paramgen_init,
6EVP_PKEY_paramgen, EVP_PKEY_CTX_set_cb, EVP_PKEY_CTX_get_cb,
7EVP_PKEY_CTX_get_keygen_info, EVP_PKEVP_PKEY_CTX_set_app_data,
8EVP_PKEY_CTX_get_app_data - key and parameter generation functions
6 9
7=head1 SYNOPSIS 10=head1 SYNOPSIS
8 11
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_print_private.pod b/src/lib/libcrypto/doc/EVP_PKEY_print_private.pod
index c9b7a89821..eabbaed264 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_print_private.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_print_private.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_print_public, EVP_PKEY_print_private, EVP_PKEY_print_params - public key algorithm printing routines. 5EVP_PKEY_print_public, EVP_PKEY_print_private, EVP_PKEY_print_params - public
6key algorithm printing routines.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_set1_RSA.pod b/src/lib/libcrypto/doc/EVP_PKEY_set1_RSA.pod
index 8afb1b22e1..c2031c3d0b 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_set1_RSA.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_set1_RSA.pod
@@ -4,8 +4,8 @@
4 4
5EVP_PKEY_set1_RSA, EVP_PKEY_set1_DSA, EVP_PKEY_set1_DH, EVP_PKEY_set1_EC_KEY, 5EVP_PKEY_set1_RSA, EVP_PKEY_set1_DSA, EVP_PKEY_set1_DH, EVP_PKEY_set1_EC_KEY,
6EVP_PKEY_get1_RSA, EVP_PKEY_get1_DSA, EVP_PKEY_get1_DH, EVP_PKEY_get1_EC_KEY, 6EVP_PKEY_get1_RSA, EVP_PKEY_get1_DSA, EVP_PKEY_get1_DH, EVP_PKEY_get1_EC_KEY,
7EVP_PKEY_assign_RSA, EVP_PKEY_assign_DSA, EVP_PKEY_assign_DH, EVP_PKEY_assign_EC_KEY, 7EVP_PKEY_assign_RSA, EVP_PKEY_assign_DSA, EVP_PKEY_assign_DH,
8EVP_PKEY_type - EVP_PKEY assignment functions. 8EVP_PKEY_assign_EC_KEY, EVP_PKEY_type - EVP_PKEY assignment functions.
9 9
10=head1 SYNOPSIS 10=head1 SYNOPSIS
11 11
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_verify.pod b/src/lib/libcrypto/doc/EVP_PKEY_verify.pod
index f7ae4f9ebe..ba317b4e7b 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_verify.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_verify.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_verify_init, EVP_PKEY_verify - signature verification using a public key algorithm 5EVP_PKEY_verify_init, EVP_PKEY_verify - signature verification using a public
6key algorithm
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/EVP_PKEY_verify_recover.pod b/src/lib/libcrypto/doc/EVP_PKEY_verify_recover.pod
index 00d53db783..4debf7bff0 100644
--- a/src/lib/libcrypto/doc/EVP_PKEY_verify_recover.pod
+++ b/src/lib/libcrypto/doc/EVP_PKEY_verify_recover.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_verify_recover_init, EVP_PKEY_verify_recover - recover signature using a public key algorithm 5EVP_PKEY_verify_recover_init, EVP_PKEY_verify_recover - recover signature using
6a public key algorithm
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -45,7 +46,8 @@ context if several operations are performed using the same parameters.
45 46
46=head1 RETURN VALUES 47=head1 RETURN VALUES
47 48
48EVP_PKEY_verify_recover_init() and EVP_PKEY_verify_recover() return 1 for success 49EVP_PKEY_verify_recover_init() and EVP_PKEY_verify_recover() return 1 for
50success
49and 0 or a negative value for failure. In particular a return value of -2 51and 0 or a negative value for failure. In particular a return value of -2
50indicates the operation is not supported by the public key algorithm. 52indicates the operation is not supported by the public key algorithm.
51 53
diff --git a/src/lib/libcrypto/doc/EVP_VerifyInit.pod b/src/lib/libcrypto/doc/EVP_VerifyInit.pod
index 0ffb0a8077..c665ee2ebc 100644
--- a/src/lib/libcrypto/doc/EVP_VerifyInit.pod
+++ b/src/lib/libcrypto/doc/EVP_VerifyInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_VerifyInit, EVP_VerifyUpdate, EVP_VerifyFinal - EVP signature verification functions 5EVP_VerifyInit, EVP_VerifyUpdate, EVP_VerifyFinal - EVP signature verification
6functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -38,8 +39,8 @@ implementation of digest B<type>.
38EVP_VerifyInit_ex() and EVP_VerifyUpdate() return 1 for success and 0 for 39EVP_VerifyInit_ex() and EVP_VerifyUpdate() return 1 for success and 0 for
39failure. 40failure.
40 41
41EVP_VerifyFinal() returns 1 for a correct signature, 0 for failure and -1 if some 42EVP_VerifyFinal() returns 1 for a correct signature, 0 for failure and -1 if
42other error occurred. 43some other error occurred.
43 44
44The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. 45The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
45 46
diff --git a/src/lib/libcrypto/doc/OBJ_nid2obj.pod b/src/lib/libcrypto/doc/OBJ_nid2obj.pod
index 458ef025f0..b2b8af990c 100644
--- a/src/lib/libcrypto/doc/OBJ_nid2obj.pod
+++ b/src/lib/libcrypto/doc/OBJ_nid2obj.pod
@@ -2,9 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5OBJ_nid2obj, OBJ_nid2ln, OBJ_nid2sn, OBJ_obj2nid, OBJ_txt2nid, OBJ_ln2nid, OBJ_sn2nid, 5OBJ_nid2obj, OBJ_nid2ln, OBJ_nid2sn, OBJ_obj2nid, OBJ_txt2nid, OBJ_ln2nid,
6OBJ_cmp, OBJ_dup, OBJ_txt2obj, OBJ_obj2txt, OBJ_create, OBJ_cleanup - ASN1 object utility 6OBJ_sn2nid, OBJ_cmp, OBJ_dup, OBJ_txt2obj, OBJ_obj2txt, OBJ_create, OBJ_cleanup
7functions 7- ASN1 object utility functions
8 8
9=head1 SYNOPSIS 9=head1 SYNOPSIS
10 10
diff --git a/src/lib/libcrypto/doc/OPENSSL_VERSION_NUMBER.pod b/src/lib/libcrypto/doc/OPENSSL_VERSION_NUMBER.pod
index c39ac35e78..2f63a18a71 100644
--- a/src/lib/libcrypto/doc/OPENSSL_VERSION_NUMBER.pod
+++ b/src/lib/libcrypto/doc/OPENSSL_VERSION_NUMBER.pod
@@ -94,8 +94,8 @@ L<crypto(3)|crypto(3)>
94 94
95=head1 HISTORY 95=head1 HISTORY
96 96
97SSLeay() and SSLEAY_VERSION_NUMBER are available in all versions of SSLeay and OpenSSL. 97SSLeay() and SSLEAY_VERSION_NUMBER are available in all versions of SSLeay and
98OPENSSL_VERSION_NUMBER is available in all versions of OpenSSL. 98OpenSSL. OPENSSL_VERSION_NUMBER is available in all versions of OpenSSL.
99B<SSLEAY_DIR> was added in OpenSSL 0.9.7. 99B<SSLEAY_DIR> was added in OpenSSL 0.9.7.
100 100
101=cut 101=cut
diff --git a/src/lib/libcrypto/doc/OpenSSL_add_all_algorithms.pod b/src/lib/libcrypto/doc/OpenSSL_add_all_algorithms.pod
index e63411b5bb..cc6c07fa24 100644
--- a/src/lib/libcrypto/doc/OpenSSL_add_all_algorithms.pod
+++ b/src/lib/libcrypto/doc/OpenSSL_add_all_algorithms.pod
@@ -39,24 +39,24 @@ None of the functions return a value.
39A typical application will call OpenSSL_add_all_algorithms() initially and 39A typical application will call OpenSSL_add_all_algorithms() initially and
40EVP_cleanup() before exiting. 40EVP_cleanup() before exiting.
41 41
42An application does not need to add algorithms to use them explicitly, for example 42An application does not need to add algorithms to use them explicitly, for
43by EVP_sha1(). It just needs to add them if it (or any of the functions it calls) 43example by EVP_sha1(). It just needs to add them if it (or any of the functions
44needs to lookup algorithms. 44it calls) needs to lookup algorithms.
45 45
46The cipher and digest lookup functions are used in many parts of the library. If 46The cipher and digest lookup functions are used in many parts of the library.
47the table is not initialized several functions will misbehave and complain they 47If the table is not initialized several functions will misbehave and complain
48cannot find algorithms. This includes the PEM, PKCS#12, SSL and S/MIME libraries. 48they cannot find algorithms. This includes the PEM, PKCS#12, SSL and S/MIME
49This is a common query in the OpenSSL mailing lists. 49libraries. This is a common query in the OpenSSL mailing lists.
50 50
51Calling OpenSSL_add_all_algorithms() links in all algorithms: as a result a 51Calling OpenSSL_add_all_algorithms() links in all algorithms: as a result a
52statically linked executable can be quite large. If this is important it is possible 52statically linked executable can be quite large. If this is important it is
53to just add the required ciphers and digests. 53possible to just add the required ciphers and digests.
54 54
55=head1 BUGS 55=head1 BUGS
56 56
57Although the functions do not return error codes it is possible for them to fail. 57Although the functions do not return error codes it is possible for them to
58This will only happen as a result of a memory allocation failure so this is not 58fail. This will only happen as a result of a memory allocation failure so this
59too much of a problem in practice. 59is not too much of a problem in practice.
60 60
61=head1 SEE ALSO 61=head1 SEE ALSO
62 62
diff --git a/src/lib/libcrypto/doc/PEM_read_bio_PrivateKey.pod b/src/lib/libcrypto/doc/PEM_read_bio_PrivateKey.pod
index e196bf1498..7e821f69c3 100644
--- a/src/lib/libcrypto/doc/PEM_read_bio_PrivateKey.pod
+++ b/src/lib/libcrypto/doc/PEM_read_bio_PrivateKey.pod
@@ -2,7 +2,29 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5PEM, PEM_read_bio_PrivateKey, PEM_read_PrivateKey, PEM_write_bio_PrivateKey, PEM_write_PrivateKey, PEM_write_bio_PKCS8PrivateKey, PEM_write_PKCS8PrivateKey, PEM_write_bio_PKCS8PrivateKey_nid, PEM_write_PKCS8PrivateKey_nid, PEM_read_bio_PUBKEY, PEM_read_PUBKEY, PEM_write_bio_PUBKEY, PEM_write_PUBKEY, PEM_read_bio_RSAPrivateKey, PEM_read_RSAPrivateKey, PEM_write_bio_RSAPrivateKey, PEM_write_RSAPrivateKey, PEM_read_bio_RSAPublicKey, PEM_read_RSAPublicKey, PEM_write_bio_RSAPublicKey, PEM_write_RSAPublicKey, PEM_read_bio_RSA_PUBKEY, PEM_read_RSA_PUBKEY, PEM_write_bio_RSA_PUBKEY, PEM_write_RSA_PUBKEY, PEM_read_bio_DSAPrivateKey, PEM_read_DSAPrivateKey, PEM_write_bio_DSAPrivateKey, PEM_write_DSAPrivateKey, PEM_read_bio_DSA_PUBKEY, PEM_read_DSA_PUBKEY, PEM_write_bio_DSA_PUBKEY, PEM_write_DSA_PUBKEY, PEM_read_bio_DSAparams, PEM_read_DSAparams, PEM_write_bio_DSAparams, PEM_write_DSAparams, PEM_read_bio_DHparams, PEM_read_DHparams, PEM_write_bio_DHparams, PEM_write_DHparams, PEM_read_bio_X509, PEM_read_X509, PEM_write_bio_X509, PEM_write_X509, PEM_read_bio_X509_AUX, PEM_read_X509_AUX, PEM_write_bio_X509_AUX, PEM_write_X509_AUX, PEM_read_bio_X509_REQ, PEM_read_X509_REQ, PEM_write_bio_X509_REQ, PEM_write_X509_REQ, PEM_write_bio_X509_REQ_NEW, PEM_write_X509_REQ_NEW, PEM_read_bio_X509_CRL, PEM_read_X509_CRL, PEM_write_bio_X509_CRL, PEM_write_X509_CRL, PEM_read_bio_PKCS7, PEM_read_PKCS7, PEM_write_bio_PKCS7, PEM_write_PKCS7, PEM_read_bio_NETSCAPE_CERT_SEQUENCE, PEM_read_NETSCAPE_CERT_SEQUENCE, PEM_write_bio_NETSCAPE_CERT_SEQUENCE, PEM_write_NETSCAPE_CERT_SEQUENCE - PEM routines 5PEM, PEM_read_bio_PrivateKey, PEM_read_PrivateKey, PEM_write_bio_PrivateKey,
6PEM_write_PrivateKey, PEM_write_bio_PKCS8PrivateKey, PEM_write_PKCS8PrivateKey,
7PEM_write_bio_PKCS8PrivateKey_nid, PEM_write_PKCS8PrivateKey_nid,
8PEM_read_bio_PUBKEY, PEM_read_PUBKEY, PEM_write_bio_PUBKEY, PEM_write_PUBKEY,
9PEM_read_bio_RSAPrivateKey, PEM_read_RSAPrivateKey,
10PEM_write_bio_RSAPrivateKey, PEM_write_RSAPrivateKey,
11PEM_read_bio_RSAPublicKey, PEM_read_RSAPublicKey, PEM_write_bio_RSAPublicKey,
12PEM_write_RSAPublicKey, PEM_read_bio_RSA_PUBKEY, PEM_read_RSA_PUBKEY,
13PEM_write_bio_RSA_PUBKEY, PEM_write_RSA_PUBKEY, PEM_read_bio_DSAPrivateKey,
14PEM_read_DSAPrivateKey, PEM_write_bio_DSAPrivateKey, PEM_write_DSAPrivateKey,
15PEM_read_bio_DSA_PUBKEY, PEM_read_DSA_PUBKEY, PEM_write_bio_DSA_PUBKEY,
16PEM_write_DSA_PUBKEY, PEM_read_bio_DSAparams, PEM_read_DSAparams,
17PEM_write_bio_DSAparams, PEM_write_DSAparams, PEM_read_bio_DHparams,
18PEM_read_DHparams, PEM_write_bio_DHparams, PEM_write_DHparams,
19PEM_read_bio_X509, PEM_read_X509, PEM_write_bio_X509, PEM_write_X509,
20PEM_read_bio_X509_AUX, PEM_read_X509_AUX, PEM_write_bio_X509_AUX,
21PEM_write_X509_AUX, PEM_read_bio_X509_REQ, PEM_read_X509_REQ,
22PEM_write_bio_X509_REQ, PEM_write_X509_REQ, PEM_write_bio_X509_REQ_NEW,
23PEM_write_X509_REQ_NEW, PEM_read_bio_X509_CRL, PEM_read_X509_CRL,
24PEM_write_bio_X509_CRL, PEM_write_X509_CRL, PEM_read_bio_PKCS7, PEM_read_PKCS7,
25PEM_write_bio_PKCS7, PEM_write_PKCS7, PEM_read_bio_NETSCAPE_CERT_SEQUENCE,
26PEM_read_NETSCAPE_CERT_SEQUENCE, PEM_write_bio_NETSCAPE_CERT_SEQUENCE,
27PEM_write_NETSCAPE_CERT_SEQUENCE - PEM routines
6 28
7=head1 SYNOPSIS 29=head1 SYNOPSIS
8 30
diff --git a/src/lib/libcrypto/doc/PEM_write_bio_CMS_stream.pod b/src/lib/libcrypto/doc/PEM_write_bio_CMS_stream.pod
index e070c45c2e..f9946adebf 100644
--- a/src/lib/libcrypto/doc/PEM_write_bio_CMS_stream.pod
+++ b/src/lib/libcrypto/doc/PEM_write_bio_CMS_stream.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 PEM_write_bio_CMS_stream - output CMS_ContentInfo structure in PEM format. 5PEM_write_bio_CMS_stream - output CMS_ContentInfo structure in PEM format.
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libcrypto/doc/PKCS12_create.pod b/src/lib/libcrypto/doc/PKCS12_create.pod
index 0a1e460cf1..382193ec95 100644
--- a/src/lib/libcrypto/doc/PKCS12_create.pod
+++ b/src/lib/libcrypto/doc/PKCS12_create.pod
@@ -38,13 +38,13 @@ The default MAC iteration count is 1 in order to retain compatibility with
38old software which did not interpret MAC iteration counts. If such compatibility 38old software which did not interpret MAC iteration counts. If such compatibility
39is not required then B<mac_iter> should be set to PKCS12_DEFAULT_ITER. 39is not required then B<mac_iter> should be set to PKCS12_DEFAULT_ITER.
40 40
41B<keytype> adds a flag to the store private key. This is a non standard extension 41B<keytype> adds a flag to the store private key. This is a non standard
42that is only currently interpreted by MSIE. If set to zero the flag is omitted, 42extension that is only currently interpreted by MSIE. If set to zero the flag
43if set to B<KEY_SIG> the key can be used for signing only, if set to B<KEY_EX> 43is omitted, if set to B<KEY_SIG> the key can be used for signing only, if set
44it can be used for signing and encryption. This option was useful for old 44to B<KEY_EX> it can be used for signing and encryption. This option was useful
45export grade software which could use signing only keys of arbitrary size but 45for old export grade software which could use signing only keys of arbitrary
46had restrictions on the permissible sizes of keys which could be used for 46size but had restrictions on the permissible sizes of keys which could be used
47encryption. 47for encryption.
48 48
49=head1 NEW FUNCTIONALITY IN OPENSSL 0.9.8 49=head1 NEW FUNCTIONALITY IN OPENSSL 0.9.8
50 50
diff --git a/src/lib/libcrypto/doc/PKCS7_decrypt.pod b/src/lib/libcrypto/doc/PKCS7_decrypt.pod
index 325699d0b6..78919998ce 100644
--- a/src/lib/libcrypto/doc/PKCS7_decrypt.pod
+++ b/src/lib/libcrypto/doc/PKCS7_decrypt.pod
@@ -22,8 +22,9 @@ B<flags> is an optional set of flags.
22OpenSSL_add_all_algorithms() (or equivalent) should be called before using this 22OpenSSL_add_all_algorithms() (or equivalent) should be called before using this
23function or errors about unknown algorithms will occur. 23function or errors about unknown algorithms will occur.
24 24
25Although the recipients certificate is not needed to decrypt the data it is needed 25Although the recipients certificate is not needed to decrypt the data it is
26to locate the appropriate (of possible several) recipients in the PKCS#7 structure. 26needed to locate the appropriate (of possible several) recipients in the PKCS#7
27structure.
27 28
28The following flags can be passed in the B<flags> parameter. 29The following flags can be passed in the B<flags> parameter.
29 30
@@ -38,8 +39,9 @@ The error can be obtained from ERR_get_error(3)
38 39
39=head1 BUGS 40=head1 BUGS
40 41
41PKCS7_decrypt() must be passed the correct recipient key and certificate. It would 42PKCS7_decrypt() must be passed the correct recipient key and certificate. It
42be better if it could look up the correct key and certificate from a database. 43would be better if it could look up the correct key and certificate from a
44database.
43 45
44The lack of single pass processing and need to hold all data in memory as 46The lack of single pass processing and need to hold all data in memory as
45mentioned in PKCS7_sign() also applies to PKCS7_verify(). 47mentioned in PKCS7_sign() also applies to PKCS7_verify().
diff --git a/src/lib/libcrypto/doc/PKCS7_verify.pod b/src/lib/libcrypto/doc/PKCS7_verify.pod
index 51ada03f2d..f88e66632b 100644
--- a/src/lib/libcrypto/doc/PKCS7_verify.pod
+++ b/src/lib/libcrypto/doc/PKCS7_verify.pod
@@ -37,9 +37,9 @@ be signedData. There must be at least one signature on the data and if
37the content is detached B<indata> cannot be B<NULL>. 37the content is detached B<indata> cannot be B<NULL>.
38 38
39An attempt is made to locate all the signer's certificates, first looking in 39An attempt is made to locate all the signer's certificates, first looking in
40the B<certs> parameter (if it is not B<NULL>) and then looking in any certificates 40the B<certs> parameter (if it is not B<NULL>) and then looking in any
41contained in the B<p7> structure itself. If any signer's certificates cannot be 41certificates contained in the B<p7> structure itself. If any signer's
42located the operation fails. 42certificates cannot be located the operation fails.
43 43
44Each signer's certificate is chain verified using the B<smimesign> purpose and 44Each signer's certificate is chain verified using the B<smimesign> purpose and
45the supplied trusted certificate store. Any internal certificates in the message 45the supplied trusted certificate store. Any internal certificates in the message
@@ -50,9 +50,9 @@ the signature's checked.
50 50
51If all signature's verify correctly then the function is successful. 51If all signature's verify correctly then the function is successful.
52 52
53Any of the following flags (ored together) can be passed in the B<flags> parameter 53Any of the following flags (ored together) can be passed in the B<flags>
54to change the default verify behaviour. Only the flag B<PKCS7_NOINTERN> is 54parameter to change the default verify behaviour. Only the flag
55meaningful to PKCS7_get0_signers(). 55B<PKCS7_NOINTERN> is meaningful to PKCS7_get0_signers().
56 56
57If B<PKCS7_NOINTERN> is set the certificates in the message itself are not 57If B<PKCS7_NOINTERN> is set the certificates in the message itself are not
58searched when locating the signer's certificate. This means that all the signers 58searched when locating the signer's certificate. This means that all the signers
diff --git a/src/lib/libcrypto/doc/RAND_bytes.pod b/src/lib/libcrypto/doc/RAND_bytes.pod
index 1a9b91e281..34c945b4e5 100644
--- a/src/lib/libcrypto/doc/RAND_bytes.pod
+++ b/src/lib/libcrypto/doc/RAND_bytes.pod
@@ -30,11 +30,10 @@ the new pseudo-random bytes unless disabled at compile time (see FAQ).
30 30
31=head1 RETURN VALUES 31=head1 RETURN VALUES
32 32
33RAND_bytes() returns 1 on success, 0 otherwise. The error code can be 33RAND_bytes() returns 1 on success, 0 otherwise. The error code can be obtained
34obtained by L<ERR_get_error(3)|ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the 34by L<ERR_get_error(3)|ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the
35bytes generated are cryptographically strong, 0 otherwise. Both 35bytes generated are cryptographically strong, 0 otherwise. Both functions
36functions return -1 if they are not supported by the current RAND 36return -1 if they are not supported by the current RAND method.
37method.
38 37
39=head1 SEE ALSO 38=head1 SEE ALSO
40 39
diff --git a/src/lib/libcrypto/doc/RAND_load_file.pod b/src/lib/libcrypto/doc/RAND_load_file.pod
index 3f7e944d86..28118e3c2e 100644
--- a/src/lib/libcrypto/doc/RAND_load_file.pod
+++ b/src/lib/libcrypto/doc/RAND_load_file.pod
@@ -43,7 +43,8 @@ error.
43 43
44=head1 SEE ALSO 44=head1 SEE ALSO
45 45
46L<rand(3)|rand(3)>, L<RAND_add(3)|RAND_add(3)>, L<RAND_cleanup(3)|RAND_cleanup(3)> 46L<rand(3)|rand(3)>, L<RAND_add(3)|RAND_add(3)>,
47L<RAND_cleanup(3)|RAND_cleanup(3)>
47 48
48=head1 HISTORY 49=head1 HISTORY
49 50
diff --git a/src/lib/libcrypto/doc/RSA_blinding_on.pod b/src/lib/libcrypto/doc/RSA_blinding_on.pod
index fd2c69abd8..e6af8d4355 100644
--- a/src/lib/libcrypto/doc/RSA_blinding_on.pod
+++ b/src/lib/libcrypto/doc/RSA_blinding_on.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing attacks 5RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing
6attacks
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/RSA_get_ex_new_index.pod b/src/lib/libcrypto/doc/RSA_get_ex_new_index.pod
index 7d0fd1f91d..b1ac1167dd 100644
--- a/src/lib/libcrypto/doc/RSA_get_ex_new_index.pod
+++ b/src/lib/libcrypto/doc/RSA_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data - add application specific data to RSA structures 5RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data - add application
6specific data to RSA structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -78,26 +79,27 @@ corresponding parameters when B<RSA_get_ex_new_index()> was called.
78B<dup_func()> is called when a structure is being copied. Pointers to the 79B<dup_func()> is called when a structure is being copied. Pointers to the
79destination and source B<CRYPTO_EX_DATA> structures are passed in the B<to> and 80destination and source B<CRYPTO_EX_DATA> structures are passed in the B<to> and
80B<from> parameters respectively. The B<from_d> parameter is passed a pointer to 81B<from> parameters respectively. The B<from_d> parameter is passed a pointer to
81the source application data when the function is called, when the function returns 82the source application data when the function is called, when the function
82the value is copied to the destination: the application can thus modify the data 83returns the value is copied to the destination: the application can thus modify
83pointed to by B<from_d> and have different values in the source and destination. 84the data pointed to by B<from_d> and have different values in the source and
84The B<idx>, B<argl> and B<argp> parameters are the same as those in B<new_func()> 85destination. The B<idx>, B<argl> and B<argp> parameters are the same as those
85and B<free_func()>. 86in B<new_func()> and B<free_func()>.
86 87
87=head1 RETURN VALUES 88=head1 RETURN VALUES
88 89
89B<RSA_get_ex_new_index()> returns a new index or -1 on failure (note 0 is a valid 90B<RSA_get_ex_new_index()> returns a new index or -1 on failure (note 0 is a
90index value). 91valid index value).
91 92
92B<RSA_set_ex_data()> returns 1 on success or 0 on failure. 93B<RSA_set_ex_data()> returns 1 on success or 0 on failure.
93 94
94B<RSA_get_ex_data()> returns the application data or 0 on failure. 0 may also 95B<RSA_get_ex_data()> returns the application data or 0 on failure. 0 may also
95be valid application data but currently it can only fail if given an invalid B<idx> 96be valid application data but currently it can only fail if given an invalid
96parameter. 97B<idx> parameter.
97 98
98B<new_func()> and B<dup_func()> should return 0 for failure and 1 for success. 99B<new_func()> and B<dup_func()> should return 0 for failure and 1 for success.
99 100
100On failure an error code can be obtained from L<ERR_get_error(3)|ERR_get_error(3)>. 101On failure an error code can be obtained from
102L<ERR_get_error(3)|ERR_get_error(3)>.
101 103
102=head1 BUGS 104=head1 BUGS
103 105
diff --git a/src/lib/libcrypto/doc/RSA_new.pod b/src/lib/libcrypto/doc/RSA_new.pod
index 3d15b92824..41e5e60340 100644
--- a/src/lib/libcrypto/doc/RSA_new.pod
+++ b/src/lib/libcrypto/doc/RSA_new.pod
@@ -22,9 +22,9 @@ erased before the memory is returned to the system.
22 22
23=head1 RETURN VALUES 23=head1 RETURN VALUES
24 24
25If the allocation fails, RSA_new() returns B<NULL> and sets an error 25If the allocation fails, RSA_new() returns B<NULL> and sets an error code that
26code that can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns 26can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns a
27a pointer to the newly allocated structure. 27pointer to the newly allocated structure.
28 28
29RSA_free() returns no value. 29RSA_free() returns no value.
30 30
diff --git a/src/lib/libcrypto/doc/RSA_private_encrypt.pod b/src/lib/libcrypto/doc/RSA_private_encrypt.pod
index 4c4d131172..aa2bc1bd76 100644
--- a/src/lib/libcrypto/doc/RSA_private_encrypt.pod
+++ b/src/lib/libcrypto/doc/RSA_private_encrypt.pod
@@ -29,10 +29,9 @@ B<padding> denotes one of the following modes:
29 29
30=item RSA_PKCS1_PADDING 30=item RSA_PKCS1_PADDING
31 31
32PKCS #1 v1.5 padding. This function does not handle the 32PKCS #1 v1.5 padding. This function does not handle the B<algorithmIdentifier>
33B<algorithmIdentifier> specified in PKCS #1. When generating or 33specified in PKCS #1. When generating or verifying PKCS #1 signatures,
34verifying PKCS #1 signatures, L<RSA_sign(3)|RSA_sign(3)> and L<RSA_verify(3)|RSA_verify(3)> should be 34L<RSA_sign(3)|RSA_sign(3)> and L<RSA_verify(3)|RSA_verify(3)> should be used.
35used.
36 35
37=item RSA_NO_PADDING 36=item RSA_NO_PADDING
38 37
diff --git a/src/lib/libcrypto/doc/RSA_sign_ASN1_OCTET_STRING.pod b/src/lib/libcrypto/doc/RSA_sign_ASN1_OCTET_STRING.pod
index e70380bbfc..315a9af9e8 100644
--- a/src/lib/libcrypto/doc/RSA_sign_ASN1_OCTET_STRING.pod
+++ b/src/lib/libcrypto/doc/RSA_sign_ASN1_OCTET_STRING.pod
@@ -26,7 +26,8 @@ memory.
26 26
27B<dummy> is ignored. 27B<dummy> is ignored.
28 28
29The random number generator must be seeded prior to calling RSA_sign_ASN1_OCTET_STRING(). 29The random number generator must be seeded prior to calling
30RSA_sign_ASN1_OCTET_STRING().
30 31
31RSA_verify_ASN1_OCTET_STRING() verifies that the signature B<sigbuf> 32RSA_verify_ASN1_OCTET_STRING() verifies that the signature B<sigbuf>
32of size B<siglen> is the DER representation of a given octet string 33of size B<siglen> is the DER representation of a given octet string
diff --git a/src/lib/libcrypto/doc/SHA1.pod b/src/lib/libcrypto/doc/SHA1.pod
index 232af9227e..9fffdf59e7 100644
--- a/src/lib/libcrypto/doc/SHA1.pod
+++ b/src/lib/libcrypto/doc/SHA1.pod
@@ -60,7 +60,8 @@ ANSI X9.30
60 60
61=head1 SEE ALSO 61=head1 SEE ALSO
62 62
63L<ripemd(3)|ripemd(3)>, L<hmac(3)|hmac(3)>, L<EVP_DigestInit(3)|EVP_DigestInit(3)> 63L<ripemd(3)|ripemd(3)>, L<hmac(3)|hmac(3)>,
64L<EVP_DigestInit(3)|EVP_DigestInit(3)>
64 65
65=head1 HISTORY 66=head1 HISTORY
66 67
diff --git a/src/lib/libcrypto/doc/X509_NAME_add_entry_by_txt.pod b/src/lib/libcrypto/doc/X509_NAME_add_entry_by_txt.pod
index 5b9e81b922..c6442b947f 100644
--- a/src/lib/libcrypto/doc/X509_NAME_add_entry_by_txt.pod
+++ b/src/lib/libcrypto/doc/X509_NAME_add_entry_by_txt.pod
@@ -2,8 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ, X509_NAME_add_entry_by_NID, 5X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ,
6X509_NAME_add_entry, X509_NAME_delete_entry - X509_NAME modification functions 6X509_NAME_add_entry_by_NID, X509_NAME_add_entry, X509_NAME_delete_entry -
7X509_NAME modification functions
7 8
8=head1 SYNOPSIS 9=head1 SYNOPSIS
9 10
diff --git a/src/lib/libcrypto/doc/X509_NAME_print_ex.pod b/src/lib/libcrypto/doc/X509_NAME_print_ex.pod
index b2d86d4ddb..ff5d788d88 100644
--- a/src/lib/libcrypto/doc/X509_NAME_print_ex.pod
+++ b/src/lib/libcrypto/doc/X509_NAME_print_ex.pod
@@ -16,16 +16,16 @@ X509_NAME_oneline - X509_NAME printing routines.
16 16
17=head1 DESCRIPTION 17=head1 DESCRIPTION
18 18
19X509_NAME_print_ex() prints a human readable version of B<nm> to BIO B<out>. Each 19X509_NAME_print_ex() prints a human readable version of B<nm> to BIO B<out>.
20line (for multiline formats) is indented by B<indent> spaces. The output format 20Each line (for multiline formats) is indented by B<indent> spaces. The output
21can be extensively customised by use of the B<flags> parameter. 21format can be extensively customised by use of the B<flags> parameter.
22 22
23X509_NAME_print_ex_fp() is identical to X509_NAME_print_ex() except the output is 23X509_NAME_print_ex_fp() is identical to X509_NAME_print_ex() except the output
24written to FILE pointer B<fp>. 24is written to FILE pointer B<fp>.
25 25
26X509_NAME_oneline() prints an ASCII version of B<a> to B<buf>. At most B<size> 26X509_NAME_oneline() prints an ASCII version of B<a> to B<buf>. At most B<size>
27bytes will be written. If B<buf> is B<NULL> then a buffer is dynamically allocated 27bytes will be written. If B<buf> is B<NULL> then a buffer is dynamically
28and returned, otherwise B<buf> is returned. 28allocated and returned, otherwise B<buf> is returned.
29 29
30X509_NAME_print() prints out B<name> to B<bp> indenting each line by B<obase> 30X509_NAME_print() prints out B<name> to B<bp> indenting each line by B<obase>
31characters. Multiple lines are used if the output (including indent) exceeds 31characters. Multiple lines are used if the output (including indent) exceeds
@@ -33,10 +33,10 @@ characters. Multiple lines are used if the output (including indent) exceeds
33 33
34=head1 NOTES 34=head1 NOTES
35 35
36The functions X509_NAME_oneline() and X509_NAME_print() are legacy functions which 36The functions X509_NAME_oneline() and X509_NAME_print() are legacy functions
37produce a non standard output form, they don't handle multi character fields and 37which produce a non standard output form, they don't handle multi character
38have various quirks and inconsistencies. Their use is strongly discouraged in new 38fields and have various quirks and inconsistencies. Their use is strongly
39applications. 39discouraged in new applications.
40 40
41Although there are a large number of possible flags for most purposes 41Although there are a large number of possible flags for most purposes
42B<XN_FLAG_ONELINE>, B<XN_FLAG_MULTILINE> or B<XN_FLAG_RFC2253> will suffice. 42B<XN_FLAG_ONELINE>, B<XN_FLAG_MULTILINE> or B<XN_FLAG_RFC2253> will suffice.
@@ -49,15 +49,16 @@ The complete set of the flags supported by X509_NAME_print_ex() is listed below.
49Several options can be ored together. 49Several options can be ored together.
50 50
51The options B<XN_FLAG_SEP_COMMA_PLUS>, B<XN_FLAG_SEP_CPLUS_SPC>, 51The options B<XN_FLAG_SEP_COMMA_PLUS>, B<XN_FLAG_SEP_CPLUS_SPC>,
52B<XN_FLAG_SEP_SPLUS_SPC> and B<XN_FLAG_SEP_MULTILINE> determine the field separators 52B<XN_FLAG_SEP_SPLUS_SPC> and B<XN_FLAG_SEP_MULTILINE> determine the field
53to use. Two distinct separators are used between distinct RelativeDistinguishedName 53separators to use. Two distinct separators are used between distinct
54components and separate values in the same RDN for a multi-valued RDN. Multi-valued 54RelativeDistinguishedName components and separate values in the same RDN for a
55RDNs are currently very rare so the second separator will hardly ever be used. 55multi-valued RDN. Multi-valued RDNs are currently very rare so the second
56separator will hardly ever be used.
56 57
57B<XN_FLAG_SEP_COMMA_PLUS> uses comma and plus as separators. B<XN_FLAG_SEP_CPLUS_SPC> 58B<XN_FLAG_SEP_COMMA_PLUS> uses comma and plus as separators.
58uses comma and plus with spaces: this is more readable that plain comma and plus. 59B<XN_FLAG_SEP_CPLUS_SPC> uses comma and plus with spaces: this is more readable
59B<XN_FLAG_SEP_SPLUS_SPC> uses spaced semicolon and plus. B<XN_FLAG_SEP_MULTILINE> uses 60that plain comma and plus. B<XN_FLAG_SEP_SPLUS_SPC> uses spaced semicolon and
60spaced newline and plus respectively. 61plus. B<XN_FLAG_SEP_MULTILINE> uses spaced newline and plus respectively.
61 62
62If B<XN_FLAG_DN_REV> is set the whole DN is printed in reversed order. 63If B<XN_FLAG_DN_REV> is set the whole DN is printed in reversed order.
63 64
@@ -92,7 +93,8 @@ B<XN_FLAG_ONELINE> is a more readable one line format which is the same as:
92B<XN_FLAG_MULTILINE> is a multiline format which is the same as: 93B<XN_FLAG_MULTILINE> is a multiline format which is the same as:
93 B<ASN1_STRFLGS_ESC_CTRL | ASN1_STRFLGS_ESC_MSB | XN_FLAG_SEP_MULTILINE | XN_FLAG_SPC_EQ | XN_FLAG_FN_LN | XN_FLAG_FN_ALIGN> 94 B<ASN1_STRFLGS_ESC_CTRL | ASN1_STRFLGS_ESC_MSB | XN_FLAG_SEP_MULTILINE | XN_FLAG_SPC_EQ | XN_FLAG_FN_LN | XN_FLAG_FN_ALIGN>
94 95
95B<XN_FLAG_COMPAT> uses a format identical to X509_NAME_print(): in fact it calls X509_NAME_print() internally. 96B<XN_FLAG_COMPAT> uses a format identical to X509_NAME_print(): in fact it
97calls X509_NAME_print() internally.
96 98
97=head1 SEE ALSO 99=head1 SEE ALSO
98 100
diff --git a/src/lib/libcrypto/doc/X509_STORE_CTX_get_error.pod b/src/lib/libcrypto/doc/X509_STORE_CTX_get_error.pod
index 60e8332ae9..5760f64fcb 100644
--- a/src/lib/libcrypto/doc/X509_STORE_CTX_get_error.pod
+++ b/src/lib/libcrypto/doc/X509_STORE_CTX_get_error.pod
@@ -2,7 +2,10 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_get_error, X509_STORE_CTX_set_error, X509_STORE_CTX_get_error_depth, X509_STORE_CTX_get_current_cert, X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set certificate verification status information 5X509_STORE_CTX_get_error, X509_STORE_CTX_set_error,
6X509_STORE_CTX_get_error_depth, X509_STORE_CTX_get_current_cert,
7X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set
8certificate verification status information
6 9
7=head1 SYNOPSIS 10=head1 SYNOPSIS
8 11
@@ -82,19 +85,22 @@ of an untrusted certificate cannot be found.
82 85
83the CRL of a certificate could not be found. 86the CRL of a certificate could not be found.
84 87
85=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt certificate's signature> 88=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt
89certificate's signature>
86 90
87the certificate signature could not be decrypted. This means that the actual 91the certificate signature could not be decrypted. This means that the actual
88signature value could not be determined rather than it not matching the 92signature value could not be determined rather than it not matching the
89expected value, this is only meaningful for RSA keys. 93expected value, this is only meaningful for RSA keys.
90 94
91=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's signature> 95=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's
96signature>
92 97
93the CRL signature could not be decrypted: this means that the actual signature 98the CRL signature could not be decrypted: this means that the actual signature
94value could not be determined rather than it not matching the expected value. 99value could not be determined rather than it not matching the expected value.
95Unused. 100Unused.
96 101
97=item B<X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer public key> 102=item B<X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer
103public key>
98 104
99the public key in the certificate SubjectPublicKeyInfo could not be read. 105the public key in the certificate SubjectPublicKeyInfo could not be read.
100 106
@@ -112,7 +118,8 @@ the certificate is not yet valid: the notBefore date is after the current time.
112 118
113=item B<X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired> 119=item B<X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired>
114 120
115the certificate has expired: that is the notAfter date is before the current time. 121the certificate has expired: that is the notAfter date is before the current
122time.
116 123
117=item B<X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid> 124=item B<X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid>
118 125
@@ -122,19 +129,23 @@ the CRL is not yet valid.
122 129
123the CRL has expired. 130the CRL has expired.
124 131
125=item B<X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in certificate's notBefore field> 132=item B<X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in
133certificate's notBefore field>
126 134
127the certificate notBefore field contains an invalid time. 135the certificate notBefore field contains an invalid time.
128 136
129=item B<X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's notAfter field> 137=item B<X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's
138notAfter field>
130 139
131the certificate notAfter field contains an invalid time. 140the certificate notAfter field contains an invalid time.
132 141
133=item B<X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's lastUpdate field> 142=item B<X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's
143lastUpdate field>
134 144
135the CRL lastUpdate field contains an invalid time. 145the CRL lastUpdate field contains an invalid time.
136 146
137=item B<X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's nextUpdate field> 147=item B<X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's
148nextUpdate field>
138 149
139the CRL nextUpdate field contains an invalid time. 150the CRL nextUpdate field contains an invalid time.
140 151
@@ -147,17 +158,20 @@ an error occurred trying to allocate memory. This should never happen.
147the passed certificate is self signed and the same certificate cannot be found 158the passed certificate is self signed and the same certificate cannot be found
148in the list of trusted certificates. 159in the list of trusted certificates.
149 160
150=item B<X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in certificate chain> 161=item B<X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in
162certificate chain>
151 163
152the certificate chain could be built up using the untrusted certificates but 164the certificate chain could be built up using the untrusted certificates but
153the root could not be found locally. 165the root could not be found locally.
154 166
155=item B<X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate> 167=item B<X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local
168issuer certificate>
156 169
157the issuer certificate of a locally looked up certificate could not be found. 170the issuer certificate of a locally looked up certificate could not be found.
158This normally means the list of trusted certificates is not complete. 171This normally means the list of trusted certificates is not complete.
159 172
160=item B<X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first certificate> 173=item B<X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first
174certificate>
161 175
162no signatures could be verified because the chain contains only one certificate 176no signatures could be verified because the chain contains only one certificate
163and it is not self signed. 177and it is not self signed.
@@ -198,34 +212,39 @@ did not match the issuer name of the current certificate. This is only set
198if issuer check debugging is enabled it is used for status notification and 212if issuer check debugging is enabled it is used for status notification and
199is B<not> in itself an error. 213is B<not> in itself an error.
200 214
201=item B<X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier mismatch> 215=item B<X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier
216mismatch>
202 217
203the current candidate issuer certificate was rejected because its subject key 218the current candidate issuer certificate was rejected because its subject key
204identifier was present and did not match the authority key identifier current 219identifier was present and did not match the authority key identifier current
205certificate. This is only set if issuer check debugging is enabled it is used 220certificate. This is only set if issuer check debugging is enabled it is used
206for status notification and is B<not> in itself an error. 221for status notification and is B<not> in itself an error.
207 222
208=item B<X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial number mismatch> 223=item B<X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial
224number mismatch>
209 225
210the current candidate issuer certificate was rejected because its issuer name 226the current candidate issuer certificate was rejected because its issuer name
211and serial number was present and did not match the authority key identifier of 227and serial number was present and did not match the authority key identifier of
212the current certificate. This is only set if issuer check debugging is enabled 228the current certificate. This is only set if issuer check debugging is enabled
213it is used for status notification and is B<not> in itself an error. 229it is used for status notification and is B<not> in itself an error.
214 230
215=item B<X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate signing> 231=item B<X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate
232signing>
216 233
217the current candidate issuer certificate was rejected because its keyUsage 234the current candidate issuer certificate was rejected because its keyUsage
218extension does not permit certificate signing. This is only set if issuer check 235extension does not permit certificate signing. This is only set if issuer check
219debugging is enabled it is used for status notification and is B<not> in itself 236debugging is enabled it is used for status notification and is B<not> in itself
220an error. 237an error.
221 238
222=item B<X509_V_ERR_INVALID_EXTENSION: invalid or inconsistent certificate extension> 239=item B<X509_V_ERR_INVALID_EXTENSION: invalid or inconsistent certificate
240extension>
223 241
224A certificate extension had an invalid value (for example an incorrect 242A certificate extension had an invalid value (for example an incorrect
225encoding) or some value inconsistent with other extensions. 243encoding) or some value inconsistent with other extensions.
226 244
227 245
228=item B<X509_V_ERR_INVALID_POLICY_EXTENSION: invalid or inconsistent certificate policy extension> 246=item B<X509_V_ERR_INVALID_POLICY_EXTENSION: invalid or inconsistent
247certificate policy extension>
229 248
230A certificate policies extension had an invalid value (for example an incorrect 249A certificate policies extension had an invalid value (for example an incorrect
231encoding) or some value inconsistent with other extensions. This error only 250encoding) or some value inconsistent with other extensions. This error only
@@ -252,17 +271,20 @@ A name constraint violation occured in the permitted subtrees.
252 271
253A name constraint violation occured in the excluded subtrees. 272A name constraint violation occured in the excluded subtrees.
254 273
255=item B<X509_V_ERR_SUBTREE_MINMAX: name constraints minimum and maximum not supported> 274=item B<X509_V_ERR_SUBTREE_MINMAX: name constraints minimum and maximum not
275supported>
256 276
257A certificate name constraints extension included a minimum or maximum field: 277A certificate name constraints extension included a minimum or maximum field:
258this is not supported. 278this is not supported.
259 279
260=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE: unsupported name constraint type> 280=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE: unsupported name constraint
281type>
261 282
262An unsupported name constraint type was encountered. OpenSSL currently only 283An unsupported name constraint type was encountered. OpenSSL currently only
263supports directory name, DNS name, email and URI types. 284supports directory name, DNS name, email and URI types.
264 285
265=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX: unsupported or invalid name constraint syntax> 286=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX: unsupported or invalid name
287constraint syntax>
266 288
267The format of the name constraint is not recognised: for example an email 289The format of the name constraint is not recognised: for example an email
268address format of a form not mentioned in RFC3280. This could be caused by 290address format of a form not mentioned in RFC3280. This could be caused by
diff --git a/src/lib/libcrypto/doc/X509_STORE_CTX_get_ex_new_index.pod b/src/lib/libcrypto/doc/X509_STORE_CTX_get_ex_new_index.pod
index 1b75967ccd..392b36c3ae 100644
--- a/src/lib/libcrypto/doc/X509_STORE_CTX_get_ex_new_index.pod
+++ b/src/lib/libcrypto/doc/X509_STORE_CTX_get_ex_new_index.pod
@@ -2,7 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data, X509_STORE_CTX_get_ex_data - add application specific data to X509_STORE_CTX structures 5X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data,
6X509_STORE_CTX_get_ex_data - add application specific data to X509_STORE_CTX
7structures
6 8
7=head1 SYNOPSIS 9=head1 SYNOPSIS
8 10
diff --git a/src/lib/libcrypto/doc/X509_STORE_CTX_new.pod b/src/lib/libcrypto/doc/X509_STORE_CTX_new.pod
index 1c55236aa2..8f602274ee 100644
--- a/src/lib/libcrypto/doc/X509_STORE_CTX_new.pod
+++ b/src/lib/libcrypto/doc/X509_STORE_CTX_new.pod
@@ -2,7 +2,11 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_new, X509_STORE_CTX_cleanup, X509_STORE_CTX_free, X509_STORE_CTX_init, X509_STORE_CTX_trusted_stack, X509_STORE_CTX_set_cert, X509_STORE_CTX_set_chain, X509_STORE_CTX_set0_crls, X509_STORE_CTX_get0_param, X509_STORE_CTX_set0_param, X509_STORE_CTX_set_default - X509_STORE_CTX initialisation 5X509_STORE_CTX_new, X509_STORE_CTX_cleanup, X509_STORE_CTX_free,
6X509_STORE_CTX_init, X509_STORE_CTX_trusted_stack, X509_STORE_CTX_set_cert,
7X509_STORE_CTX_set_chain, X509_STORE_CTX_set0_crls, X509_STORE_CTX_get0_param,
8X509_STORE_CTX_set0_param, X509_STORE_CTX_set_default - X509_STORE_CTX
9initialisation
6 10
7=head1 SYNOPSIS 11=head1 SYNOPSIS
8 12
diff --git a/src/lib/libcrypto/doc/X509_STORE_set_verify_cb_func.pod b/src/lib/libcrypto/doc/X509_STORE_set_verify_cb_func.pod
index 012f2d2c75..f9602b3e77 100644
--- a/src/lib/libcrypto/doc/X509_STORE_set_verify_cb_func.pod
+++ b/src/lib/libcrypto/doc/X509_STORE_set_verify_cb_func.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_set_verify_cb_func, X509_STORE_set_verify_cb - set verification callback 5X509_STORE_set_verify_cb_func, X509_STORE_set_verify_cb - set verification
6callback
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libcrypto/doc/X509_VERIFY_PARAM_set_flags.pod b/src/lib/libcrypto/doc/X509_VERIFY_PARAM_set_flags.pod
index e5da5bec08..f213a9c117 100644
--- a/src/lib/libcrypto/doc/X509_VERIFY_PARAM_set_flags.pod
+++ b/src/lib/libcrypto/doc/X509_VERIFY_PARAM_set_flags.pod
@@ -2,7 +2,12 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_VERIFY_PARAM_set_flags, X509_VERIFY_PARAM_clear_flags, X509_VERIFY_PARAM_get_flags, X509_VERIFY_PARAM_set_purpose, X509_VERIFY_PARAM_set_trust, X509_VERIFY_PARAM_set_depth, X509_VERIFY_PARAM_get_depth, X509_VERIFY_PARAM_set_time, X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies - X509 verification parameters 5X509_VERIFY_PARAM_set_flags, X509_VERIFY_PARAM_clear_flags,
6X509_VERIFY_PARAM_get_flags, X509_VERIFY_PARAM_set_purpose,
7X509_VERIFY_PARAM_set_trust, X509_VERIFY_PARAM_set_depth,
8X509_VERIFY_PARAM_get_depth, X509_VERIFY_PARAM_set_time,
9X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies - X509
10verification parameters
6 11
7=head1 SYNOPSIS 12=head1 SYNOPSIS
8 13
diff --git a/src/lib/libcrypto/doc/bn.pod b/src/lib/libcrypto/doc/bn.pod
index cd2f8e50c6..4a3f24ba30 100644
--- a/src/lib/libcrypto/doc/bn.pod
+++ b/src/lib/libcrypto/doc/bn.pod
@@ -166,10 +166,10 @@ of B<BIGNUM>s to external formats is described in L<BN_bn2bin(3)|BN_bn2bin(3)>.
166 166
167=head1 SEE ALSO 167=head1 SEE ALSO
168 168
169L<bn_internal(3)|bn_internal(3)>, 169L<bn_internal(3)|bn_internal(3)>, L<dh(3)|dh(3)>, L<err(3)|err(3)>,
170L<dh(3)|dh(3)>, L<err(3)|err(3)>, L<rand(3)|rand(3)>, L<rsa(3)|rsa(3)>, 170L<rand(3)|rand(3)>, L<rsa(3)|rsa(3)>, L<BN_new(3)|BN_new(3)>,
171L<BN_new(3)|BN_new(3)>, L<BN_CTX_new(3)|BN_CTX_new(3)>, 171L<BN_CTX_new(3)|BN_CTX_new(3)>, L<BN_copy(3)|BN_copy(3)>,
172L<BN_copy(3)|BN_copy(3)>, L<BN_swap(3)|BN_swap(3)>, L<BN_num_bytes(3)|BN_num_bytes(3)>, 172L<BN_swap(3)|BN_swap(3)>, L<BN_num_bytes(3)|BN_num_bytes(3)>,
173L<BN_add(3)|BN_add(3)>, L<BN_add_word(3)|BN_add_word(3)>, 173L<BN_add(3)|BN_add(3)>, L<BN_add_word(3)|BN_add_word(3)>,
174L<BN_cmp(3)|BN_cmp(3)>, L<BN_zero(3)|BN_zero(3)>, L<BN_rand(3)|BN_rand(3)>, 174L<BN_cmp(3)|BN_cmp(3)>, L<BN_zero(3)|BN_zero(3)>, L<BN_rand(3)|BN_rand(3)>,
175L<BN_generate_prime(3)|BN_generate_prime(3)>, L<BN_set_bit(3)|BN_set_bit(3)>, 175L<BN_generate_prime(3)|BN_generate_prime(3)>, L<BN_set_bit(3)|BN_set_bit(3)>,
diff --git a/src/lib/libcrypto/doc/d2i_RSAPublicKey.pod b/src/lib/libcrypto/doc/d2i_RSAPublicKey.pod
index 1711dc038f..68e7f27de5 100644
--- a/src/lib/libcrypto/doc/d2i_RSAPublicKey.pod
+++ b/src/lib/libcrypto/doc/d2i_RSAPublicKey.pod
@@ -29,14 +29,14 @@ d2i_Netscape_RSA - RSA public and private key encoding functions.
29 29
30=head1 DESCRIPTION 30=head1 DESCRIPTION
31 31
32d2i_RSAPublicKey() and i2d_RSAPublicKey() decode and encode a PKCS#1 RSAPublicKey 32d2i_RSAPublicKey() and i2d_RSAPublicKey() decode and encode a PKCS#1
33structure. 33RSAPublicKey structure.
34 34
35d2i_RSA_PUBKEY() and i2d_RSA_PUBKEY() decode and encode an RSA public key using 35d2i_RSA_PUBKEY() and i2d_RSA_PUBKEY() decode and encode an RSA public key using
36a SubjectPublicKeyInfo (certificate public key) structure. 36a SubjectPublicKeyInfo (certificate public key) structure.
37 37
38d2i_RSAPrivateKey(), i2d_RSAPrivateKey() decode and encode a PKCS#1 RSAPrivateKey 38d2i_RSAPrivateKey(), i2d_RSAPrivateKey() decode and encode a PKCS#1
39structure. 39RSAPrivateKey structure.
40 40
41d2i_Netscape_RSA(), i2d_Netscape_RSA() decode and encode an RSA private key in 41d2i_Netscape_RSA(), i2d_Netscape_RSA() decode and encode an RSA private key in
42NET format. 42NET format.
diff --git a/src/lib/libcrypto/doc/dh.pod b/src/lib/libcrypto/doc/dh.pod
index 97aaa75731..5fb9890a77 100644
--- a/src/lib/libcrypto/doc/dh.pod
+++ b/src/lib/libcrypto/doc/dh.pod
@@ -40,10 +40,11 @@ dh - Diffie-Hellman key agreement
40 40
41=head1 DESCRIPTION 41=head1 DESCRIPTION
42 42
43These functions implement the Diffie-Hellman key agreement protocol. 43These functions implement the Diffie-Hellman key agreement protocol. The
44The generation of shared DH parameters is described in 44generation of shared DH parameters is described in
45L<DH_generate_parameters(3)|DH_generate_parameters(3)>; L<DH_generate_key(3)|DH_generate_key(3)> describes how 45L<DH_generate_parameters(3)|DH_generate_parameters(3)>;
46to perform a key agreement. 46L<DH_generate_key(3)|DH_generate_key(3)> describes how to perform a key
47agreement.
47 48
48The B<DH> structure consists of several BIGNUM components. 49The B<DH> structure consists of several BIGNUM components.
49 50
diff --git a/src/lib/libssl/src/doc/crypto/ASN1_OBJECT_new.pod b/src/lib/libssl/src/doc/crypto/ASN1_OBJECT_new.pod
index 9bae40fccf..b88eb62556 100644
--- a/src/lib/libssl/src/doc/crypto/ASN1_OBJECT_new.pod
+++ b/src/lib/libssl/src/doc/crypto/ASN1_OBJECT_new.pod
@@ -40,6 +40,7 @@ L<ERR_get_error(3)|ERR_get_error(3)>, L<d2i_ASN1_OBJECT(3)|d2i_ASN1_OBJECT(3)>
40 40
41=head1 HISTORY 41=head1 HISTORY
42 42
43ASN1_OBJECT_new() and ASN1_OBJECT_free() are available in all versions of SSLeay and OpenSSL. 43ASN1_OBJECT_new() and ASN1_OBJECT_free() are available in all versions of
44SSLeay and OpenSSL.
44 45
45=cut 46=cut
diff --git a/src/lib/libssl/src/doc/crypto/ASN1_STRING_print_ex.pod b/src/lib/libssl/src/doc/crypto/ASN1_STRING_print_ex.pod
index 70ac9b8488..3b6ab8b710 100644
--- a/src/lib/libssl/src/doc/crypto/ASN1_STRING_print_ex.pod
+++ b/src/lib/libssl/src/doc/crypto/ASN1_STRING_print_ex.pod
@@ -28,25 +28,27 @@ with '.'.
28 28
29=head1 NOTES 29=head1 NOTES
30 30
31ASN1_STRING_print() is a legacy function which should be avoided in new applications. 31ASN1_STRING_print() is a legacy function which should be avoided in new
32applications.
32 33
33Although there are a large number of options frequently B<ASN1_STRFLGS_RFC2253> is 34Although there are a large number of options frequently B<ASN1_STRFLGS_RFC2253>
34suitable, or on UTF8 terminals B<ASN1_STRFLGS_RFC2253 & ~ASN1_STRFLGS_ESC_MSB>. 35is suitable, or on UTF8 terminals B<ASN1_STRFLGS_RFC2253 &
36~ASN1_STRFLGS_ESC_MSB>.
35 37
36The complete set of supported options for B<flags> is listed below. 38The complete set of supported options for B<flags> is listed below.
37 39
38Various characters can be escaped. If B<ASN1_STRFLGS_ESC_2253> is set the characters 40Various characters can be escaped. If B<ASN1_STRFLGS_ESC_2253> is set the
39determined by RFC2253 are escaped. If B<ASN1_STRFLGS_ESC_CTRL> is set control 41characters determined by RFC2253 are escaped. If B<ASN1_STRFLGS_ESC_CTRL> is
40characters are escaped. If B<ASN1_STRFLGS_ESC_MSB> is set characters with the 42set control characters are escaped. If B<ASN1_STRFLGS_ESC_MSB> is set
41MSB set are escaped: this option should B<not> be used if the terminal correctly 43characters with the MSB set are escaped: this option should B<not> be used if
42interprets UTF8 sequences. 44the terminal correctly interprets UTF8 sequences.
43 45
44Escaping takes several forms. 46Escaping takes several forms.
45 47
46If the character being escaped is a 16 bit character then the form "\UXXXX" is used 48If the character being escaped is a 16 bit character then the form "\UXXXX" is
47using exactly four characters for the hex representation. If it is 32 bits then 49used using exactly four characters for the hex representation. If it is 32 bits
48"\WXXXXXXXX" is used using eight characters of its hex representation. These forms 50then "\WXXXXXXXX" is used using eight characters of its hex representation.
49will only be used if UTF8 conversion is not set (see below). 51These forms will only be used if UTF8 conversion is not set (see below).
50 52
51Printable characters are normally escaped using the backslash '\' character. If 53Printable characters are normally escaped using the backslash '\' character. If
52B<ASN1_STRFLGS_ESC_QUOTE> is set then the whole string is instead surrounded by 54B<ASN1_STRFLGS_ESC_QUOTE> is set then the whole string is instead surrounded by
@@ -58,9 +60,10 @@ If B<ASN1_STRFLGS_UTF8_CONVERT> is set then characters are converted to UTF8
58format first. If the terminal supports the display of UTF8 sequences then this 60format first. If the terminal supports the display of UTF8 sequences then this
59option will correctly display multi byte characters. 61option will correctly display multi byte characters.
60 62
61If B<ASN1_STRFLGS_IGNORE_TYPE> is set then the string type is not interpreted at 63If B<ASN1_STRFLGS_IGNORE_TYPE> is set then the string type is not interpreted
62all: everything is assumed to be one byte per character. This is primarily for 64at all: everything is assumed to be one byte per character. This is primarily
63debugging purposes and can result in confusing output in multi character strings. 65for debugging purposes and can result in confusing output in multi character
66strings.
64 67
65If B<ASN1_STRFLGS_SHOW_TYPE> is set then the string type itself is printed out 68If B<ASN1_STRFLGS_SHOW_TYPE> is set then the string type itself is printed out
66before its value (for example "BMPSTRING"), this actually uses ASN1_tag2str(). 69before its value (for example "BMPSTRING"), this actually uses ASN1_tag2str().
diff --git a/src/lib/libssl/src/doc/crypto/BIO_ctrl.pod b/src/lib/libssl/src/doc/crypto/BIO_ctrl.pod
index cf203eeb96..e2d3b0aa54 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_ctrl.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_ctrl.pod
@@ -12,7 +12,8 @@ BIO_get_info_callback, BIO_set_info_callback - BIO control operations
12 #include <openssl/bio.h> 12 #include <openssl/bio.h>
13 13
14 long BIO_ctrl(BIO *bp,int cmd,long larg,void *parg); 14 long BIO_ctrl(BIO *bp,int cmd,long larg,void *parg);
15 long BIO_callback_ctrl(BIO *b, int cmd, void (*fp)(struct bio_st *, int, const char *, int, long, long)); 15 long BIO_callback_ctrl(BIO *b, int cmd, void (*fp)(struct bio_st *, int,
16 const char *, int, long, long));
16 char * BIO_ptr_ctrl(BIO *bp,int cmd,long larg); 17 char * BIO_ptr_ctrl(BIO *bp,int cmd,long larg);
17 long BIO_int_ctrl(BIO *bp,int cmd,long larg,int iarg); 18 long BIO_int_ctrl(BIO *bp,int cmd,long larg,int iarg);
18 19
@@ -31,7 +32,8 @@ BIO_get_info_callback, BIO_set_info_callback - BIO control operations
31 int BIO_get_info_callback(BIO *b,bio_info_cb **cbp); 32 int BIO_get_info_callback(BIO *b,bio_info_cb **cbp);
32 int BIO_set_info_callback(BIO *b,bio_info_cb *cb); 33 int BIO_set_info_callback(BIO *b,bio_info_cb *cb);
33 34
34 typedef void bio_info_cb(BIO *b, int oper, const char *ptr, int arg1, long arg2, long arg3); 35 typedef void bio_info_cb(BIO *b, int oper, const char *ptr, int arg1,
36 long arg2, long arg3);
35 37
36=head1 DESCRIPTION 38=head1 DESCRIPTION
37 39
diff --git a/src/lib/libssl/src/doc/crypto/BIO_f_buffer.pod b/src/lib/libssl/src/doc/crypto/BIO_f_buffer.pod
index c0dccf1abe..f44d24be3f 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_f_buffer.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_f_buffer.pod
@@ -29,11 +29,11 @@ Calling BIO_reset() on a buffering BIO clears any buffered data.
29 29
30BIO_get_buffer_num_lines() returns the number of lines currently buffered. 30BIO_get_buffer_num_lines() returns the number of lines currently buffered.
31 31
32BIO_set_read_buffer_size(), BIO_set_write_buffer_size() and BIO_set_buffer_size() 32BIO_set_read_buffer_size(), BIO_set_write_buffer_size() and
33set the read, write or both read and write buffer sizes to B<size>. The initial 33BIO_set_buffer_size() set the read, write or both read and write buffer sizes
34buffer size is DEFAULT_BUFFER_SIZE, currently 4096. Any attempt to reduce the 34to B<size>. The initial buffer size is DEFAULT_BUFFER_SIZE, currently 4096. Any
35buffer size below DEFAULT_BUFFER_SIZE is ignored. Any buffered data is cleared 35attempt to reduce the buffer size below DEFAULT_BUFFER_SIZE is ignored. Any
36when the buffer is resized. 36buffered data is cleared when the buffer is resized.
37 37
38BIO_set_buffer_read_data() clears the read buffer and fills it with B<num> 38BIO_set_buffer_read_data() clears the read buffer and fills it with B<num>
39bytes of B<buf>. If B<num> is larger than the current buffer size the buffer 39bytes of B<buf>. If B<num> is larger than the current buffer size the buffer
@@ -58,8 +58,9 @@ BIO_f_buffer() returns the buffering BIO method.
58 58
59BIO_get_buffer_num_lines() returns the number of lines buffered (may be 0). 59BIO_get_buffer_num_lines() returns the number of lines buffered (may be 0).
60 60
61BIO_set_read_buffer_size(), BIO_set_write_buffer_size() and BIO_set_buffer_size() 61BIO_set_read_buffer_size(), BIO_set_write_buffer_size() and
62return 1 if the buffer was successfully resized or 0 for failure. 62BIO_set_buffer_size() return 1 if the buffer was successfully resized or 0 for
63failure.
63 64
64BIO_set_buffer_read_data() returns 1 if the data was set correctly or 0 if 65BIO_set_buffer_read_data() returns 1 if the data was set correctly or 0 if
65there was an error. 66there was an error.
diff --git a/src/lib/libssl/src/doc/crypto/BIO_f_cipher.pod b/src/lib/libssl/src/doc/crypto/BIO_f_cipher.pod
index c0b23c680c..38453c101d 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_f_cipher.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_f_cipher.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5BIO_f_cipher, BIO_set_cipher, BIO_get_cipher_status, BIO_get_cipher_ctx - cipher BIO filter 5BIO_f_cipher, BIO_set_cipher, BIO_get_cipher_status, BIO_get_cipher_ctx -
6cipher BIO filter
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/BIO_find_type.pod b/src/lib/libssl/src/doc/crypto/BIO_find_type.pod
index bd3b256196..99b1626f56 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_find_type.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_find_type.pod
@@ -47,7 +47,8 @@ B<BIO_TYPE_SOURCE_SINK>) then the next matching BIO of the given general type is
47searched for. BIO_find_type() returns the next matching BIO or NULL if none is 47searched for. BIO_find_type() returns the next matching BIO or NULL if none is
48found. 48found.
49 49
50Note: not all the B<BIO_TYPE_*> types above have corresponding BIO implementations. 50Note: not all the B<BIO_TYPE_*> types above have corresponding BIO
51implementations.
51 52
52BIO_next() returns the next BIO in a chain. It can be used to traverse all BIOs 53BIO_next() returns the next BIO in a chain. It can be used to traverse all BIOs
53in a chain or used in conjunction with BIO_find_type() to find all BIOs of a 54in a chain or used in conjunction with BIO_find_type() to find all BIOs of a
diff --git a/src/lib/libssl/src/doc/crypto/BIO_new.pod b/src/lib/libssl/src/doc/crypto/BIO_new.pod
index 2a245fc8de..8c7aeac6de 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_new.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_new.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all - BIO allocation and freeing functions 5BIO_new, BIO_set, BIO_free, BIO_vfree, BIO_free_all - BIO allocation and
6freeing functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/BIO_s_bio.pod b/src/lib/libssl/src/doc/crypto/BIO_s_bio.pod
index 39ae79fd30..61ded32a02 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_s_bio.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_s_bio.pod
@@ -33,18 +33,19 @@ BIO_ctrl_get_read_request, BIO_ctrl_reset_read_request - BIO pair BIO
33 33
34=head1 DESCRIPTION 34=head1 DESCRIPTION
35 35
36BIO_s_bio() returns the method for a BIO pair. A BIO pair is a pair of source/sink 36BIO_s_bio() returns the method for a BIO pair. A BIO pair is a pair of
37BIOs where data written to either half of the pair is buffered and can be read from 37source/sink BIOs where data written to either half of the pair is buffered and
38the other half. Both halves must usually by handled by the same application thread 38can be read from the other half. Both halves must usually by handled by the
39since no locking is done on the internal data structures. 39same application thread since no locking is done on the internal data
40structures.
40 41
41Since BIO chains typically end in a source/sink BIO it is possible to make this 42Since BIO chains typically end in a source/sink BIO it is possible to make this
42one half of a BIO pair and have all the data processed by the chain under application 43one half of a BIO pair and have all the data processed by the chain under
43control. 44application control.
44 45
45One typical use of BIO pairs is to place TLS/SSL I/O under application control, this 46One typical use of BIO pairs is to place TLS/SSL I/O under application control,
46can be used when the application wishes to use a non standard transport for 47this can be used when the application wishes to use a non standard transport
47TLS/SSL or the normal socket routines are inappropriate. 48for TLS/SSL or the normal socket routines are inappropriate.
48 49
49Calls to BIO_read() will read data from the buffer or request a retry if no 50Calls to BIO_read() will read data from the buffer or request a retry if no
50data is available. 51data is available.
@@ -81,10 +82,10 @@ B<bio1> or B<bio2> do point to some other BIO, the values are overwritten,
81BIO_free() is not called. 82BIO_free() is not called.
82 83
83BIO_get_write_guarantee() and BIO_ctrl_get_write_guarantee() return the maximum 84BIO_get_write_guarantee() and BIO_ctrl_get_write_guarantee() return the maximum
84length of data that can be currently written to the BIO. Writes larger than this 85length of data that can be currently written to the BIO. Writes larger than
85value will return a value from BIO_write() less than the amount requested or if the 86this value will return a value from BIO_write() less than the amount requested
86buffer is full request a retry. BIO_ctrl_get_write_guarantee() is a function 87or if the buffer is full request a retry. BIO_ctrl_get_write_guarantee() is a
87whereas BIO_get_write_guarantee() is a macro. 88function whereas BIO_get_write_guarantee() is a macro.
88 89
89BIO_get_read_request() and BIO_ctrl_get_read_request() return the 90BIO_get_read_request() and BIO_ctrl_get_read_request() return the
90amount of data requested, or the buffer size if it is less, if the 91amount of data requested, or the buffer size if it is less, if the
@@ -104,21 +105,23 @@ BIO_get_read_request() to zero.
104=head1 NOTES 105=head1 NOTES
105 106
106Both halves of a BIO pair should be freed. That is even if one half is implicit 107Both halves of a BIO pair should be freed. That is even if one half is implicit
107freed due to a BIO_free_all() or SSL_free() call the other half needs to be freed. 108freed due to a BIO_free_all() or SSL_free() call the other half needs to be
109freed.
108 110
109When used in bidirectional applications (such as TLS/SSL) care should be taken to 111When used in bidirectional applications (such as TLS/SSL) care should be taken
110flush any data in the write buffer. This can be done by calling BIO_pending() 112to flush any data in the write buffer. This can be done by calling
111on the other half of the pair and, if any data is pending, reading it and sending 113BIO_pending() on the other half of the pair and, if any data is pending,
112it to the underlying transport. This must be done before any normal processing 114reading it and sending it to the underlying transport. This must be done before
113(such as calling select() ) due to a request and BIO_should_read() being true. 115any normal processing (such as calling select() ) due to a request and
116BIO_should_read() being true.
114 117
115To see why this is important consider a case where a request is sent using 118To see why this is important consider a case where a request is sent using
116BIO_write() and a response read with BIO_read(), this can occur during an 119BIO_write() and a response read with BIO_read(), this can occur during an
117TLS/SSL handshake for example. BIO_write() will succeed and place data in the write 120TLS/SSL handshake for example. BIO_write() will succeed and place data in the
118buffer. BIO_read() will initially fail and BIO_should_read() will be true. If 121write buffer. BIO_read() will initially fail and BIO_should_read() will be
119the application then waits for data to be available on the underlying transport 122true. If the application then waits for data to be available on the underlying
120before flushing the write buffer it will never succeed because the request was 123transport before flushing the write buffer it will never succeed because the
121never sent! 124request was never sent!
122 125
123=head1 RETURN VALUES 126=head1 RETURN VALUES
124 127
diff --git a/src/lib/libssl/src/doc/crypto/BIO_s_fd.pod b/src/lib/libssl/src/doc/crypto/BIO_s_fd.pod
index 9bbac29f10..98749c9b67 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_s_fd.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_s_fd.pod
@@ -46,10 +46,10 @@ BIO_new_fd() returns a file descriptor BIO using B<fd> and B<close_flag>.
46=head1 NOTES 46=head1 NOTES
47 47
48The behaviour of BIO_read() and BIO_write() depends on the behavior of the 48The behaviour of BIO_read() and BIO_write() depends on the behavior of the
49platforms read() and write() calls on the descriptor. If the underlying 49platforms read() and write() calls on the descriptor. If the underlying file
50file descriptor is in a non blocking mode then the BIO will behave in the 50descriptor is in a non blocking mode then the BIO will behave in the manner
51manner described in the L<BIO_read(3)|BIO_read(3)> and L<BIO_should_retry(3)|BIO_should_retry(3)> 51described in the L<BIO_read(3)|BIO_read(3)> and
52manual pages. 52L<BIO_should_retry(3)|BIO_should_retry(3)> manual pages.
53 53
54File descriptor BIOs should not be used for socket I/O. Use socket BIOs 54File descriptor BIOs should not be used for socket I/O. Use socket BIOs
55instead. 55instead.
diff --git a/src/lib/libssl/src/doc/crypto/BIO_set_callback.pod b/src/lib/libssl/src/doc/crypto/BIO_set_callback.pod
index 4759556245..ab35303590 100644
--- a/src/lib/libssl/src/doc/crypto/BIO_set_callback.pod
+++ b/src/lib/libssl/src/doc/crypto/BIO_set_callback.pod
@@ -81,9 +81,8 @@ after.
81 81
82=item B<BIO_gets(b, out, outl)> 82=item B<BIO_gets(b, out, outl)>
83 83
84callback(b, BIO_CB_GETS, out, outl, 0L, 1L) is called before 84callback(b, BIO_CB_GETS, out, outl, 0L, 1L) is called before the operation and
85the operation and callback(b, BIO_CB_GETS|BIO_CB_RETURN, out, outl, 0L, retvalue) 85callback(b, BIO_CB_GETS|BIO_CB_RETURN, out, outl, 0L, retvalue) after.
86after.
87 86
88=item B<BIO_puts(b, in)> 87=item B<BIO_puts(b, in)>
89 88
diff --git a/src/lib/libssl/src/doc/crypto/BN_add.pod b/src/lib/libssl/src/doc/crypto/BN_add.pod
index 88c7a799ee..15b28d8334 100644
--- a/src/lib/libssl/src/doc/crypto/BN_add.pod
+++ b/src/lib/libssl/src/doc/crypto/BN_add.pod
@@ -111,8 +111,9 @@ The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
111 111
112=head1 SEE ALSO 112=head1 SEE ALSO
113 113
114L<bn(3)|bn(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<BN_CTX_new(3)|BN_CTX_new(3)>, 114L<bn(3)|bn(3)>, L<ERR_get_error(3)|ERR_get_error(3)>,
115L<BN_add_word(3)|BN_add_word(3)>, L<BN_set_bit(3)|BN_set_bit(3)> 115L<BN_CTX_new(3)|BN_CTX_new(3)>, L<BN_add_word(3)|BN_add_word(3)>,
116L<BN_set_bit(3)|BN_set_bit(3)>
116 117
117=head1 HISTORY 118=head1 HISTORY
118 119
diff --git a/src/lib/libssl/src/doc/crypto/BN_add_word.pod b/src/lib/libssl/src/doc/crypto/BN_add_word.pod
index 70667d2893..ba1026417d 100644
--- a/src/lib/libssl/src/doc/crypto/BN_add_word.pod
+++ b/src/lib/libssl/src/doc/crypto/BN_add_word.pod
@@ -39,8 +39,8 @@ For BN_div_word() and BN_mod_word(), B<w> must not be 0.
39 39
40=head1 RETURN VALUES 40=head1 RETURN VALUES
41 41
42BN_add_word(), BN_sub_word() and BN_mul_word() return 1 for success, 0 42BN_add_word(), BN_sub_word() and BN_mul_word() return 1 for success, 0 on
43on error. The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. 43error. The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
44 44
45BN_mod_word() and BN_div_word() return B<a>%B<w> on success and 45BN_mod_word() and BN_div_word() return B<a>%B<w> on success and
46B<(BN_ULONG)-1> if an error occurred. 46B<(BN_ULONG)-1> if an error occurred.
diff --git a/src/lib/libssl/src/doc/crypto/BN_cmp.pod b/src/lib/libssl/src/doc/crypto/BN_cmp.pod
index 23e9ed0b4f..29df69631e 100644
--- a/src/lib/libssl/src/doc/crypto/BN_cmp.pod
+++ b/src/lib/libssl/src/doc/crypto/BN_cmp.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5BN_cmp, BN_ucmp, BN_is_zero, BN_is_one, BN_is_word, BN_is_odd - BIGNUM comparison and test functions 5BN_cmp, BN_ucmp, BN_is_zero, BN_is_one, BN_is_word, BN_is_odd - BIGNUM
6comparison and test functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/BN_generate_prime.pod b/src/lib/libssl/src/doc/crypto/BN_generate_prime.pod
index 6f28a63517..04fc80df9c 100644
--- a/src/lib/libssl/src/doc/crypto/BN_generate_prime.pod
+++ b/src/lib/libssl/src/doc/crypto/BN_generate_prime.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5BN_generate_prime, BN_is_prime, BN_is_prime_fasttest - generate primes and test for primality 5BN_generate_prime, BN_is_prime, BN_is_prime_fasttest - generate primes and test
6for primality
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/BN_mod_inverse.pod b/src/lib/libssl/src/doc/crypto/BN_mod_inverse.pod
index 3ea3975c74..aefb1d27dd 100644
--- a/src/lib/libssl/src/doc/crypto/BN_mod_inverse.pod
+++ b/src/lib/libssl/src/doc/crypto/BN_mod_inverse.pod
@@ -22,8 +22,8 @@ variables. B<r> may be the same B<BIGNUM> as B<a> or B<n>.
22 22
23=head1 RETURN VALUES 23=head1 RETURN VALUES
24 24
25BN_mod_inverse() returns the B<BIGNUM> containing the inverse, and 25BN_mod_inverse() returns the B<BIGNUM> containing the inverse, and NULL on
26NULL on error. The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. 26error. The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
27 27
28=head1 SEE ALSO 28=head1 SEE ALSO
29 29
diff --git a/src/lib/libssl/src/doc/crypto/BUF_MEM_new.pod b/src/lib/libssl/src/doc/crypto/BUF_MEM_new.pod
index 781f5b11ee..52f47caa40 100644
--- a/src/lib/libssl/src/doc/crypto/BUF_MEM_new.pod
+++ b/src/lib/libssl/src/doc/crypto/BUF_MEM_new.pod
@@ -44,14 +44,14 @@ BUF_MEM_grow() changes the size of an already existing buffer to
44B<len>. Any data already in the buffer is preserved if it increases in 44B<len>. Any data already in the buffer is preserved if it increases in
45size. 45size.
46 46
47BUF_strdup() copies a null terminated string into a block of allocated 47BUF_strdup() copies a null terminated string into a block of allocated memory
48memory and returns a pointer to the allocated block. 48and returns a pointer to the allocated block. Unlike the standard C library
49Unlike the standard C library strdup() this function uses OPENSSL_malloc() and so 49strdup() this function uses OPENSSL_malloc() and so should be used in
50should be used in preference to the standard library strdup() because it can 50preference to the standard library strdup() because it can be used for memory
51be used for memory leak checking or replacing the malloc() function. 51leak checking or replacing the malloc() function.
52 52
53The memory allocated from BUF_strdup() should be freed up using the OPENSSL_free() 53The memory allocated from BUF_strdup() should be freed up using the
54function. 54OPENSSL_free() function.
55 55
56=head1 RETURN VALUES 56=head1 RETURN VALUES
57 57
diff --git a/src/lib/libssl/src/doc/crypto/CMS_add0_cert.pod b/src/lib/libssl/src/doc/crypto/CMS_add0_cert.pod
index 78095948b9..3f042dc302 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_add0_cert.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_add0_cert.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_add0_cert, CMS_add1_cert, CMS_get1_certs, CMS_add0_crl, CMS_get1_crls, - CMS certificate and CRL utility functions 5CMS_add0_cert, CMS_add1_cert, CMS_get1_certs, CMS_add0_crl, CMS_get1_crls, -
6CMS certificate and CRL utility functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/CMS_add1_recipient_cert.pod b/src/lib/libssl/src/doc/crypto/CMS_add1_recipient_cert.pod
index d7d8e2532c..8a39391aa4 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_add1_recipient_cert.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_add1_recipient_cert.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_add1_recipient_cert, CMS_add0_recipient_key - add recipients to a CMS enveloped data structure 5CMS_add1_recipient_cert, CMS_add0_recipient_key - add recipients to a CMS
6enveloped data structure
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/CMS_decrypt.pod b/src/lib/libssl/src/doc/crypto/CMS_decrypt.pod
index d857e4f93f..403aa98d04 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_decrypt.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_decrypt.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_decrypt - decrypt content from a CMS envelopedData structure 5CMS_decrypt - decrypt content from a CMS envelopedData structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_encrypt.pod b/src/lib/libssl/src/doc/crypto/CMS_encrypt.pod
index 01100a6df6..4f26e24bf6 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_encrypt.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_encrypt.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_encrypt - create a CMS envelopedData structure 5CMS_encrypt - create a CMS envelopedData structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_final.pod b/src/lib/libssl/src/doc/crypto/CMS_final.pod
index beacc531ee..c5f1722aaf 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_final.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_final.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_final - finalise a CMS_ContentInfo structure 5CMS_final - finalise a CMS_ContentInfo structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_get0_RecipientInfos.pod b/src/lib/libssl/src/doc/crypto/CMS_get0_RecipientInfos.pod
index ba16e97b55..d9c4cb774b 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_get0_RecipientInfos.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_get0_RecipientInfos.pod
@@ -2,7 +2,11 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_get0_RecipientInfos, CMS_RecipientInfo_type, CMS_RecipientInfo_ktri_get0_signer_id,CMS_RecipientInfo_ktri_cert_cmp, CMS_RecipientInfo_set0_pkey, CMS_RecipientInfo_kekri_get0_id, CMS_RecipientInfo_kekri_id_cmp, CMS_RecipientInfo_set0_key, CMS_RecipientInfo_decrypt - CMS envelopedData RecipientInfo routines 5CMS_get0_RecipientInfos, CMS_RecipientInfo_type,
6CMS_RecipientInfo_ktri_get0_signer_id,CMS_RecipientInfo_ktri_cert_cmp,
7CMS_RecipientInfo_set0_pkey, CMS_RecipientInfo_kekri_get0_id,
8CMS_RecipientInfo_kekri_id_cmp, CMS_RecipientInfo_set0_key,
9CMS_RecipientInfo_decrypt - CMS envelopedData RecipientInfo routines
6 10
7=head1 SYNOPSIS 11=head1 SYNOPSIS
8 12
diff --git a/src/lib/libssl/src/doc/crypto/CMS_get0_SignerInfos.pod b/src/lib/libssl/src/doc/crypto/CMS_get0_SignerInfos.pod
index 47f6d2a047..557cda6c3e 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_get0_SignerInfos.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_get0_SignerInfos.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_get0_SignerInfos, CMS_SignerInfo_get0_signer_id, CMS_SignerInfo_cert_cmp, CMS_set1_signer_certs - CMS signedData signer functions. 5CMS_get0_SignerInfos, CMS_SignerInfo_get0_signer_id, CMS_SignerInfo_cert_cmp,
6CMS_set1_signer_certs - CMS signedData signer functions.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/CMS_get0_type.pod b/src/lib/libssl/src/doc/crypto/CMS_get0_type.pod
index 8ff1c3115c..bc2690ee1a 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_get0_type.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_get0_type.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_get0_type, CMS_set1_eContentType, CMS_get0_eContentType - get and set CMS content types 5CMS_get0_type, CMS_set1_eContentType, CMS_get0_eContentType - get and set CMS
6content types
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/CMS_get1_ReceiptRequest.pod b/src/lib/libssl/src/doc/crypto/CMS_get1_ReceiptRequest.pod
index 50c2b9b9ab..a7babb1a6e 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_get1_ReceiptRequest.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_get1_ReceiptRequest.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_ReceiptRequest_create0, CMS_add1_ReceiptRequest, CMS_get1_ReceiptRequest, CMS_ReceiptRequest_get0_values - CMS signed receipt request functions. 5CMS_ReceiptRequest_create0, CMS_add1_ReceiptRequest, CMS_get1_ReceiptRequest,
6CMS_ReceiptRequest_get0_values - CMS signed receipt request functions.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/CMS_sign.pod b/src/lib/libssl/src/doc/crypto/CMS_sign.pod
index 6b58ba3bdd..cc6d17faf6 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_sign.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_sign.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_sign - create a CMS SignedData structure 5CMS_sign - create a CMS SignedData structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
@@ -56,8 +56,9 @@ omitted.
56If present the SMIMECapabilities attribute indicates support for the following 56If present the SMIMECapabilities attribute indicates support for the following
57algorithms in preference order: 256 bit AES, Gost R3411-94, Gost 28147-89, 192 57algorithms in preference order: 256 bit AES, Gost R3411-94, Gost 28147-89, 192
58bit AES, 128 bit AES, triple DES, 128 bit RC2, 64 bit RC2, DES and 40 bit RC2. 58bit AES, 128 bit AES, triple DES, 128 bit RC2, 64 bit RC2, DES and 40 bit RC2.
59If any of these algorithms is not available then it will not be included: for example the GOST algorithms will not be included if the GOST ENGINE is 59If any of these algorithms is not available then it will not be included: for
60not loaded. 60example the GOST algorithms will not be included if the GOST ENGINE is not
61loaded.
61 62
62OpenSSL will by default identify signing certificates using issuer name 63OpenSSL will by default identify signing certificates using issuer name
63and serial number. If B<CMS_USE_KEYID> is set it will use the subject key 64and serial number. If B<CMS_USE_KEYID> is set it will use the subject key
diff --git a/src/lib/libssl/src/doc/crypto/CMS_sign_add1_signer.pod b/src/lib/libssl/src/doc/crypto/CMS_sign_add1_signer.pod
index 215e994b54..ed4d9a9234 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_sign_add1_signer.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_sign_add1_signer.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_sign_add1_signer, CMS_SignerInfo_sign - add a signer to a CMS_ContentInfo signed data structure. 5CMS_sign_add1_signer, CMS_SignerInfo_sign - add a signer to a CMS_ContentInfo
6signed data structure.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -77,8 +78,9 @@ have a subject key identifier extension.
77If present the SMIMECapabilities attribute indicates support for the following 78If present the SMIMECapabilities attribute indicates support for the following
78algorithms in preference order: 256 bit AES, Gost R3411-94, Gost 28147-89, 192 79algorithms in preference order: 256 bit AES, Gost R3411-94, Gost 28147-89, 192
79bit AES, 128 bit AES, triple DES, 128 bit RC2, 64 bit RC2, DES and 40 bit RC2. 80bit AES, 128 bit AES, triple DES, 128 bit RC2, 64 bit RC2, DES and 40 bit RC2.
80If any of these algorithms is not available then it will not be included: for example the GOST algorithms will not be included if the GOST ENGINE is 81If any of these algorithms is not available then it will not be included: for
81not loaded. 82example the GOST algorithms will not be included if the GOST ENGINE is not
83loaded.
82 84
83CMS_sign_add1_signer() returns an internal pointer to the CMS_SignerInfo 85CMS_sign_add1_signer() returns an internal pointer to the CMS_SignerInfo
84structure just added, this can be used to set additional attributes 86structure just added, this can be used to set additional attributes
diff --git a/src/lib/libssl/src/doc/crypto/CMS_sign_receipt.pod b/src/lib/libssl/src/doc/crypto/CMS_sign_receipt.pod
index cae1f83384..f603ab66f0 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_sign_receipt.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_sign_receipt.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_sign_receipt - create a CMS signed receipt 5CMS_sign_receipt - create a CMS signed receipt
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_uncompress.pod b/src/lib/libssl/src/doc/crypto/CMS_uncompress.pod
index c6056b027d..fcbfec128a 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_uncompress.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_uncompress.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_uncompress - uncompress a CMS CompressedData structure 5CMS_uncompress - uncompress a CMS CompressedData structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_verify.pod b/src/lib/libssl/src/doc/crypto/CMS_verify.pod
index 4a6b3bfc97..22b4c07513 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_verify.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_verify.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_verify - verify a CMS SignedData structure 5CMS_verify - verify a CMS SignedData structure
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CMS_verify_receipt.pod b/src/lib/libssl/src/doc/crypto/CMS_verify_receipt.pod
index 573e725ec1..2beadda129 100644
--- a/src/lib/libssl/src/doc/crypto/CMS_verify_receipt.pod
+++ b/src/lib/libssl/src/doc/crypto/CMS_verify_receipt.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CMS_verify_receipt - verify a CMS signed receipt 5CMS_verify_receipt - verify a CMS signed receipt
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CONF_modules_free.pod b/src/lib/libssl/src/doc/crypto/CONF_modules_free.pod
index 87bc7b783c..7c61b72c13 100644
--- a/src/lib/libssl/src/doc/crypto/CONF_modules_free.pod
+++ b/src/lib/libssl/src/doc/crypto/CONF_modules_free.pod
@@ -2,8 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CONF_modules_free, CONF_modules_finish, CONF_modules_unload - 5CONF_modules_free, CONF_modules_finish, CONF_modules_unload - OpenSSL
6 OpenSSL configuration cleanup functions 6configuration cleanup functions
7 7
8=head1 SYNOPSIS 8=head1 SYNOPSIS
9 9
diff --git a/src/lib/libssl/src/doc/crypto/CONF_modules_load_file.pod b/src/lib/libssl/src/doc/crypto/CONF_modules_load_file.pod
index 64e8127280..8cde6edb2d 100644
--- a/src/lib/libssl/src/doc/crypto/CONF_modules_load_file.pod
+++ b/src/lib/libssl/src/doc/crypto/CONF_modules_load_file.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 CONF_modules_load_file, CONF_modules_load - OpenSSL configuration functions 5CONF_modules_load_file, CONF_modules_load - OpenSSL configuration functions
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/CRYPTO_set_ex_data.pod b/src/lib/libssl/src/doc/crypto/CRYPTO_set_ex_data.pod
index 7409c02aac..0c8b378854 100644
--- a/src/lib/libssl/src/doc/crypto/CRYPTO_set_ex_data.pod
+++ b/src/lib/libssl/src/doc/crypto/CRYPTO_set_ex_data.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5CRYPTO_set_ex_data, CRYPTO_get_ex_data - internal application specific data functions 5CRYPTO_set_ex_data, CRYPTO_get_ex_data - internal application specific data
6functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -34,11 +35,12 @@ a previous B<CRYPTO_set_ex_data()> call.
34 35
35B<CRYPTO_set_ex_data()> returns 1 on success or 0 on failure. 36B<CRYPTO_set_ex_data()> returns 1 on success or 0 on failure.
36 37
37B<CRYPTO_get_ex_data()> returns the application data or 0 on failure. 0 may also 38B<CRYPTO_get_ex_data()> returns the application data or 0 on failure. 0 may
38be valid application data but currently it can only fail if given an invalid B<idx> 39also be valid application data but currently it can only fail if given an
39parameter. 40invalid B<idx> parameter.
40 41
41On failure an error code can be obtained from L<ERR_get_error(3)|ERR_get_error(3)>. 42On failure an error code can be obtained from
43L<ERR_get_error(3)|ERR_get_error(3)>.
42 44
43=head1 SEE ALSO 45=head1 SEE ALSO
44 46
@@ -48,6 +50,7 @@ L<DH_get_ex_new_index(3)|DH_get_ex_new_index(3)>
48 50
49=head1 HISTORY 51=head1 HISTORY
50 52
51CRYPTO_set_ex_data() and CRYPTO_get_ex_data() have been available since SSLeay 0.9.0. 53CRYPTO_set_ex_data() and CRYPTO_get_ex_data() have been available since SSLeay
540.9.0.
52 55
53=cut 56=cut
diff --git a/src/lib/libssl/src/doc/crypto/DH_generate_key.pod b/src/lib/libssl/src/doc/crypto/DH_generate_key.pod
index 81f09fdf45..148e13762b 100644
--- a/src/lib/libssl/src/doc/crypto/DH_generate_key.pod
+++ b/src/lib/libssl/src/doc/crypto/DH_generate_key.pod
@@ -40,7 +40,8 @@ The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
40 40
41=head1 SEE ALSO 41=head1 SEE ALSO
42 42
43L<dh(3)|dh(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<rand(3)|rand(3)>, L<DH_size(3)|DH_size(3)> 43L<dh(3)|dh(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, L<rand(3)|rand(3)>,
44L<DH_size(3)|DH_size(3)>
44 45
45=head1 HISTORY 46=head1 HISTORY
46 47
diff --git a/src/lib/libssl/src/doc/crypto/DH_generate_parameters.pod b/src/lib/libssl/src/doc/crypto/DH_generate_parameters.pod
index 862aa0c39a..d19e0217ee 100644
--- a/src/lib/libssl/src/doc/crypto/DH_generate_parameters.pod
+++ b/src/lib/libssl/src/doc/crypto/DH_generate_parameters.pod
@@ -23,11 +23,11 @@ seeded prior to calling DH_generate_parameters().
23B<prime_len> is the length in bits of the safe prime to be generated. 23B<prime_len> is the length in bits of the safe prime to be generated.
24B<generator> is a small number E<gt> 1, typically 2 or 5. 24B<generator> is a small number E<gt> 1, typically 2 or 5.
25 25
26A callback function may be used to provide feedback about the progress 26A callback function may be used to provide feedback about the progress of the
27of the key generation. If B<callback> is not B<NULL>, it will be 27key generation. If B<callback> is not B<NULL>, it will be called as described
28called as described in L<BN_generate_prime(3)|BN_generate_prime(3)> while a random prime 28in L<BN_generate_prime(3)|BN_generate_prime(3)> while a random prime number is
29number is generated, and when a prime has been found, B<callback(3, 29generated, and when a prime has been found, B<callback(3, 0, cb_arg)> is
300, cb_arg)> is called. 30called.
31 31
32DH_check() validates Diffie-Hellman parameters. It checks that B<p> is 32DH_check() validates Diffie-Hellman parameters. It checks that B<p> is
33a safe prime, and that B<g> is a suitable generator. In the case of an 33a safe prime, and that B<g> is a suitable generator. In the case of an
diff --git a/src/lib/libssl/src/doc/crypto/DH_get_ex_new_index.pod b/src/lib/libssl/src/doc/crypto/DH_get_ex_new_index.pod
index fa5eab2650..934ec094bb 100644
--- a/src/lib/libssl/src/doc/crypto/DH_get_ex_new_index.pod
+++ b/src/lib/libssl/src/doc/crypto/DH_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data - add application specific data to DH structures 5DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data - add application specific
6data to DH structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/DH_new.pod b/src/lib/libssl/src/doc/crypto/DH_new.pod
index 60c930093e..d6c3ca82b5 100644
--- a/src/lib/libssl/src/doc/crypto/DH_new.pod
+++ b/src/lib/libssl/src/doc/crypto/DH_new.pod
@@ -21,9 +21,9 @@ erased before the memory is returned to the system.
21 21
22=head1 RETURN VALUES 22=head1 RETURN VALUES
23 23
24If the allocation fails, DH_new() returns B<NULL> and sets an error 24If the allocation fails, DH_new() returns B<NULL> and sets an error code that
25code that can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns 25can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns a
26a pointer to the newly allocated structure. 26pointer to the newly allocated structure.
27 27
28DH_free() returns no value. 28DH_free() returns no value.
29 29
diff --git a/src/lib/libssl/src/doc/crypto/DSA_get_ex_new_index.pod b/src/lib/libssl/src/doc/crypto/DSA_get_ex_new_index.pod
index fb6efc1182..e2fcabf370 100644
--- a/src/lib/libssl/src/doc/crypto/DSA_get_ex_new_index.pod
+++ b/src/lib/libssl/src/doc/crypto/DSA_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data - add application specific data to DSA structures 5DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data - add application
6specific data to DSA structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/DSA_set_method.pod b/src/lib/libssl/src/doc/crypto/DSA_set_method.pod
index 5ad7362f58..707370adf7 100644
--- a/src/lib/libssl/src/doc/crypto/DSA_set_method.pod
+++ b/src/lib/libssl/src/doc/crypto/DSA_set_method.pod
@@ -103,8 +103,8 @@ B<DSA_METHOD>s.
103 103
104DSA_set_default_method() returns no value. 104DSA_set_default_method() returns no value.
105 105
106DSA_set_method() returns non-zero if the provided B<meth> was successfully set as 106DSA_set_method() returns non-zero if the provided B<meth> was successfully set
107the method for B<dsa> (including unloading the ENGINE handle if the previous 107as the method for B<dsa> (including unloading the ENGINE handle if the previous
108method was supplied by an ENGINE). 108method was supplied by an ENGINE).
109 109
110DSA_new_method() returns NULL and sets an error code that can be 110DSA_new_method() returns NULL and sets an error code that can be
@@ -117,8 +117,8 @@ As of version 0.9.7, DSA_METHOD implementations are grouped together with other
117algorithmic APIs (eg. RSA_METHOD, EVP_CIPHER, etc) in B<ENGINE> modules. If a 117algorithmic APIs (eg. RSA_METHOD, EVP_CIPHER, etc) in B<ENGINE> modules. If a
118default ENGINE is specified for DSA functionality using an ENGINE API function, 118default ENGINE is specified for DSA functionality using an ENGINE API function,
119that will override any DSA defaults set using the DSA API (ie. 119that will override any DSA defaults set using the DSA API (ie.
120DSA_set_default_method()). For this reason, the ENGINE API is the recommended way 120DSA_set_default_method()). For this reason, the ENGINE API is the recommended
121to control default implementations for use in DSA and other cryptographic 121way to control default implementations for use in DSA and other cryptographic
122algorithms. 122algorithms.
123 123
124=head1 SEE ALSO 124=head1 SEE ALSO
diff --git a/src/lib/libssl/src/doc/crypto/EVP_DigestInit.pod b/src/lib/libssl/src/doc/crypto/EVP_DigestInit.pod
index dcc5d73f69..2ff01b9c7c 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_DigestInit.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_DigestInit.pod
@@ -4,12 +4,12 @@
4 4
5EVP_MD_CTX_init, EVP_MD_CTX_create, EVP_DigestInit_ex, EVP_DigestUpdate, 5EVP_MD_CTX_init, EVP_MD_CTX_create, EVP_DigestInit_ex, EVP_DigestUpdate,
6EVP_DigestFinal_ex, EVP_MD_CTX_cleanup, EVP_MD_CTX_destroy, EVP_MAX_MD_SIZE, 6EVP_DigestFinal_ex, EVP_MD_CTX_cleanup, EVP_MD_CTX_destroy, EVP_MAX_MD_SIZE,
7EVP_MD_CTX_copy_ex, EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size, 7EVP_MD_CTX_copy_ex, EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type,
8EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size, EVP_MD_CTX_block_size, EVP_MD_CTX_type, 8EVP_MD_size, EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size,
9EVP_md_null, EVP_md2, EVP_md5, EVP_sha, EVP_sha1, EVP_sha224, EVP_sha256, 9EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_md_null, EVP_md2, EVP_md5, EVP_sha,
10EVP_sha384, EVP_sha512, EVP_dss, EVP_dss1, EVP_mdc2, 10EVP_sha1, EVP_sha224, EVP_sha256, EVP_sha384, EVP_sha512, EVP_dss, EVP_dss1,
11EVP_ripemd160, EVP_get_digestbyname, EVP_get_digestbynid, EVP_get_digestbyobj - 11EVP_mdc2, EVP_ripemd160, EVP_get_digestbyname, EVP_get_digestbynid,
12EVP digest routines 12EVP_get_digestbyobj - EVP digest routines
13 13
14=head1 SYNOPSIS 14=head1 SYNOPSIS
15 15
@@ -127,11 +127,11 @@ normally used when setting ASN1 OIDs.
127EVP_MD_CTX_md() returns the B<EVP_MD> structure corresponding to the passed 127EVP_MD_CTX_md() returns the B<EVP_MD> structure corresponding to the passed
128B<EVP_MD_CTX>. 128B<EVP_MD_CTX>.
129 129
130EVP_MD_pkey_type() returns the NID of the public key signing algorithm associated 130EVP_MD_pkey_type() returns the NID of the public key signing algorithm
131with this digest. For example EVP_sha1() is associated with RSA so this will 131associated with this digest. For example EVP_sha1() is associated with RSA so
132return B<NID_sha1WithRSAEncryption>. Since digests and signature algorithms 132this will return B<NID_sha1WithRSAEncryption>. Since digests and signature
133are no longer linked this function is only retained for compatibility 133algorithms are no longer linked this function is only retained for
134reasons. 134compatibility reasons.
135 135
136EVP_md2(), EVP_md5(), EVP_sha(), EVP_sha1(), EVP_sha224(), EVP_sha256(), 136EVP_md2(), EVP_md5(), EVP_sha(), EVP_sha1(), EVP_sha224(), EVP_sha256(),
137EVP_sha384(), EVP_sha512(), EVP_mdc2() and EVP_ripemd160() return B<EVP_MD> 137EVP_sha384(), EVP_sha512(), EVP_mdc2() and EVP_ripemd160() return B<EVP_MD>
diff --git a/src/lib/libssl/src/doc/crypto/EVP_DigestSignInit.pod b/src/lib/libssl/src/doc/crypto/EVP_DigestSignInit.pod
index 11e8f6f937..7aec6daecc 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_DigestSignInit.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_DigestSignInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_DigestSignInit, EVP_DigestSignUpdate, EVP_DigestSignFinal - EVP signing functions 5EVP_DigestSignInit, EVP_DigestSignUpdate, EVP_DigestSignFinal - EVP signing
6functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_DigestVerifyInit.pod b/src/lib/libssl/src/doc/crypto/EVP_DigestVerifyInit.pod
index 819e0d4b9f..60666bfddc 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_DigestVerifyInit.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_DigestVerifyInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_DigestVerifyInit, EVP_DigestVerifyUpdate, EVP_DigestVerifyFinal - EVP signature verification functions 5EVP_DigestVerifyInit, EVP_DigestVerifyUpdate, EVP_DigestVerifyFinal - EVP
6signature verification functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_EncryptInit.pod b/src/lib/libssl/src/doc/crypto/EVP_EncryptInit.pod
index 84875e0fe0..d42445cf10 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_EncryptInit.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_EncryptInit.pod
@@ -239,11 +239,13 @@ RC5 can be set.
239EVP_EncryptInit_ex(), EVP_EncryptUpdate() and EVP_EncryptFinal_ex() 239EVP_EncryptInit_ex(), EVP_EncryptUpdate() and EVP_EncryptFinal_ex()
240return 1 for success and 0 for failure. 240return 1 for success and 0 for failure.
241 241
242EVP_DecryptInit_ex() and EVP_DecryptUpdate() return 1 for success and 0 for failure. 242EVP_DecryptInit_ex() and EVP_DecryptUpdate() return 1 for success and 0 for
243EVP_DecryptFinal_ex() returns 0 if the decrypt failed or 1 for success. 243failure. EVP_DecryptFinal_ex() returns 0 if the decrypt failed or 1 for
244success.
244 245
245EVP_CipherInit_ex() and EVP_CipherUpdate() return 1 for success and 0 for failure. 246EVP_CipherInit_ex() and EVP_CipherUpdate() return 1 for success and 0 for
246EVP_CipherFinal_ex() returns 0 for a decryption failure or 1 for success. 247failure. EVP_CipherFinal_ex() returns 0 for a decryption failure or 1 for
248success.
247 249
248EVP_CIPHER_CTX_cleanup() returns 1 for success and 0 for failure. 250EVP_CIPHER_CTX_cleanup() returns 1 for success and 0 for failure.
249 251
@@ -285,11 +287,13 @@ Null cipher: does nothing.
285 287
286DES in CBC, ECB, CFB and OFB modes respectively. 288DES in CBC, ECB, CFB and OFB modes respectively.
287 289
288=item EVP_des_ede_cbc(void), EVP_des_ede(), EVP_des_ede_ofb(void), EVP_des_ede_cfb(void) 290=item EVP_des_ede_cbc(void), EVP_des_ede(), EVP_des_ede_ofb(void),
291EVP_des_ede_cfb(void)
289 292
290Two key triple DES in CBC, ECB, CFB and OFB modes respectively. 293Two key triple DES in CBC, ECB, CFB and OFB modes respectively.
291 294
292=item EVP_des_ede3_cbc(void), EVP_des_ede3(), EVP_des_ede3_ofb(void), EVP_des_ede3_cfb(void) 295=item EVP_des_ede3_cbc(void), EVP_des_ede3(), EVP_des_ede3_ofb(void),
296EVP_des_ede3_cfb(void)
293 297
294Three key triple DES in CBC, ECB, CFB and OFB modes respectively. 298Three key triple DES in CBC, ECB, CFB and OFB modes respectively.
295 299
@@ -299,44 +303,49 @@ DESX algorithm in CBC mode.
299 303
300=item EVP_rc4(void) 304=item EVP_rc4(void)
301 305
302RC4 stream cipher. This is a variable key length cipher with default key length 128 bits. 306RC4 stream cipher. This is a variable key length cipher with default key length
307128 bits.
303 308
304=item EVP_rc4_40(void) 309=item EVP_rc4_40(void)
305 310
306RC4 stream cipher with 40 bit key length. This is obsolete and new code should use EVP_rc4() 311RC4 stream cipher with 40 bit key length. This is obsolete and new code should
307and the EVP_CIPHER_CTX_set_key_length() function. 312use EVP_rc4() and the EVP_CIPHER_CTX_set_key_length() function.
308 313
309=item EVP_idea_cbc() EVP_idea_ecb(void), EVP_idea_cfb(void), EVP_idea_ofb(void), EVP_idea_cbc(void) 314=item EVP_idea_cbc() EVP_idea_ecb(void), EVP_idea_cfb(void),
315EVP_idea_ofb(void), EVP_idea_cbc(void)
310 316
311IDEA encryption algorithm in CBC, ECB, CFB and OFB modes respectively. 317IDEA encryption algorithm in CBC, ECB, CFB and OFB modes respectively.
312 318
313=item EVP_rc2_cbc(void), EVP_rc2_ecb(void), EVP_rc2_cfb(void), EVP_rc2_ofb(void) 319=item EVP_rc2_cbc(void), EVP_rc2_ecb(void), EVP_rc2_cfb(void), EVP_rc2_ofb(void)
314 320
315RC2 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 321RC2 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a
316length cipher with an additional parameter called "effective key bits" or "effective key length". 322variable key length cipher with an additional parameter called "effective key
317By default both are set to 128 bits. 323bits" or "effective key length". By default both are set to 128 bits.
318 324
319=item EVP_rc2_40_cbc(void), EVP_rc2_64_cbc(void) 325=item EVP_rc2_40_cbc(void), EVP_rc2_64_cbc(void)
320 326
321RC2 algorithm in CBC mode with a default key length and effective key length of 40 and 64 bits. 327RC2 algorithm in CBC mode with a default key length and effective key length of
322These are obsolete and new code should use EVP_rc2_cbc(), EVP_CIPHER_CTX_set_key_length() and 32840 and 64 bits. These are obsolete and new code should use EVP_rc2_cbc(),
323EVP_CIPHER_CTX_ctrl() to set the key length and effective key length. 329EVP_CIPHER_CTX_set_key_length() and EVP_CIPHER_CTX_ctrl() to set the key length
330and effective key length.
324 331
325=item EVP_bf_cbc(void), EVP_bf_ecb(void), EVP_bf_cfb(void), EVP_bf_ofb(void); 332=item EVP_bf_cbc(void), EVP_bf_ecb(void), EVP_bf_cfb(void), EVP_bf_ofb(void);
326 333
327Blowfish encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 334Blowfish encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This
328length cipher. 335is a variable key length cipher.
329 336
330=item EVP_cast5_cbc(void), EVP_cast5_ecb(void), EVP_cast5_cfb(void), EVP_cast5_ofb(void) 337=item EVP_cast5_cbc(void), EVP_cast5_ecb(void), EVP_cast5_cfb(void),
338EVP_cast5_ofb(void)
331 339
332CAST encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key 340CAST encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is
333length cipher. 341a variable key length cipher.
334 342
335=item EVP_rc5_32_12_16_cbc(void), EVP_rc5_32_12_16_ecb(void), EVP_rc5_32_12_16_cfb(void), EVP_rc5_32_12_16_ofb(void) 343=item EVP_rc5_32_12_16_cbc(void), EVP_rc5_32_12_16_ecb(void),
344EVP_rc5_32_12_16_cfb(void), EVP_rc5_32_12_16_ofb(void)
336 345
337RC5 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a variable key length 346RC5 encryption algorithm in CBC, ECB, CFB and OFB modes respectively. This is a
338cipher with an additional "number of rounds" parameter. By default the key length is set to 128 347variable key length cipher with an additional "number of rounds" parameter. By
339bits and 12 rounds. 348default the key length is set to 128 bits and 12 rounds.
340 349
341=back 350=back
342 351
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_ctrl.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_ctrl.pod
index e8d1ddda75..ba6e51100b 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_ctrl.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_ctrl.pod
@@ -65,14 +65,15 @@ RSA_PKCS1_OAEP_PADDING for OAEP padding (encrypt and decrypt only),
65RSA_X931_PADDING for X9.31 padding (signature operations only) and 65RSA_X931_PADDING for X9.31 padding (signature operations only) and
66RSA_PKCS1_PSS_PADDING (sign and verify only). 66RSA_PKCS1_PSS_PADDING (sign and verify only).
67 67
68Two RSA padding modes behave differently if EVP_PKEY_CTX_set_signature_md() 68Two RSA padding modes behave differently if EVP_PKEY_CTX_set_signature_md() is
69is used. If this macro is called for PKCS#1 padding the plaintext buffer is 69used. If this macro is called for PKCS#1 padding the plaintext buffer is an
70an actual digest value and is encapsulated in a DigestInfo structure according 70actual digest value and is encapsulated in a DigestInfo structure according to
71to PKCS#1 when signing and this structure is expected (and stripped off) when 71PKCS#1 when signing and this structure is expected (and stripped off) when
72verifying. If this control is not used with RSA and PKCS#1 padding then the 72verifying. If this control is not used with RSA and PKCS#1 padding then the
73supplied data is used directly and not encapsulated. In the case of X9.31 73supplied data is used directly and not encapsulated. In the case of X9.31
74padding for RSA the algorithm identifier byte is added or checked and removed 74padding for RSA the algorithm identifier byte is added or checked and removed
75if this control is called. If it is not called then the first byte of the plaintext buffer is expected to be the algorithm identifier byte. 75if this control is called. If it is not called then the first byte of the
76plaintext buffer is expected to be the algorithm identifier byte.
76 77
77The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro sets the RSA PSS salt length to 78The EVP_PKEY_CTX_set_rsa_pss_saltlen() macro sets the RSA PSS salt length to
78B<len> as its name implies it is only supported for PSS padding. Two special 79B<len> as its name implies it is only supported for PSS padding. Two special
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_new.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_new.pod
index a9af867580..9822d6806f 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_new.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_CTX_new.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_CTX_new, EVP_PKEY_CTX_new_id, EVP_PKEY_CTX_dup, EVP_PKEY_CTX_free - public key algorithm context functions. 5EVP_PKEY_CTX_new, EVP_PKEY_CTX_new_id, EVP_PKEY_CTX_dup, EVP_PKEY_CTX_free -
6public key algorithm context functions.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_cmp.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_cmp.pod
index 4145245299..c389216086 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_cmp.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_cmp.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_copy_parameters, EVP_PKEY_missing_parameters, EVP_PKEY_cmp_parameters, EVP_PKEY_cmp - public key parameter and comparison functions 5EVP_PKEY_copy_parameters, EVP_PKEY_missing_parameters, EVP_PKEY_cmp_parameters,
6EVP_PKEY_cmp - public key parameter and comparison functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_derive.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_derive.pod
index de877ead1a..2424ce0e54 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_derive.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_derive.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_derive_init, EVP_PKEY_derive_set_peer, EVP_PKEY_derive - derive public key algorithm shared secret. 5EVP_PKEY_derive_init, EVP_PKEY_derive_set_peer, EVP_PKEY_derive - derive public
6key algorithm shared secret.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_keygen.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_keygen.pod
index b6102da036..378fb310ff 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_keygen.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_keygen.pod
@@ -2,7 +2,10 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_keygen_init, EVP_PKEY_keygen, EVP_PKEY_paramgen_init, EVP_PKEY_paramgen, EVP_PKEY_CTX_set_cb, EVP_PKEY_CTX_get_cb, EVP_PKEY_CTX_get_keygen_info, EVP_PKEVP_PKEY_CTX_set_app_data, EVP_PKEY_CTX_get_app_data - key and parameter generation functions 5EVP_PKEY_keygen_init, EVP_PKEY_keygen, EVP_PKEY_paramgen_init,
6EVP_PKEY_paramgen, EVP_PKEY_CTX_set_cb, EVP_PKEY_CTX_get_cb,
7EVP_PKEY_CTX_get_keygen_info, EVP_PKEVP_PKEY_CTX_set_app_data,
8EVP_PKEY_CTX_get_app_data - key and parameter generation functions
6 9
7=head1 SYNOPSIS 10=head1 SYNOPSIS
8 11
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_print_private.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_print_private.pod
index c9b7a89821..eabbaed264 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_print_private.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_print_private.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_print_public, EVP_PKEY_print_private, EVP_PKEY_print_params - public key algorithm printing routines. 5EVP_PKEY_print_public, EVP_PKEY_print_private, EVP_PKEY_print_params - public
6key algorithm printing routines.
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_set1_RSA.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_set1_RSA.pod
index 8afb1b22e1..c2031c3d0b 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_set1_RSA.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_set1_RSA.pod
@@ -4,8 +4,8 @@
4 4
5EVP_PKEY_set1_RSA, EVP_PKEY_set1_DSA, EVP_PKEY_set1_DH, EVP_PKEY_set1_EC_KEY, 5EVP_PKEY_set1_RSA, EVP_PKEY_set1_DSA, EVP_PKEY_set1_DH, EVP_PKEY_set1_EC_KEY,
6EVP_PKEY_get1_RSA, EVP_PKEY_get1_DSA, EVP_PKEY_get1_DH, EVP_PKEY_get1_EC_KEY, 6EVP_PKEY_get1_RSA, EVP_PKEY_get1_DSA, EVP_PKEY_get1_DH, EVP_PKEY_get1_EC_KEY,
7EVP_PKEY_assign_RSA, EVP_PKEY_assign_DSA, EVP_PKEY_assign_DH, EVP_PKEY_assign_EC_KEY, 7EVP_PKEY_assign_RSA, EVP_PKEY_assign_DSA, EVP_PKEY_assign_DH,
8EVP_PKEY_type - EVP_PKEY assignment functions. 8EVP_PKEY_assign_EC_KEY, EVP_PKEY_type - EVP_PKEY assignment functions.
9 9
10=head1 SYNOPSIS 10=head1 SYNOPSIS
11 11
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify.pod
index f7ae4f9ebe..ba317b4e7b 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_verify_init, EVP_PKEY_verify - signature verification using a public key algorithm 5EVP_PKEY_verify_init, EVP_PKEY_verify - signature verification using a public
6key algorithm
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify_recover.pod b/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify_recover.pod
index 00d53db783..4debf7bff0 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify_recover.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_PKEY_verify_recover.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_PKEY_verify_recover_init, EVP_PKEY_verify_recover - recover signature using a public key algorithm 5EVP_PKEY_verify_recover_init, EVP_PKEY_verify_recover - recover signature using
6a public key algorithm
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -45,7 +46,8 @@ context if several operations are performed using the same parameters.
45 46
46=head1 RETURN VALUES 47=head1 RETURN VALUES
47 48
48EVP_PKEY_verify_recover_init() and EVP_PKEY_verify_recover() return 1 for success 49EVP_PKEY_verify_recover_init() and EVP_PKEY_verify_recover() return 1 for
50success
49and 0 or a negative value for failure. In particular a return value of -2 51and 0 or a negative value for failure. In particular a return value of -2
50indicates the operation is not supported by the public key algorithm. 52indicates the operation is not supported by the public key algorithm.
51 53
diff --git a/src/lib/libssl/src/doc/crypto/EVP_VerifyInit.pod b/src/lib/libssl/src/doc/crypto/EVP_VerifyInit.pod
index 0ffb0a8077..c665ee2ebc 100644
--- a/src/lib/libssl/src/doc/crypto/EVP_VerifyInit.pod
+++ b/src/lib/libssl/src/doc/crypto/EVP_VerifyInit.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5EVP_VerifyInit, EVP_VerifyUpdate, EVP_VerifyFinal - EVP signature verification functions 5EVP_VerifyInit, EVP_VerifyUpdate, EVP_VerifyFinal - EVP signature verification
6functions
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -38,8 +39,8 @@ implementation of digest B<type>.
38EVP_VerifyInit_ex() and EVP_VerifyUpdate() return 1 for success and 0 for 39EVP_VerifyInit_ex() and EVP_VerifyUpdate() return 1 for success and 0 for
39failure. 40failure.
40 41
41EVP_VerifyFinal() returns 1 for a correct signature, 0 for failure and -1 if some 42EVP_VerifyFinal() returns 1 for a correct signature, 0 for failure and -1 if
42other error occurred. 43some other error occurred.
43 44
44The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. 45The error codes can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>.
45 46
diff --git a/src/lib/libssl/src/doc/crypto/OBJ_nid2obj.pod b/src/lib/libssl/src/doc/crypto/OBJ_nid2obj.pod
index 458ef025f0..b2b8af990c 100644
--- a/src/lib/libssl/src/doc/crypto/OBJ_nid2obj.pod
+++ b/src/lib/libssl/src/doc/crypto/OBJ_nid2obj.pod
@@ -2,9 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5OBJ_nid2obj, OBJ_nid2ln, OBJ_nid2sn, OBJ_obj2nid, OBJ_txt2nid, OBJ_ln2nid, OBJ_sn2nid, 5OBJ_nid2obj, OBJ_nid2ln, OBJ_nid2sn, OBJ_obj2nid, OBJ_txt2nid, OBJ_ln2nid,
6OBJ_cmp, OBJ_dup, OBJ_txt2obj, OBJ_obj2txt, OBJ_create, OBJ_cleanup - ASN1 object utility 6OBJ_sn2nid, OBJ_cmp, OBJ_dup, OBJ_txt2obj, OBJ_obj2txt, OBJ_create, OBJ_cleanup
7functions 7- ASN1 object utility functions
8 8
9=head1 SYNOPSIS 9=head1 SYNOPSIS
10 10
diff --git a/src/lib/libssl/src/doc/crypto/OPENSSL_VERSION_NUMBER.pod b/src/lib/libssl/src/doc/crypto/OPENSSL_VERSION_NUMBER.pod
index c39ac35e78..2f63a18a71 100644
--- a/src/lib/libssl/src/doc/crypto/OPENSSL_VERSION_NUMBER.pod
+++ b/src/lib/libssl/src/doc/crypto/OPENSSL_VERSION_NUMBER.pod
@@ -94,8 +94,8 @@ L<crypto(3)|crypto(3)>
94 94
95=head1 HISTORY 95=head1 HISTORY
96 96
97SSLeay() and SSLEAY_VERSION_NUMBER are available in all versions of SSLeay and OpenSSL. 97SSLeay() and SSLEAY_VERSION_NUMBER are available in all versions of SSLeay and
98OPENSSL_VERSION_NUMBER is available in all versions of OpenSSL. 98OpenSSL. OPENSSL_VERSION_NUMBER is available in all versions of OpenSSL.
99B<SSLEAY_DIR> was added in OpenSSL 0.9.7. 99B<SSLEAY_DIR> was added in OpenSSL 0.9.7.
100 100
101=cut 101=cut
diff --git a/src/lib/libssl/src/doc/crypto/OpenSSL_add_all_algorithms.pod b/src/lib/libssl/src/doc/crypto/OpenSSL_add_all_algorithms.pod
index e63411b5bb..cc6c07fa24 100644
--- a/src/lib/libssl/src/doc/crypto/OpenSSL_add_all_algorithms.pod
+++ b/src/lib/libssl/src/doc/crypto/OpenSSL_add_all_algorithms.pod
@@ -39,24 +39,24 @@ None of the functions return a value.
39A typical application will call OpenSSL_add_all_algorithms() initially and 39A typical application will call OpenSSL_add_all_algorithms() initially and
40EVP_cleanup() before exiting. 40EVP_cleanup() before exiting.
41 41
42An application does not need to add algorithms to use them explicitly, for example 42An application does not need to add algorithms to use them explicitly, for
43by EVP_sha1(). It just needs to add them if it (or any of the functions it calls) 43example by EVP_sha1(). It just needs to add them if it (or any of the functions
44needs to lookup algorithms. 44it calls) needs to lookup algorithms.
45 45
46The cipher and digest lookup functions are used in many parts of the library. If 46The cipher and digest lookup functions are used in many parts of the library.
47the table is not initialized several functions will misbehave and complain they 47If the table is not initialized several functions will misbehave and complain
48cannot find algorithms. This includes the PEM, PKCS#12, SSL and S/MIME libraries. 48they cannot find algorithms. This includes the PEM, PKCS#12, SSL and S/MIME
49This is a common query in the OpenSSL mailing lists. 49libraries. This is a common query in the OpenSSL mailing lists.
50 50
51Calling OpenSSL_add_all_algorithms() links in all algorithms: as a result a 51Calling OpenSSL_add_all_algorithms() links in all algorithms: as a result a
52statically linked executable can be quite large. If this is important it is possible 52statically linked executable can be quite large. If this is important it is
53to just add the required ciphers and digests. 53possible to just add the required ciphers and digests.
54 54
55=head1 BUGS 55=head1 BUGS
56 56
57Although the functions do not return error codes it is possible for them to fail. 57Although the functions do not return error codes it is possible for them to
58This will only happen as a result of a memory allocation failure so this is not 58fail. This will only happen as a result of a memory allocation failure so this
59too much of a problem in practice. 59is not too much of a problem in practice.
60 60
61=head1 SEE ALSO 61=head1 SEE ALSO
62 62
diff --git a/src/lib/libssl/src/doc/crypto/PEM_read_bio_PrivateKey.pod b/src/lib/libssl/src/doc/crypto/PEM_read_bio_PrivateKey.pod
index e196bf1498..7e821f69c3 100644
--- a/src/lib/libssl/src/doc/crypto/PEM_read_bio_PrivateKey.pod
+++ b/src/lib/libssl/src/doc/crypto/PEM_read_bio_PrivateKey.pod
@@ -2,7 +2,29 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5PEM, PEM_read_bio_PrivateKey, PEM_read_PrivateKey, PEM_write_bio_PrivateKey, PEM_write_PrivateKey, PEM_write_bio_PKCS8PrivateKey, PEM_write_PKCS8PrivateKey, PEM_write_bio_PKCS8PrivateKey_nid, PEM_write_PKCS8PrivateKey_nid, PEM_read_bio_PUBKEY, PEM_read_PUBKEY, PEM_write_bio_PUBKEY, PEM_write_PUBKEY, PEM_read_bio_RSAPrivateKey, PEM_read_RSAPrivateKey, PEM_write_bio_RSAPrivateKey, PEM_write_RSAPrivateKey, PEM_read_bio_RSAPublicKey, PEM_read_RSAPublicKey, PEM_write_bio_RSAPublicKey, PEM_write_RSAPublicKey, PEM_read_bio_RSA_PUBKEY, PEM_read_RSA_PUBKEY, PEM_write_bio_RSA_PUBKEY, PEM_write_RSA_PUBKEY, PEM_read_bio_DSAPrivateKey, PEM_read_DSAPrivateKey, PEM_write_bio_DSAPrivateKey, PEM_write_DSAPrivateKey, PEM_read_bio_DSA_PUBKEY, PEM_read_DSA_PUBKEY, PEM_write_bio_DSA_PUBKEY, PEM_write_DSA_PUBKEY, PEM_read_bio_DSAparams, PEM_read_DSAparams, PEM_write_bio_DSAparams, PEM_write_DSAparams, PEM_read_bio_DHparams, PEM_read_DHparams, PEM_write_bio_DHparams, PEM_write_DHparams, PEM_read_bio_X509, PEM_read_X509, PEM_write_bio_X509, PEM_write_X509, PEM_read_bio_X509_AUX, PEM_read_X509_AUX, PEM_write_bio_X509_AUX, PEM_write_X509_AUX, PEM_read_bio_X509_REQ, PEM_read_X509_REQ, PEM_write_bio_X509_REQ, PEM_write_X509_REQ, PEM_write_bio_X509_REQ_NEW, PEM_write_X509_REQ_NEW, PEM_read_bio_X509_CRL, PEM_read_X509_CRL, PEM_write_bio_X509_CRL, PEM_write_X509_CRL, PEM_read_bio_PKCS7, PEM_read_PKCS7, PEM_write_bio_PKCS7, PEM_write_PKCS7, PEM_read_bio_NETSCAPE_CERT_SEQUENCE, PEM_read_NETSCAPE_CERT_SEQUENCE, PEM_write_bio_NETSCAPE_CERT_SEQUENCE, PEM_write_NETSCAPE_CERT_SEQUENCE - PEM routines 5PEM, PEM_read_bio_PrivateKey, PEM_read_PrivateKey, PEM_write_bio_PrivateKey,
6PEM_write_PrivateKey, PEM_write_bio_PKCS8PrivateKey, PEM_write_PKCS8PrivateKey,
7PEM_write_bio_PKCS8PrivateKey_nid, PEM_write_PKCS8PrivateKey_nid,
8PEM_read_bio_PUBKEY, PEM_read_PUBKEY, PEM_write_bio_PUBKEY, PEM_write_PUBKEY,
9PEM_read_bio_RSAPrivateKey, PEM_read_RSAPrivateKey,
10PEM_write_bio_RSAPrivateKey, PEM_write_RSAPrivateKey,
11PEM_read_bio_RSAPublicKey, PEM_read_RSAPublicKey, PEM_write_bio_RSAPublicKey,
12PEM_write_RSAPublicKey, PEM_read_bio_RSA_PUBKEY, PEM_read_RSA_PUBKEY,
13PEM_write_bio_RSA_PUBKEY, PEM_write_RSA_PUBKEY, PEM_read_bio_DSAPrivateKey,
14PEM_read_DSAPrivateKey, PEM_write_bio_DSAPrivateKey, PEM_write_DSAPrivateKey,
15PEM_read_bio_DSA_PUBKEY, PEM_read_DSA_PUBKEY, PEM_write_bio_DSA_PUBKEY,
16PEM_write_DSA_PUBKEY, PEM_read_bio_DSAparams, PEM_read_DSAparams,
17PEM_write_bio_DSAparams, PEM_write_DSAparams, PEM_read_bio_DHparams,
18PEM_read_DHparams, PEM_write_bio_DHparams, PEM_write_DHparams,
19PEM_read_bio_X509, PEM_read_X509, PEM_write_bio_X509, PEM_write_X509,
20PEM_read_bio_X509_AUX, PEM_read_X509_AUX, PEM_write_bio_X509_AUX,
21PEM_write_X509_AUX, PEM_read_bio_X509_REQ, PEM_read_X509_REQ,
22PEM_write_bio_X509_REQ, PEM_write_X509_REQ, PEM_write_bio_X509_REQ_NEW,
23PEM_write_X509_REQ_NEW, PEM_read_bio_X509_CRL, PEM_read_X509_CRL,
24PEM_write_bio_X509_CRL, PEM_write_X509_CRL, PEM_read_bio_PKCS7, PEM_read_PKCS7,
25PEM_write_bio_PKCS7, PEM_write_PKCS7, PEM_read_bio_NETSCAPE_CERT_SEQUENCE,
26PEM_read_NETSCAPE_CERT_SEQUENCE, PEM_write_bio_NETSCAPE_CERT_SEQUENCE,
27PEM_write_NETSCAPE_CERT_SEQUENCE - PEM routines
6 28
7=head1 SYNOPSIS 29=head1 SYNOPSIS
8 30
diff --git a/src/lib/libssl/src/doc/crypto/PEM_write_bio_CMS_stream.pod b/src/lib/libssl/src/doc/crypto/PEM_write_bio_CMS_stream.pod
index e070c45c2e..f9946adebf 100644
--- a/src/lib/libssl/src/doc/crypto/PEM_write_bio_CMS_stream.pod
+++ b/src/lib/libssl/src/doc/crypto/PEM_write_bio_CMS_stream.pod
@@ -2,7 +2,7 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5 PEM_write_bio_CMS_stream - output CMS_ContentInfo structure in PEM format. 5PEM_write_bio_CMS_stream - output CMS_ContentInfo structure in PEM format.
6 6
7=head1 SYNOPSIS 7=head1 SYNOPSIS
8 8
diff --git a/src/lib/libssl/src/doc/crypto/PKCS12_create.pod b/src/lib/libssl/src/doc/crypto/PKCS12_create.pod
index 0a1e460cf1..382193ec95 100644
--- a/src/lib/libssl/src/doc/crypto/PKCS12_create.pod
+++ b/src/lib/libssl/src/doc/crypto/PKCS12_create.pod
@@ -38,13 +38,13 @@ The default MAC iteration count is 1 in order to retain compatibility with
38old software which did not interpret MAC iteration counts. If such compatibility 38old software which did not interpret MAC iteration counts. If such compatibility
39is not required then B<mac_iter> should be set to PKCS12_DEFAULT_ITER. 39is not required then B<mac_iter> should be set to PKCS12_DEFAULT_ITER.
40 40
41B<keytype> adds a flag to the store private key. This is a non standard extension 41B<keytype> adds a flag to the store private key. This is a non standard
42that is only currently interpreted by MSIE. If set to zero the flag is omitted, 42extension that is only currently interpreted by MSIE. If set to zero the flag
43if set to B<KEY_SIG> the key can be used for signing only, if set to B<KEY_EX> 43is omitted, if set to B<KEY_SIG> the key can be used for signing only, if set
44it can be used for signing and encryption. This option was useful for old 44to B<KEY_EX> it can be used for signing and encryption. This option was useful
45export grade software which could use signing only keys of arbitrary size but 45for old export grade software which could use signing only keys of arbitrary
46had restrictions on the permissible sizes of keys which could be used for 46size but had restrictions on the permissible sizes of keys which could be used
47encryption. 47for encryption.
48 48
49=head1 NEW FUNCTIONALITY IN OPENSSL 0.9.8 49=head1 NEW FUNCTIONALITY IN OPENSSL 0.9.8
50 50
diff --git a/src/lib/libssl/src/doc/crypto/PKCS7_decrypt.pod b/src/lib/libssl/src/doc/crypto/PKCS7_decrypt.pod
index 325699d0b6..78919998ce 100644
--- a/src/lib/libssl/src/doc/crypto/PKCS7_decrypt.pod
+++ b/src/lib/libssl/src/doc/crypto/PKCS7_decrypt.pod
@@ -22,8 +22,9 @@ B<flags> is an optional set of flags.
22OpenSSL_add_all_algorithms() (or equivalent) should be called before using this 22OpenSSL_add_all_algorithms() (or equivalent) should be called before using this
23function or errors about unknown algorithms will occur. 23function or errors about unknown algorithms will occur.
24 24
25Although the recipients certificate is not needed to decrypt the data it is needed 25Although the recipients certificate is not needed to decrypt the data it is
26to locate the appropriate (of possible several) recipients in the PKCS#7 structure. 26needed to locate the appropriate (of possible several) recipients in the PKCS#7
27structure.
27 28
28The following flags can be passed in the B<flags> parameter. 29The following flags can be passed in the B<flags> parameter.
29 30
@@ -38,8 +39,9 @@ The error can be obtained from ERR_get_error(3)
38 39
39=head1 BUGS 40=head1 BUGS
40 41
41PKCS7_decrypt() must be passed the correct recipient key and certificate. It would 42PKCS7_decrypt() must be passed the correct recipient key and certificate. It
42be better if it could look up the correct key and certificate from a database. 43would be better if it could look up the correct key and certificate from a
44database.
43 45
44The lack of single pass processing and need to hold all data in memory as 46The lack of single pass processing and need to hold all data in memory as
45mentioned in PKCS7_sign() also applies to PKCS7_verify(). 47mentioned in PKCS7_sign() also applies to PKCS7_verify().
diff --git a/src/lib/libssl/src/doc/crypto/PKCS7_verify.pod b/src/lib/libssl/src/doc/crypto/PKCS7_verify.pod
index 51ada03f2d..f88e66632b 100644
--- a/src/lib/libssl/src/doc/crypto/PKCS7_verify.pod
+++ b/src/lib/libssl/src/doc/crypto/PKCS7_verify.pod
@@ -37,9 +37,9 @@ be signedData. There must be at least one signature on the data and if
37the content is detached B<indata> cannot be B<NULL>. 37the content is detached B<indata> cannot be B<NULL>.
38 38
39An attempt is made to locate all the signer's certificates, first looking in 39An attempt is made to locate all the signer's certificates, first looking in
40the B<certs> parameter (if it is not B<NULL>) and then looking in any certificates 40the B<certs> parameter (if it is not B<NULL>) and then looking in any
41contained in the B<p7> structure itself. If any signer's certificates cannot be 41certificates contained in the B<p7> structure itself. If any signer's
42located the operation fails. 42certificates cannot be located the operation fails.
43 43
44Each signer's certificate is chain verified using the B<smimesign> purpose and 44Each signer's certificate is chain verified using the B<smimesign> purpose and
45the supplied trusted certificate store. Any internal certificates in the message 45the supplied trusted certificate store. Any internal certificates in the message
@@ -50,9 +50,9 @@ the signature's checked.
50 50
51If all signature's verify correctly then the function is successful. 51If all signature's verify correctly then the function is successful.
52 52
53Any of the following flags (ored together) can be passed in the B<flags> parameter 53Any of the following flags (ored together) can be passed in the B<flags>
54to change the default verify behaviour. Only the flag B<PKCS7_NOINTERN> is 54parameter to change the default verify behaviour. Only the flag
55meaningful to PKCS7_get0_signers(). 55B<PKCS7_NOINTERN> is meaningful to PKCS7_get0_signers().
56 56
57If B<PKCS7_NOINTERN> is set the certificates in the message itself are not 57If B<PKCS7_NOINTERN> is set the certificates in the message itself are not
58searched when locating the signer's certificate. This means that all the signers 58searched when locating the signer's certificate. This means that all the signers
diff --git a/src/lib/libssl/src/doc/crypto/RAND_bytes.pod b/src/lib/libssl/src/doc/crypto/RAND_bytes.pod
index 1a9b91e281..34c945b4e5 100644
--- a/src/lib/libssl/src/doc/crypto/RAND_bytes.pod
+++ b/src/lib/libssl/src/doc/crypto/RAND_bytes.pod
@@ -30,11 +30,10 @@ the new pseudo-random bytes unless disabled at compile time (see FAQ).
30 30
31=head1 RETURN VALUES 31=head1 RETURN VALUES
32 32
33RAND_bytes() returns 1 on success, 0 otherwise. The error code can be 33RAND_bytes() returns 1 on success, 0 otherwise. The error code can be obtained
34obtained by L<ERR_get_error(3)|ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the 34by L<ERR_get_error(3)|ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the
35bytes generated are cryptographically strong, 0 otherwise. Both 35bytes generated are cryptographically strong, 0 otherwise. Both functions
36functions return -1 if they are not supported by the current RAND 36return -1 if they are not supported by the current RAND method.
37method.
38 37
39=head1 SEE ALSO 38=head1 SEE ALSO
40 39
diff --git a/src/lib/libssl/src/doc/crypto/RAND_load_file.pod b/src/lib/libssl/src/doc/crypto/RAND_load_file.pod
index 3f7e944d86..28118e3c2e 100644
--- a/src/lib/libssl/src/doc/crypto/RAND_load_file.pod
+++ b/src/lib/libssl/src/doc/crypto/RAND_load_file.pod
@@ -43,7 +43,8 @@ error.
43 43
44=head1 SEE ALSO 44=head1 SEE ALSO
45 45
46L<rand(3)|rand(3)>, L<RAND_add(3)|RAND_add(3)>, L<RAND_cleanup(3)|RAND_cleanup(3)> 46L<rand(3)|rand(3)>, L<RAND_add(3)|RAND_add(3)>,
47L<RAND_cleanup(3)|RAND_cleanup(3)>
47 48
48=head1 HISTORY 49=head1 HISTORY
49 50
diff --git a/src/lib/libssl/src/doc/crypto/RSA_blinding_on.pod b/src/lib/libssl/src/doc/crypto/RSA_blinding_on.pod
index fd2c69abd8..e6af8d4355 100644
--- a/src/lib/libssl/src/doc/crypto/RSA_blinding_on.pod
+++ b/src/lib/libssl/src/doc/crypto/RSA_blinding_on.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing attacks 5RSA_blinding_on, RSA_blinding_off - protect the RSA operation from timing
6attacks
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/RSA_get_ex_new_index.pod b/src/lib/libssl/src/doc/crypto/RSA_get_ex_new_index.pod
index 7d0fd1f91d..b1ac1167dd 100644
--- a/src/lib/libssl/src/doc/crypto/RSA_get_ex_new_index.pod
+++ b/src/lib/libssl/src/doc/crypto/RSA_get_ex_new_index.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data - add application specific data to RSA structures 5RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data - add application
6specific data to RSA structures
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
@@ -78,26 +79,27 @@ corresponding parameters when B<RSA_get_ex_new_index()> was called.
78B<dup_func()> is called when a structure is being copied. Pointers to the 79B<dup_func()> is called when a structure is being copied. Pointers to the
79destination and source B<CRYPTO_EX_DATA> structures are passed in the B<to> and 80destination and source B<CRYPTO_EX_DATA> structures are passed in the B<to> and
80B<from> parameters respectively. The B<from_d> parameter is passed a pointer to 81B<from> parameters respectively. The B<from_d> parameter is passed a pointer to
81the source application data when the function is called, when the function returns 82the source application data when the function is called, when the function
82the value is copied to the destination: the application can thus modify the data 83returns the value is copied to the destination: the application can thus modify
83pointed to by B<from_d> and have different values in the source and destination. 84the data pointed to by B<from_d> and have different values in the source and
84The B<idx>, B<argl> and B<argp> parameters are the same as those in B<new_func()> 85destination. The B<idx>, B<argl> and B<argp> parameters are the same as those
85and B<free_func()>. 86in B<new_func()> and B<free_func()>.
86 87
87=head1 RETURN VALUES 88=head1 RETURN VALUES
88 89
89B<RSA_get_ex_new_index()> returns a new index or -1 on failure (note 0 is a valid 90B<RSA_get_ex_new_index()> returns a new index or -1 on failure (note 0 is a
90index value). 91valid index value).
91 92
92B<RSA_set_ex_data()> returns 1 on success or 0 on failure. 93B<RSA_set_ex_data()> returns 1 on success or 0 on failure.
93 94
94B<RSA_get_ex_data()> returns the application data or 0 on failure. 0 may also 95B<RSA_get_ex_data()> returns the application data or 0 on failure. 0 may also
95be valid application data but currently it can only fail if given an invalid B<idx> 96be valid application data but currently it can only fail if given an invalid
96parameter. 97B<idx> parameter.
97 98
98B<new_func()> and B<dup_func()> should return 0 for failure and 1 for success. 99B<new_func()> and B<dup_func()> should return 0 for failure and 1 for success.
99 100
100On failure an error code can be obtained from L<ERR_get_error(3)|ERR_get_error(3)>. 101On failure an error code can be obtained from
102L<ERR_get_error(3)|ERR_get_error(3)>.
101 103
102=head1 BUGS 104=head1 BUGS
103 105
diff --git a/src/lib/libssl/src/doc/crypto/RSA_new.pod b/src/lib/libssl/src/doc/crypto/RSA_new.pod
index 3d15b92824..41e5e60340 100644
--- a/src/lib/libssl/src/doc/crypto/RSA_new.pod
+++ b/src/lib/libssl/src/doc/crypto/RSA_new.pod
@@ -22,9 +22,9 @@ erased before the memory is returned to the system.
22 22
23=head1 RETURN VALUES 23=head1 RETURN VALUES
24 24
25If the allocation fails, RSA_new() returns B<NULL> and sets an error 25If the allocation fails, RSA_new() returns B<NULL> and sets an error code that
26code that can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns 26can be obtained by L<ERR_get_error(3)|ERR_get_error(3)>. Otherwise it returns a
27a pointer to the newly allocated structure. 27pointer to the newly allocated structure.
28 28
29RSA_free() returns no value. 29RSA_free() returns no value.
30 30
diff --git a/src/lib/libssl/src/doc/crypto/RSA_private_encrypt.pod b/src/lib/libssl/src/doc/crypto/RSA_private_encrypt.pod
index 4c4d131172..aa2bc1bd76 100644
--- a/src/lib/libssl/src/doc/crypto/RSA_private_encrypt.pod
+++ b/src/lib/libssl/src/doc/crypto/RSA_private_encrypt.pod
@@ -29,10 +29,9 @@ B<padding> denotes one of the following modes:
29 29
30=item RSA_PKCS1_PADDING 30=item RSA_PKCS1_PADDING
31 31
32PKCS #1 v1.5 padding. This function does not handle the 32PKCS #1 v1.5 padding. This function does not handle the B<algorithmIdentifier>
33B<algorithmIdentifier> specified in PKCS #1. When generating or 33specified in PKCS #1. When generating or verifying PKCS #1 signatures,
34verifying PKCS #1 signatures, L<RSA_sign(3)|RSA_sign(3)> and L<RSA_verify(3)|RSA_verify(3)> should be 34L<RSA_sign(3)|RSA_sign(3)> and L<RSA_verify(3)|RSA_verify(3)> should be used.
35used.
36 35
37=item RSA_NO_PADDING 36=item RSA_NO_PADDING
38 37
diff --git a/src/lib/libssl/src/doc/crypto/RSA_sign_ASN1_OCTET_STRING.pod b/src/lib/libssl/src/doc/crypto/RSA_sign_ASN1_OCTET_STRING.pod
index e70380bbfc..315a9af9e8 100644
--- a/src/lib/libssl/src/doc/crypto/RSA_sign_ASN1_OCTET_STRING.pod
+++ b/src/lib/libssl/src/doc/crypto/RSA_sign_ASN1_OCTET_STRING.pod
@@ -26,7 +26,8 @@ memory.
26 26
27B<dummy> is ignored. 27B<dummy> is ignored.
28 28
29The random number generator must be seeded prior to calling RSA_sign_ASN1_OCTET_STRING(). 29The random number generator must be seeded prior to calling
30RSA_sign_ASN1_OCTET_STRING().
30 31
31RSA_verify_ASN1_OCTET_STRING() verifies that the signature B<sigbuf> 32RSA_verify_ASN1_OCTET_STRING() verifies that the signature B<sigbuf>
32of size B<siglen> is the DER representation of a given octet string 33of size B<siglen> is the DER representation of a given octet string
diff --git a/src/lib/libssl/src/doc/crypto/SHA1.pod b/src/lib/libssl/src/doc/crypto/SHA1.pod
index 232af9227e..9fffdf59e7 100644
--- a/src/lib/libssl/src/doc/crypto/SHA1.pod
+++ b/src/lib/libssl/src/doc/crypto/SHA1.pod
@@ -60,7 +60,8 @@ ANSI X9.30
60 60
61=head1 SEE ALSO 61=head1 SEE ALSO
62 62
63L<ripemd(3)|ripemd(3)>, L<hmac(3)|hmac(3)>, L<EVP_DigestInit(3)|EVP_DigestInit(3)> 63L<ripemd(3)|ripemd(3)>, L<hmac(3)|hmac(3)>,
64L<EVP_DigestInit(3)|EVP_DigestInit(3)>
64 65
65=head1 HISTORY 66=head1 HISTORY
66 67
diff --git a/src/lib/libssl/src/doc/crypto/X509_NAME_add_entry_by_txt.pod b/src/lib/libssl/src/doc/crypto/X509_NAME_add_entry_by_txt.pod
index 5b9e81b922..c6442b947f 100644
--- a/src/lib/libssl/src/doc/crypto/X509_NAME_add_entry_by_txt.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_NAME_add_entry_by_txt.pod
@@ -2,8 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ, X509_NAME_add_entry_by_NID, 5X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ,
6X509_NAME_add_entry, X509_NAME_delete_entry - X509_NAME modification functions 6X509_NAME_add_entry_by_NID, X509_NAME_add_entry, X509_NAME_delete_entry -
7X509_NAME modification functions
7 8
8=head1 SYNOPSIS 9=head1 SYNOPSIS
9 10
diff --git a/src/lib/libssl/src/doc/crypto/X509_NAME_print_ex.pod b/src/lib/libssl/src/doc/crypto/X509_NAME_print_ex.pod
index b2d86d4ddb..ff5d788d88 100644
--- a/src/lib/libssl/src/doc/crypto/X509_NAME_print_ex.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_NAME_print_ex.pod
@@ -16,16 +16,16 @@ X509_NAME_oneline - X509_NAME printing routines.
16 16
17=head1 DESCRIPTION 17=head1 DESCRIPTION
18 18
19X509_NAME_print_ex() prints a human readable version of B<nm> to BIO B<out>. Each 19X509_NAME_print_ex() prints a human readable version of B<nm> to BIO B<out>.
20line (for multiline formats) is indented by B<indent> spaces. The output format 20Each line (for multiline formats) is indented by B<indent> spaces. The output
21can be extensively customised by use of the B<flags> parameter. 21format can be extensively customised by use of the B<flags> parameter.
22 22
23X509_NAME_print_ex_fp() is identical to X509_NAME_print_ex() except the output is 23X509_NAME_print_ex_fp() is identical to X509_NAME_print_ex() except the output
24written to FILE pointer B<fp>. 24is written to FILE pointer B<fp>.
25 25
26X509_NAME_oneline() prints an ASCII version of B<a> to B<buf>. At most B<size> 26X509_NAME_oneline() prints an ASCII version of B<a> to B<buf>. At most B<size>
27bytes will be written. If B<buf> is B<NULL> then a buffer is dynamically allocated 27bytes will be written. If B<buf> is B<NULL> then a buffer is dynamically
28and returned, otherwise B<buf> is returned. 28allocated and returned, otherwise B<buf> is returned.
29 29
30X509_NAME_print() prints out B<name> to B<bp> indenting each line by B<obase> 30X509_NAME_print() prints out B<name> to B<bp> indenting each line by B<obase>
31characters. Multiple lines are used if the output (including indent) exceeds 31characters. Multiple lines are used if the output (including indent) exceeds
@@ -33,10 +33,10 @@ characters. Multiple lines are used if the output (including indent) exceeds
33 33
34=head1 NOTES 34=head1 NOTES
35 35
36The functions X509_NAME_oneline() and X509_NAME_print() are legacy functions which 36The functions X509_NAME_oneline() and X509_NAME_print() are legacy functions
37produce a non standard output form, they don't handle multi character fields and 37which produce a non standard output form, they don't handle multi character
38have various quirks and inconsistencies. Their use is strongly discouraged in new 38fields and have various quirks and inconsistencies. Their use is strongly
39applications. 39discouraged in new applications.
40 40
41Although there are a large number of possible flags for most purposes 41Although there are a large number of possible flags for most purposes
42B<XN_FLAG_ONELINE>, B<XN_FLAG_MULTILINE> or B<XN_FLAG_RFC2253> will suffice. 42B<XN_FLAG_ONELINE>, B<XN_FLAG_MULTILINE> or B<XN_FLAG_RFC2253> will suffice.
@@ -49,15 +49,16 @@ The complete set of the flags supported by X509_NAME_print_ex() is listed below.
49Several options can be ored together. 49Several options can be ored together.
50 50
51The options B<XN_FLAG_SEP_COMMA_PLUS>, B<XN_FLAG_SEP_CPLUS_SPC>, 51The options B<XN_FLAG_SEP_COMMA_PLUS>, B<XN_FLAG_SEP_CPLUS_SPC>,
52B<XN_FLAG_SEP_SPLUS_SPC> and B<XN_FLAG_SEP_MULTILINE> determine the field separators 52B<XN_FLAG_SEP_SPLUS_SPC> and B<XN_FLAG_SEP_MULTILINE> determine the field
53to use. Two distinct separators are used between distinct RelativeDistinguishedName 53separators to use. Two distinct separators are used between distinct
54components and separate values in the same RDN for a multi-valued RDN. Multi-valued 54RelativeDistinguishedName components and separate values in the same RDN for a
55RDNs are currently very rare so the second separator will hardly ever be used. 55multi-valued RDN. Multi-valued RDNs are currently very rare so the second
56separator will hardly ever be used.
56 57
57B<XN_FLAG_SEP_COMMA_PLUS> uses comma and plus as separators. B<XN_FLAG_SEP_CPLUS_SPC> 58B<XN_FLAG_SEP_COMMA_PLUS> uses comma and plus as separators.
58uses comma and plus with spaces: this is more readable that plain comma and plus. 59B<XN_FLAG_SEP_CPLUS_SPC> uses comma and plus with spaces: this is more readable
59B<XN_FLAG_SEP_SPLUS_SPC> uses spaced semicolon and plus. B<XN_FLAG_SEP_MULTILINE> uses 60that plain comma and plus. B<XN_FLAG_SEP_SPLUS_SPC> uses spaced semicolon and
60spaced newline and plus respectively. 61plus. B<XN_FLAG_SEP_MULTILINE> uses spaced newline and plus respectively.
61 62
62If B<XN_FLAG_DN_REV> is set the whole DN is printed in reversed order. 63If B<XN_FLAG_DN_REV> is set the whole DN is printed in reversed order.
63 64
@@ -92,7 +93,8 @@ B<XN_FLAG_ONELINE> is a more readable one line format which is the same as:
92B<XN_FLAG_MULTILINE> is a multiline format which is the same as: 93B<XN_FLAG_MULTILINE> is a multiline format which is the same as:
93 B<ASN1_STRFLGS_ESC_CTRL | ASN1_STRFLGS_ESC_MSB | XN_FLAG_SEP_MULTILINE | XN_FLAG_SPC_EQ | XN_FLAG_FN_LN | XN_FLAG_FN_ALIGN> 94 B<ASN1_STRFLGS_ESC_CTRL | ASN1_STRFLGS_ESC_MSB | XN_FLAG_SEP_MULTILINE | XN_FLAG_SPC_EQ | XN_FLAG_FN_LN | XN_FLAG_FN_ALIGN>
94 95
95B<XN_FLAG_COMPAT> uses a format identical to X509_NAME_print(): in fact it calls X509_NAME_print() internally. 96B<XN_FLAG_COMPAT> uses a format identical to X509_NAME_print(): in fact it
97calls X509_NAME_print() internally.
96 98
97=head1 SEE ALSO 99=head1 SEE ALSO
98 100
diff --git a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_error.pod b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_error.pod
index 60e8332ae9..5760f64fcb 100644
--- a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_error.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_error.pod
@@ -2,7 +2,10 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_get_error, X509_STORE_CTX_set_error, X509_STORE_CTX_get_error_depth, X509_STORE_CTX_get_current_cert, X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set certificate verification status information 5X509_STORE_CTX_get_error, X509_STORE_CTX_set_error,
6X509_STORE_CTX_get_error_depth, X509_STORE_CTX_get_current_cert,
7X509_STORE_CTX_get1_chain, X509_verify_cert_error_string - get or set
8certificate verification status information
6 9
7=head1 SYNOPSIS 10=head1 SYNOPSIS
8 11
@@ -82,19 +85,22 @@ of an untrusted certificate cannot be found.
82 85
83the CRL of a certificate could not be found. 86the CRL of a certificate could not be found.
84 87
85=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt certificate's signature> 88=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE: unable to decrypt
89certificate's signature>
86 90
87the certificate signature could not be decrypted. This means that the actual 91the certificate signature could not be decrypted. This means that the actual
88signature value could not be determined rather than it not matching the 92signature value could not be determined rather than it not matching the
89expected value, this is only meaningful for RSA keys. 93expected value, this is only meaningful for RSA keys.
90 94
91=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's signature> 95=item B<X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE: unable to decrypt CRL's
96signature>
92 97
93the CRL signature could not be decrypted: this means that the actual signature 98the CRL signature could not be decrypted: this means that the actual signature
94value could not be determined rather than it not matching the expected value. 99value could not be determined rather than it not matching the expected value.
95Unused. 100Unused.
96 101
97=item B<X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer public key> 102=item B<X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY: unable to decode issuer
103public key>
98 104
99the public key in the certificate SubjectPublicKeyInfo could not be read. 105the public key in the certificate SubjectPublicKeyInfo could not be read.
100 106
@@ -112,7 +118,8 @@ the certificate is not yet valid: the notBefore date is after the current time.
112 118
113=item B<X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired> 119=item B<X509_V_ERR_CERT_HAS_EXPIRED: certificate has expired>
114 120
115the certificate has expired: that is the notAfter date is before the current time. 121the certificate has expired: that is the notAfter date is before the current
122time.
116 123
117=item B<X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid> 124=item B<X509_V_ERR_CRL_NOT_YET_VALID: CRL is not yet valid>
118 125
@@ -122,19 +129,23 @@ the CRL is not yet valid.
122 129
123the CRL has expired. 130the CRL has expired.
124 131
125=item B<X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in certificate's notBefore field> 132=item B<X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD: format error in
133certificate's notBefore field>
126 134
127the certificate notBefore field contains an invalid time. 135the certificate notBefore field contains an invalid time.
128 136
129=item B<X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's notAfter field> 137=item B<X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD: format error in certificate's
138notAfter field>
130 139
131the certificate notAfter field contains an invalid time. 140the certificate notAfter field contains an invalid time.
132 141
133=item B<X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's lastUpdate field> 142=item B<X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD: format error in CRL's
143lastUpdate field>
134 144
135the CRL lastUpdate field contains an invalid time. 145the CRL lastUpdate field contains an invalid time.
136 146
137=item B<X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's nextUpdate field> 147=item B<X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD: format error in CRL's
148nextUpdate field>
138 149
139the CRL nextUpdate field contains an invalid time. 150the CRL nextUpdate field contains an invalid time.
140 151
@@ -147,17 +158,20 @@ an error occurred trying to allocate memory. This should never happen.
147the passed certificate is self signed and the same certificate cannot be found 158the passed certificate is self signed and the same certificate cannot be found
148in the list of trusted certificates. 159in the list of trusted certificates.
149 160
150=item B<X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in certificate chain> 161=item B<X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN: self signed certificate in
162certificate chain>
151 163
152the certificate chain could be built up using the untrusted certificates but 164the certificate chain could be built up using the untrusted certificates but
153the root could not be found locally. 165the root could not be found locally.
154 166
155=item B<X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate> 167=item B<X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local
168issuer certificate>
156 169
157the issuer certificate of a locally looked up certificate could not be found. 170the issuer certificate of a locally looked up certificate could not be found.
158This normally means the list of trusted certificates is not complete. 171This normally means the list of trusted certificates is not complete.
159 172
160=item B<X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first certificate> 173=item B<X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE: unable to verify the first
174certificate>
161 175
162no signatures could be verified because the chain contains only one certificate 176no signatures could be verified because the chain contains only one certificate
163and it is not self signed. 177and it is not self signed.
@@ -198,34 +212,39 @@ did not match the issuer name of the current certificate. This is only set
198if issuer check debugging is enabled it is used for status notification and 212if issuer check debugging is enabled it is used for status notification and
199is B<not> in itself an error. 213is B<not> in itself an error.
200 214
201=item B<X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier mismatch> 215=item B<X509_V_ERR_AKID_SKID_MISMATCH: authority and subject key identifier
216mismatch>
202 217
203the current candidate issuer certificate was rejected because its subject key 218the current candidate issuer certificate was rejected because its subject key
204identifier was present and did not match the authority key identifier current 219identifier was present and did not match the authority key identifier current
205certificate. This is only set if issuer check debugging is enabled it is used 220certificate. This is only set if issuer check debugging is enabled it is used
206for status notification and is B<not> in itself an error. 221for status notification and is B<not> in itself an error.
207 222
208=item B<X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial number mismatch> 223=item B<X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH: authority and issuer serial
224number mismatch>
209 225
210the current candidate issuer certificate was rejected because its issuer name 226the current candidate issuer certificate was rejected because its issuer name
211and serial number was present and did not match the authority key identifier of 227and serial number was present and did not match the authority key identifier of
212the current certificate. This is only set if issuer check debugging is enabled 228the current certificate. This is only set if issuer check debugging is enabled
213it is used for status notification and is B<not> in itself an error. 229it is used for status notification and is B<not> in itself an error.
214 230
215=item B<X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate signing> 231=item B<X509_V_ERR_KEYUSAGE_NO_CERTSIGN:key usage does not include certificate
232signing>
216 233
217the current candidate issuer certificate was rejected because its keyUsage 234the current candidate issuer certificate was rejected because its keyUsage
218extension does not permit certificate signing. This is only set if issuer check 235extension does not permit certificate signing. This is only set if issuer check
219debugging is enabled it is used for status notification and is B<not> in itself 236debugging is enabled it is used for status notification and is B<not> in itself
220an error. 237an error.
221 238
222=item B<X509_V_ERR_INVALID_EXTENSION: invalid or inconsistent certificate extension> 239=item B<X509_V_ERR_INVALID_EXTENSION: invalid or inconsistent certificate
240extension>
223 241
224A certificate extension had an invalid value (for example an incorrect 242A certificate extension had an invalid value (for example an incorrect
225encoding) or some value inconsistent with other extensions. 243encoding) or some value inconsistent with other extensions.
226 244
227 245
228=item B<X509_V_ERR_INVALID_POLICY_EXTENSION: invalid or inconsistent certificate policy extension> 246=item B<X509_V_ERR_INVALID_POLICY_EXTENSION: invalid or inconsistent
247certificate policy extension>
229 248
230A certificate policies extension had an invalid value (for example an incorrect 249A certificate policies extension had an invalid value (for example an incorrect
231encoding) or some value inconsistent with other extensions. This error only 250encoding) or some value inconsistent with other extensions. This error only
@@ -252,17 +271,20 @@ A name constraint violation occured in the permitted subtrees.
252 271
253A name constraint violation occured in the excluded subtrees. 272A name constraint violation occured in the excluded subtrees.
254 273
255=item B<X509_V_ERR_SUBTREE_MINMAX: name constraints minimum and maximum not supported> 274=item B<X509_V_ERR_SUBTREE_MINMAX: name constraints minimum and maximum not
275supported>
256 276
257A certificate name constraints extension included a minimum or maximum field: 277A certificate name constraints extension included a minimum or maximum field:
258this is not supported. 278this is not supported.
259 279
260=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE: unsupported name constraint type> 280=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE: unsupported name constraint
281type>
261 282
262An unsupported name constraint type was encountered. OpenSSL currently only 283An unsupported name constraint type was encountered. OpenSSL currently only
263supports directory name, DNS name, email and URI types. 284supports directory name, DNS name, email and URI types.
264 285
265=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX: unsupported or invalid name constraint syntax> 286=item B<X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX: unsupported or invalid name
287constraint syntax>
266 288
267The format of the name constraint is not recognised: for example an email 289The format of the name constraint is not recognised: for example an email
268address format of a form not mentioned in RFC3280. This could be caused by 290address format of a form not mentioned in RFC3280. This could be caused by
diff --git a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_ex_new_index.pod b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_ex_new_index.pod
index 1b75967ccd..392b36c3ae 100644
--- a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_ex_new_index.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_get_ex_new_index.pod
@@ -2,7 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data, X509_STORE_CTX_get_ex_data - add application specific data to X509_STORE_CTX structures 5X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data,
6X509_STORE_CTX_get_ex_data - add application specific data to X509_STORE_CTX
7structures
6 8
7=head1 SYNOPSIS 9=head1 SYNOPSIS
8 10
diff --git a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_new.pod b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_new.pod
index 1c55236aa2..8f602274ee 100644
--- a/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_new.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_STORE_CTX_new.pod
@@ -2,7 +2,11 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_CTX_new, X509_STORE_CTX_cleanup, X509_STORE_CTX_free, X509_STORE_CTX_init, X509_STORE_CTX_trusted_stack, X509_STORE_CTX_set_cert, X509_STORE_CTX_set_chain, X509_STORE_CTX_set0_crls, X509_STORE_CTX_get0_param, X509_STORE_CTX_set0_param, X509_STORE_CTX_set_default - X509_STORE_CTX initialisation 5X509_STORE_CTX_new, X509_STORE_CTX_cleanup, X509_STORE_CTX_free,
6X509_STORE_CTX_init, X509_STORE_CTX_trusted_stack, X509_STORE_CTX_set_cert,
7X509_STORE_CTX_set_chain, X509_STORE_CTX_set0_crls, X509_STORE_CTX_get0_param,
8X509_STORE_CTX_set0_param, X509_STORE_CTX_set_default - X509_STORE_CTX
9initialisation
6 10
7=head1 SYNOPSIS 11=head1 SYNOPSIS
8 12
diff --git a/src/lib/libssl/src/doc/crypto/X509_STORE_set_verify_cb_func.pod b/src/lib/libssl/src/doc/crypto/X509_STORE_set_verify_cb_func.pod
index 012f2d2c75..f9602b3e77 100644
--- a/src/lib/libssl/src/doc/crypto/X509_STORE_set_verify_cb_func.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_STORE_set_verify_cb_func.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_STORE_set_verify_cb_func, X509_STORE_set_verify_cb - set verification callback 5X509_STORE_set_verify_cb_func, X509_STORE_set_verify_cb - set verification
6callback
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9
diff --git a/src/lib/libssl/src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod b/src/lib/libssl/src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod
index e5da5bec08..f213a9c117 100644
--- a/src/lib/libssl/src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod
+++ b/src/lib/libssl/src/doc/crypto/X509_VERIFY_PARAM_set_flags.pod
@@ -2,7 +2,12 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5X509_VERIFY_PARAM_set_flags, X509_VERIFY_PARAM_clear_flags, X509_VERIFY_PARAM_get_flags, X509_VERIFY_PARAM_set_purpose, X509_VERIFY_PARAM_set_trust, X509_VERIFY_PARAM_set_depth, X509_VERIFY_PARAM_get_depth, X509_VERIFY_PARAM_set_time, X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies - X509 verification parameters 5X509_VERIFY_PARAM_set_flags, X509_VERIFY_PARAM_clear_flags,
6X509_VERIFY_PARAM_get_flags, X509_VERIFY_PARAM_set_purpose,
7X509_VERIFY_PARAM_set_trust, X509_VERIFY_PARAM_set_depth,
8X509_VERIFY_PARAM_get_depth, X509_VERIFY_PARAM_set_time,
9X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies - X509
10verification parameters
6 11
7=head1 SYNOPSIS 12=head1 SYNOPSIS
8 13
diff --git a/src/lib/libssl/src/doc/crypto/bn.pod b/src/lib/libssl/src/doc/crypto/bn.pod
index cd2f8e50c6..4a3f24ba30 100644
--- a/src/lib/libssl/src/doc/crypto/bn.pod
+++ b/src/lib/libssl/src/doc/crypto/bn.pod
@@ -166,10 +166,10 @@ of B<BIGNUM>s to external formats is described in L<BN_bn2bin(3)|BN_bn2bin(3)>.
166 166
167=head1 SEE ALSO 167=head1 SEE ALSO
168 168
169L<bn_internal(3)|bn_internal(3)>, 169L<bn_internal(3)|bn_internal(3)>, L<dh(3)|dh(3)>, L<err(3)|err(3)>,
170L<dh(3)|dh(3)>, L<err(3)|err(3)>, L<rand(3)|rand(3)>, L<rsa(3)|rsa(3)>, 170L<rand(3)|rand(3)>, L<rsa(3)|rsa(3)>, L<BN_new(3)|BN_new(3)>,
171L<BN_new(3)|BN_new(3)>, L<BN_CTX_new(3)|BN_CTX_new(3)>, 171L<BN_CTX_new(3)|BN_CTX_new(3)>, L<BN_copy(3)|BN_copy(3)>,
172L<BN_copy(3)|BN_copy(3)>, L<BN_swap(3)|BN_swap(3)>, L<BN_num_bytes(3)|BN_num_bytes(3)>, 172L<BN_swap(3)|BN_swap(3)>, L<BN_num_bytes(3)|BN_num_bytes(3)>,
173L<BN_add(3)|BN_add(3)>, L<BN_add_word(3)|BN_add_word(3)>, 173L<BN_add(3)|BN_add(3)>, L<BN_add_word(3)|BN_add_word(3)>,
174L<BN_cmp(3)|BN_cmp(3)>, L<BN_zero(3)|BN_zero(3)>, L<BN_rand(3)|BN_rand(3)>, 174L<BN_cmp(3)|BN_cmp(3)>, L<BN_zero(3)|BN_zero(3)>, L<BN_rand(3)|BN_rand(3)>,
175L<BN_generate_prime(3)|BN_generate_prime(3)>, L<BN_set_bit(3)|BN_set_bit(3)>, 175L<BN_generate_prime(3)|BN_generate_prime(3)>, L<BN_set_bit(3)|BN_set_bit(3)>,
diff --git a/src/lib/libssl/src/doc/crypto/d2i_PKCS8PrivateKey.pod b/src/lib/libssl/src/doc/crypto/d2i_PKCS8PrivateKey.pod
index 466f99ab42..fc7335c7a1 100644
--- a/src/lib/libssl/src/doc/crypto/d2i_PKCS8PrivateKey.pod
+++ b/src/lib/libssl/src/doc/crypto/d2i_PKCS8PrivateKey.pod
@@ -2,9 +2,9 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5d2i_PKCS8PrivateKey_bio, d2i_PKCS8PrivateKey_fp, 5d2i_PKCS8PrivateKey_bio, d2i_PKCS8PrivateKey_fp, i2d_PKCS8PrivateKey_bio,
6i2d_PKCS8PrivateKey_bio, i2d_PKCS8PrivateKey_fp, 6i2d_PKCS8PrivateKey_fp, i2d_PKCS8PrivateKey_nid_bio, i2d_PKCS8PrivateKey_nid_fp
7i2d_PKCS8PrivateKey_nid_bio, i2d_PKCS8PrivateKey_nid_fp - PKCS#8 format private key functions 7- PKCS#8 format private key functions
8 8
9=head1 SYNOPSIS 9=head1 SYNOPSIS
10 10
@@ -39,15 +39,17 @@ corresponding B<PEM> function as described in the L<pem(3)|pem(3)> manual page.
39 39
40=head1 NOTES 40=head1 NOTES
41 41
42Before using these functions L<OpenSSL_add_all_algorithms(3)|OpenSSL_add_all_algorithms(3)> 42Before using these functions
43should be called to initialize the internal algorithm lookup tables otherwise errors about 43L<OpenSSL_add_all_algorithms(3)|OpenSSL_add_all_algorithms(3)> should be called
44to initialize the internal algorithm lookup tables otherwise errors about
44unknown algorithms will occur if an attempt is made to decrypt a private key. 45unknown algorithms will occur if an attempt is made to decrypt a private key.
45 46
46These functions are currently the only way to store encrypted private keys using DER format. 47These functions are currently the only way to store encrypted private keys
48using DER format.
47 49
48Currently all the functions use BIOs or FILE pointers, there are no functions which 50Currently all the functions use BIOs or FILE pointers, there are no functions
49work directly on memory: this can be readily worked around by converting the buffers 51which work directly on memory: this can be readily worked around by converting
50to memory BIOs, see L<BIO_s_mem(3)|BIO_s_mem(3)> for details. 52the buffers to memory BIOs, see L<BIO_s_mem(3)|BIO_s_mem(3)> for details.
51 53
52=head1 SEE ALSO 54=head1 SEE ALSO
53 55
diff --git a/src/lib/libssl/src/doc/crypto/d2i_RSAPublicKey.pod b/src/lib/libssl/src/doc/crypto/d2i_RSAPublicKey.pod
index 1711dc038f..68e7f27de5 100644
--- a/src/lib/libssl/src/doc/crypto/d2i_RSAPublicKey.pod
+++ b/src/lib/libssl/src/doc/crypto/d2i_RSAPublicKey.pod
@@ -29,14 +29,14 @@ d2i_Netscape_RSA - RSA public and private key encoding functions.
29 29
30=head1 DESCRIPTION 30=head1 DESCRIPTION
31 31
32d2i_RSAPublicKey() and i2d_RSAPublicKey() decode and encode a PKCS#1 RSAPublicKey 32d2i_RSAPublicKey() and i2d_RSAPublicKey() decode and encode a PKCS#1
33structure. 33RSAPublicKey structure.
34 34
35d2i_RSA_PUBKEY() and i2d_RSA_PUBKEY() decode and encode an RSA public key using 35d2i_RSA_PUBKEY() and i2d_RSA_PUBKEY() decode and encode an RSA public key using
36a SubjectPublicKeyInfo (certificate public key) structure. 36a SubjectPublicKeyInfo (certificate public key) structure.
37 37
38d2i_RSAPrivateKey(), i2d_RSAPrivateKey() decode and encode a PKCS#1 RSAPrivateKey 38d2i_RSAPrivateKey(), i2d_RSAPrivateKey() decode and encode a PKCS#1
39structure. 39RSAPrivateKey structure.
40 40
41d2i_Netscape_RSA(), i2d_Netscape_RSA() decode and encode an RSA private key in 41d2i_Netscape_RSA(), i2d_Netscape_RSA() decode and encode an RSA private key in
42NET format. 42NET format.
diff --git a/src/lib/libssl/src/doc/crypto/dh.pod b/src/lib/libssl/src/doc/crypto/dh.pod
index 97aaa75731..5fb9890a77 100644
--- a/src/lib/libssl/src/doc/crypto/dh.pod
+++ b/src/lib/libssl/src/doc/crypto/dh.pod
@@ -40,10 +40,11 @@ dh - Diffie-Hellman key agreement
40 40
41=head1 DESCRIPTION 41=head1 DESCRIPTION
42 42
43These functions implement the Diffie-Hellman key agreement protocol. 43These functions implement the Diffie-Hellman key agreement protocol. The
44The generation of shared DH parameters is described in 44generation of shared DH parameters is described in
45L<DH_generate_parameters(3)|DH_generate_parameters(3)>; L<DH_generate_key(3)|DH_generate_key(3)> describes how 45L<DH_generate_parameters(3)|DH_generate_parameters(3)>;
46to perform a key agreement. 46L<DH_generate_key(3)|DH_generate_key(3)> describes how to perform a key
47agreement.
47 48
48The B<DH> structure consists of several BIGNUM components. 49The B<DH> structure consists of several BIGNUM components.
49 50
diff --git a/src/lib/libssl/src/doc/crypto/lhash.pod b/src/lib/libssl/src/doc/crypto/lhash.pod
index b5c8a10282..a9c44dd9ef 100644
--- a/src/lib/libssl/src/doc/crypto/lhash.pod
+++ b/src/lib/libssl/src/doc/crypto/lhash.pod
@@ -2,7 +2,8 @@
2 2
3=head1 NAME 3=head1 NAME
4 4
5lh_new, lh_free, lh_insert, lh_delete, lh_retrieve, lh_doall, lh_doall_arg, lh_error - dynamic hash table 5lh_new, lh_free, lh_insert, lh_delete, lh_retrieve, lh_doall, lh_doall_arg,
6lh_error - dynamic hash table
6 7
7=head1 SYNOPSIS 8=head1 SYNOPSIS
8 9