Latest update
This commit is contained in:
@@ -88,6 +88,22 @@ a buffering BIO to the chain will speed up the process.
|
||||
Calling BIO_set_mem_buf() on a BIO created with BIO_new_secmem() will
|
||||
give undefined results, including perhaps a program crash.
|
||||
|
||||
Switching the memory BIO from read write to read only is not supported and
|
||||
can give undefined results including a program crash. There are two notable
|
||||
exceptions to the rule. The first one is to assign a static memory buffer
|
||||
immediately after BIO creation and set the BIO as read only.
|
||||
|
||||
The other supported sequence is to start with read write BIO then temporarily
|
||||
switch it to read only and call BIO_reset() on the read only BIO immediately
|
||||
before switching it back to read write. Before the BIO is freed it must be
|
||||
switched back to the read write mode.
|
||||
|
||||
Calling BIO_get_mem_ptr() on read only BIO will return a BUF_MEM that
|
||||
contains only the remaining data to be read. If the close status of the
|
||||
BIO is set to BIO_NOCLOSE, before freeing the BUF_MEM the data pointer
|
||||
in it must be set to NULL as the data pointer does not point to an
|
||||
allocated memory.
|
||||
|
||||
=head1 BUGS
|
||||
|
||||
There should be an option to set the maximum size of a memory BIO.
|
||||
|
||||
@@ -200,7 +200,7 @@ ANSI X9.62, US Federal Information Processing Standard FIPS 186-2
|
||||
|
||||
=head1 SEE ALSO
|
||||
|
||||
L<DSA_new(3)>,
|
||||
L<EC_KEY_new(3)>,
|
||||
L<EVP_DigestSignInit(3)>,
|
||||
L<EVP_DigestVerifyInit(3)>
|
||||
|
||||
|
||||
@@ -151,9 +151,9 @@ The value string is expected to be the name of a MAC.
|
||||
This control expects one argument: C<EVP_MD *md>
|
||||
|
||||
For MAC implementations that use a message digest as an underlying computation
|
||||
algorithm, this control set what the digest algorithm should be.
|
||||
algorithm, this control sets what the digest algorithm should be.
|
||||
|
||||
EVP_KDF_ctrl_str() type string: "md"
|
||||
EVP_KDF_ctrl_str() type string: "digest"
|
||||
|
||||
The value string is expected to be the name of a digest.
|
||||
|
||||
@@ -232,6 +232,7 @@ L<EVP_KDF_TLS1_PRF(7)>
|
||||
L<EVP_KDF_PBKDF2(7)>
|
||||
L<EVP_KDF_HKDF(7)>
|
||||
L<EVP_KDF_SS(7)>
|
||||
L<EVP_KDF_SSHKDF(7)>
|
||||
|
||||
=head1 HISTORY
|
||||
|
||||
|
||||
@@ -21,7 +21,15 @@ The ChaCha20 stream cipher for EVP.
|
||||
|
||||
=item EVP_chacha20()
|
||||
|
||||
The ChaCha20 stream cipher. The key length is 256 bits, the IV is 96 bits long.
|
||||
The ChaCha20 stream cipher. The key length is 256 bits, the IV is 128 bits long.
|
||||
The first 32 bits consists of a counter in little-endian order followed by a 96
|
||||
bit nonce. For example a nonce of:
|
||||
|
||||
000000000000000000000002
|
||||
|
||||
With an initial counter of 42 (2a in hex) would be expressed as:
|
||||
|
||||
2a000000000000000000000000000002
|
||||
|
||||
=item EVP_chacha20_poly1305()
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@ OPENSSL_VERSION_PRE_RELEASE_STR, OPENSSL_VERSION_BUILD_METADATA_STR,
|
||||
OPENSSL_VERSION_TEXT,
|
||||
OPENSSL_version_major, OPENSSL_version_minor, OPENSSL_version_patch,
|
||||
OPENSSL_version_pre_release, OPENSSL_version_build_metadata, OpenSSL_version,
|
||||
OPENSSL_VERSION_NUMBER, OpenSSL_version_num
|
||||
- get OpenSSL version number
|
||||
OPENSSL_VERSION_NUMBER, OpenSSL_version_num, OPENSSL_info
|
||||
- get OpenSSL version number and other information
|
||||
|
||||
=head1 SYNOPSIS
|
||||
|
||||
@@ -37,6 +37,8 @@ OPENSSL_VERSION_NUMBER, OpenSSL_version_num
|
||||
|
||||
const char *OpenSSL_version(int t);
|
||||
|
||||
const char *OPENSSL_info(int t);
|
||||
|
||||
Deprecated:
|
||||
|
||||
/* from openssl/opensslv.h */
|
||||
@@ -127,6 +129,47 @@ if available or "ENGINESDIR: N/A" otherwise.
|
||||
|
||||
For an unknown B<t>, the text "not available" is returned.
|
||||
|
||||
OPENSSL_info() also returns different strings depending on B<t>:
|
||||
|
||||
=over 4
|
||||
|
||||
=item OPENSSL_INFO_CONFIG_DIR
|
||||
|
||||
The configured C<OPENSSLDIR>, which is the default location for
|
||||
OpenSSL configuration files.
|
||||
|
||||
=item OPENSSL_INFO_ENGINES_DIR
|
||||
|
||||
The configured C<ENGINESDIR>, which is the default location for
|
||||
OpenSSL engines.
|
||||
|
||||
=item OPENSSL_INFO_MODULES_DIR
|
||||
|
||||
The configured C<MODULESDIR>, which is the default location for
|
||||
dynamically loadable OpenSSL modules other than engines.
|
||||
|
||||
=item OPENSSL_INFO_DSO_EXTENSION
|
||||
|
||||
The configured dynamically loadable module extension.
|
||||
|
||||
=item OPENSSL_INFO_DIR_FILENAME_SEPARATOR
|
||||
|
||||
The separator between a directory specification and a file name.
|
||||
Note that on some operating systems, this is not the same as the
|
||||
separator between directory elements.
|
||||
|
||||
=item OPENSSL_INFO_LIST_SEPARATOR
|
||||
|
||||
The OpenSSL list separator.
|
||||
This is typically used in strings that are lists of items, such as the
|
||||
value of the environment variable C<$PATH> on Unix (where the
|
||||
separator is ":") or C<%PATH%> on Windows (where the separator is
|
||||
";").
|
||||
|
||||
=back
|
||||
|
||||
For an unknown B<t>, NULL is returned.
|
||||
|
||||
=head1 BACKWARD COMPATIBILITY
|
||||
|
||||
For compatibility, some older macros and functions are retained or
|
||||
|
||||
@@ -65,6 +65,8 @@ both required, and on success the caller must release the storage allocated for
|
||||
B<*out> using OPENSSL_free(). The contents of B<*out> is an array of integers
|
||||
holding the numerical value of the TLS extension types in the order they appear
|
||||
in the ClientHello. B<*outlen> contains the number of elements in the array.
|
||||
In situations when the ClientHello has no extensions, the function will return
|
||||
success with B<*out> set to NULL and B<*outlen> set to 0.
|
||||
|
||||
=head1 NOTES
|
||||
|
||||
|
||||
Reference in New Issue
Block a user