Make it possible to get ENGINESDIR info from OpenSSL_versions
[openssl.git] / doc / crypto / OPENSSL_VERSION_NUMBER.pod
1 =pod
2
3 =head1 NAME
4
5 OPENSSL_VERSION_NUMBER, 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
13  #include <openssl/crypto.h>
14
15  unsigned long OpenSSL_version_num();
16  const char *OpenSSL_version(int t);
17
18 =head1 DESCRIPTION
19
20 OPENSSL_VERSION_NUMBER is a numeric release version identifier:
21
22  MNNFFPPS: major minor fix patch status
23
24 The status nibble has one of the values 0 for development, 1 to e for betas
25 1 to 14, and f for release.
26
27 for example
28
29  0x000906000 == 0.9.6 dev
30  0x000906023 == 0.9.6b beta 3
31  0x00090605f == 0.9.6e release
32
33 Versions prior to 0.9.3 have identifiers E<lt> 0x0930.
34 Versions between 0.9.3 and 0.9.5 had a version identifier with this
35 interpretation:
36
37  MMNNFFRBB major minor fix final beta/patch
38
39 for example
40
41  0x000904100 == 0.9.4 release
42  0x000905000 == 0.9.5 dev
43
44 Version 0.9.5a had an interim interpretation that is like the current one,
45 except the patch level got the highest bit set, to keep continuity.  The
46 number was therefore 0x0090581f.
47
48 OpenSSL_version_num() returns the version number.
49
50 OpenSSL_version() returns different strings depending on B<t>:
51
52 =over 4
53
54 =item OPENSSL_VERSION
55
56 The text variant of the version number and the release date.  For example,
57 "OpenSSL 1.0.1a 15 Oct 2015".
58
59 =item OPENSSL_CFLAGS
60
61 The compiler flags set for the compilation process in the form
62 "compiler: ..."  if available or "compiler: information not available"
63 otherwise.
64
65 =item OPENSSL_BUILT_ON
66
67 The date of the build process in the form "built on: ..." if available
68 or "built on: date not available" otherwise.
69
70 =item OPENSSL_PLATFORM
71
72 The "Configure" target of the library build in the form "platform: ..."
73 if available or "platform: information not available" otherwise.
74
75 =item OPENSSL_DIR
76
77 The "OPENSSLDIR" setting of the library build in the form "OPENSSLDIR: "...""
78 if available or "OPENSSLDIR: N/A" otherwise.
79
80 =item OPENSSL_ENGINES_DIR
81
82 The "ENGINESDIR" setting of the library build in the form "ENGINESDIR: "...""
83 if available or "ENGINESDIR: N/A" otherwise.
84
85 =back
86
87 For an unknown B<t>, the text "not available" is returned.
88
89 =head1 RETURN VALUE
90
91 The version number.
92
93 =head1 SEE ALSO
94
95 L<crypto(3)>
96
97 =cut