libc: make stdio_impl.h an internal libc header
[unleashed/tickless.git] / lib / libcrypto / man / OPENSSL_VERSION_NUMBER.3
blob7c792f745a929da0cc1ff4302d0d73c357e3e1a0
1 .\"     $OpenBSD: OPENSSL_VERSION_NUMBER.3,v 1.3 2016/11/28 14:51:03 schwarze Exp $
2 .\"     OpenSSL 9b86974e Aug 17 15:21:33 2015 -0400
3 .\"
4 .\" This file was written by Ulf Moeller <ulf@openssl.org> and
5 .\" Richard Levitte <levitte@openssl.org>.
6 .\" Copyright (c) 2000, 2002, 2014 The OpenSSL Project.  All rights reserved.
7 .\"
8 .\" Redistribution and use in source and binary forms, with or without
9 .\" modification, are permitted provided that the following conditions
10 .\" are met:
11 .\"
12 .\" 1. Redistributions of source code must retain the above copyright
13 .\"    notice, this list of conditions and the following disclaimer.
14 .\"
15 .\" 2. Redistributions in binary form must reproduce the above copyright
16 .\"    notice, this list of conditions and the following disclaimer in
17 .\"    the documentation and/or other materials provided with the
18 .\"    distribution.
19 .\"
20 .\" 3. All advertising materials mentioning features or use of this
21 .\"    software must display the following acknowledgment:
22 .\"    "This product includes software developed by the OpenSSL Project
23 .\"    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
24 .\"
25 .\" 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
26 .\"    endorse or promote products derived from this software without
27 .\"    prior written permission. For written permission, please contact
28 .\"    openssl-core@openssl.org.
29 .\"
30 .\" 5. Products derived from this software may not be called "OpenSSL"
31 .\"    nor may "OpenSSL" appear in their names without prior written
32 .\"    permission of the OpenSSL Project.
33 .\"
34 .\" 6. Redistributions of any form whatsoever must retain the following
35 .\"    acknowledgment:
36 .\"    "This product includes software developed by the OpenSSL Project
37 .\"    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
38 .\"
39 .\" THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
40 .\" EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
41 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
42 .\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
43 .\" ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
44 .\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
45 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
46 .\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
48 .\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
49 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
50 .\" OF THE POSSIBILITY OF SUCH DAMAGE.
51 .\"
52 .Dd $Mdocdate: November 28 2016 $
53 .Dt OPENSSL_VERSION_NUMBER 3
54 .Os
55 .Sh NAME
56 .Nm OPENSSL_VERSION_NUMBER ,
57 .Nm SSLeay ,
58 .Nm SSLeay_version
59 .Nd get OpenSSL version number
60 .Sh SYNOPSIS
61 .In openssl/opensslv.h
62 .Fd #define OPENSSL_VERSION_NUMBER 0xnnnnnnnnnL
63 .In openssl/crypto.h
64 .Ft long
65 .Fn SSLeay void
66 .Ft const char *
67 .Fo SSLeay_version
68 .Fa "int t"
69 .Fc
70 .Sh DESCRIPTION
71 .Dv OPENSSL_VERSION_NUMBER
72 is a numeric release version identifier.
73 The first two digits contain the major release number,
74 the third and fourth digits the minor release number,
75 the fifth and sixth digits the fix release number,
76 the seventh and eight digits the patch release number.
77 The final digit is 0 for development, 1 to e for betas 1 to 14, or f
78 for release.
79 .Pp
80 For example:
81 .Bd -literal -offset indent
82 0x000906000 == 0.9.6 dev
83 0x000906023 == 0.9.6b beta 3
84 0x00090605f == 0.9.6e release
85 .Ed
86 .Pp
87 Versions prior to 0.9.3 had identifiers < 0x0930.
88 For versions between 0.9.3 and 0.9.5,
89 the seventh digit was 1 for release and 0 otherwise,
90 and the eighth and ninth digits were the patch release number.
91 .Pp
92 For example:
93 .Bd -literal
94 0x000904100 == 0.9.4 release
95 0x000905000 == 0.9.5 dev
96 .Ed
97 .Pp
98 Version 0.9.5a had an interim interpretation that is like the current
99 one, except the patch level got the highest bit set, to keep continuity.
100 The number was therefore 0x0090581f.
102 For backward compatibility, SSLEAY_VERSION_NUMBER is also defined.
104 .Fn SSLeay
105 returns this number.
106 The return value can be compared to the macro to make sure that the
107 correct version of the library has been loaded, especially when using
108 DLLs on Windows systems.
110 .Fn SSLeay_version
111 returns different strings depending on
112 .Fa t :
113 .Bl -tag -width Ds
114 .It Dv SSLEAY_VERSION
115 The text variant of the version number and the release date.
116 For example, "OpenSSL 0.9.5a 1 Apr 2000".
117 .It Dv SSLEAY_CFLAGS
118 The compiler flags set for the compilation process in the form
119 "compiler: ..." if available or "compiler: information not available"
120 otherwise.
121 .It Dv SSLEAY_BUILT_ON
122 The date of the build process in the form "built on: ..." if available
123 or "built on: date not available" otherwise.
124 .It Dv SSLEAY_PLATFORM
125 The "Configure" target of the library build in the form "platform: ..."
126 if available or "platform: information not available" otherwise.
127 .It Dv SSLEAY_DIR
128 The "OPENSSLDIR" setting of the library build in the form "OPENSSLDIR:
129 "..."" if available or "OPENSSLDIR: N/A" otherwise.
132 For an unknown
133 .Fa t ,
134 the text "not available" is returned.
135 .Sh RETURN VALUES
136 The version number.
137 .Sh SEE ALSO
138 .Xr crypto 3
139 .Sh HISTORY
140 .Fn SSLeay
142 .Dv SSLEAY_VERSION_NUMBER
143 are available in all versions of SSLeay and OpenSSL.
144 .Dv OPENSSL_VERSION_NUMBER
145 is available in all versions of OpenSSL.
146 .Dv SSLEAY_DIR
147 was added in OpenSSL 0.9.7.