Document OPENSSL_VERSION_TEXT macro
[openssl.git] / doc / man3 / OPENSSL_VERSION_NUMBER.pod
1 =pod
2
3 =head1 NAME
4
5 OPENSSL_VERSION_NUMBER, OPENSSL_VERSION_TEXT, OpenSSL_version,
6 OpenSSL_version_num - get OpenSSL version number
7
8 =head1 SYNOPSIS
9
10  #include <openssl/opensslv.h>
11  #define OPENSSL_VERSION_NUMBER 0xnnnnnnnnnL
12  #define OPENSSL_VERSION_TEXT "OpenSSL x.y.z xx XXX xxxx"
13
14  #include <openssl/crypto.h>
15
16  unsigned long OpenSSL_version_num();
17  const char *OpenSSL_version(int t);
18
19 =head1 DESCRIPTION
20
21 OPENSSL_VERSION_NUMBER is a numeric release version identifier:
22
23  MNNFFPPS: major minor fix patch status
24
25 The status nibble has one of the values 0 for development, 1 to e for betas
26 1 to 14, and f for release.
27
28 for example
29
30  0x000906000 == 0.9.6 dev
31  0x000906023 == 0.9.6b beta 3
32  0x00090605f == 0.9.6e release
33
34 Versions prior to 0.9.3 have identifiers E<lt> 0x0930.
35 Versions between 0.9.3 and 0.9.5 had a version identifier with this
36 interpretation:
37
38  MMNNFFRBB major minor fix final beta/patch
39
40 for example
41
42  0x000904100 == 0.9.4 release
43  0x000905000 == 0.9.5 dev
44
45 Version 0.9.5a had an interim interpretation that is like the current one,
46 except the patch level got the highest bit set, to keep continuity.  The
47 number was therefore 0x0090581f.
48
49 OPENSSL_VERSION_TEXT is the text variant of the version number and the
50 release date.  For example,
51 "OpenSSL 1.0.1a 15 Oct 2015".
52
53 OpenSSL_version_num() returns the version number.
54
55 OpenSSL_version() returns different strings depending on B<t>:
56
57 =over 4
58
59 =item OPENSSL_VERSION
60
61 The text variant of the version number and the release date.  For example,
62 "OpenSSL 1.0.1a 15 Oct 2015".
63
64 =item OPENSSL_CFLAGS
65
66 The compiler flags set for the compilation process in the form
67 "compiler: ..."  if available or "compiler: information not available"
68 otherwise.
69
70 =item OPENSSL_BUILT_ON
71
72 The date of the build process in the form "built on: ..." if available
73 or "built on: date not available" otherwise.
74
75 =item OPENSSL_PLATFORM
76
77 The "Configure" target of the library build in the form "platform: ..."
78 if available or "platform: information not available" otherwise.
79
80 =item OPENSSL_DIR
81
82 The "OPENSSLDIR" setting of the library build in the form "OPENSSLDIR: "...""
83 if available or "OPENSSLDIR: N/A" otherwise.
84
85 =item OPENSSL_ENGINES_DIR
86
87 The "ENGINESDIR" setting of the library build in the form "ENGINESDIR: "...""
88 if available or "ENGINESDIR: N/A" otherwise.
89
90 =back
91
92 For an unknown B<t>, the text "not available" is returned.
93
94 =head1 RETURN VALUES
95
96 OpenSSL_version_num() returns the version number.
97
98 OpenSSL_version() returns requested version strings.
99
100 =head1 SEE ALSO
101
102 L<crypto(7)>
103
104 =head1 COPYRIGHT
105
106 Copyright 2000-2018 The OpenSSL Project Authors. All Rights Reserved.
107
108 Licensed under the OpenSSL license (the "License").  You may not use
109 this file except in compliance with the License.  You can obtain a copy
110 in the file LICENSE in the source distribution or at
111 L<https://www.openssl.org/source/license.html>.
112
113 =cut