]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - doc/man3/OpenSSL_version.pod
Add CPU info to the speed command summary
[thirdparty/openssl.git] / doc / man3 / OpenSSL_version.pod
index cf5794a720337b5730286e62cc85b143e0d53a4a..66abd3e4b7a5282ac7575f029109e8f246e11dcb 100644 (file)
@@ -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 */
@@ -123,10 +125,73 @@ if available or "OPENSSLDIR: N/A" otherwise.
 The "ENGINESDIR" setting of the library build in the form "ENGINESDIR: "...""
 if available or "ENGINESDIR: N/A" otherwise.
 
+=item OPENSSL_MODULES_DIR
+
+The "MODULESDIR" setting of the library build in the form "MODULESDIR: "...""
+if available or "MODULESDIR: N/A" otherwise.
+
+=item OPENSSL_CPU_INFO
+
+The current OpenSSL cpu settings.
+This is the current setting of the cpu capability flags. It is usually
+automatically configured but may be set via an environment variable.
+The value has the same syntax as the environment variable.
+For x86 the string looks like "CPUINFO: OPENSSL_ia32cap=0x123:0x456".
+Or "CPUINFO: N/A" if not available, e.g. no-asm build.
+
 =back
 
 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
+";").
+
+=item OPENSSL_INFO_CPU_SETTINGS
+
+The current OpenSSL cpu settings.
+This is the current setting of the cpu capability flags. It is usually
+automatically configured but may be set via an environment variable.
+The value has the same syntax as the environment variable.
+For x86 the string looks like "OPENSSL_ia32cap=0x123:0x456".
+
+=back
+
+For an unknown B<t>, NULL is returned.
+
 =head1 BACKWARD COMPATIBILITY
 
 For compatibility, some older macros and functions are retained or
@@ -176,14 +241,14 @@ L<crypto(7)>
 
 =head1 HISTORY
 
-The macros and functions described here were added to OpenSSL 3.0.0,
+The macros and functions described here were added in OpenSSL 3.0,
 with the exception of the L</BACKWARD COMPATIBILITY> ones.
 
 =head1 COPYRIGHT
 
-Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
+Copyright 2018-2019 The OpenSSL Project Authors. All Rights Reserved.
 
-Licensed under the OpenSSL license (the "License").  You may not use
+Licensed under the Apache License 2.0 (the "License").  You may not use
 this file except in compliance with the License.  You can obtain a copy
 in the file LICENSE in the source distribution or at
 L<https://www.openssl.org/source/license.html>.