openssl/crypto
Richard Levitte 3a63dbef15 Switch to MAJOR.MINOR.PATCH versioning and version 3.0.0-dev
We're strictly use version numbers of the form MAJOR.MINOR.PATCH.
Letter releases are things of days past.

The most central change is that we now express the version number with
three macros, one for each part of the version number:

    OPENSSL_VERSION_MAJOR
    OPENSSL_VERSION_MINOR
    OPENSSL_VERSION_PATCH

We also provide two additional macros to express pre-release and build
metadata information (also specified in semantic versioning):

    OPENSSL_VERSION_PRE_RELEASE
    OPENSSL_VERSION_BUILD_METADATA

To get the library's idea of all those values, we introduce the
following functions:

    unsigned int OPENSSL_version_major(void);
    unsigned int OPENSSL_version_minor(void);
    unsigned int OPENSSL_version_patch(void);
    const char *OPENSSL_version_pre_release(void);
    const char *OPENSSL_version_build_metadata(void);

Additionally, for shared library versioning (which is out of scope in
semantic versioning, but that we still need):

    OPENSSL_SHLIB_VERSION

We also provide a macro that contains the release date.  This is not
part of the version number, but is extra information that we want to
be able to display:

    OPENSSL_RELEASE_DATE

Finally, also provide the following convenience functions:

    const char *OPENSSL_version_text(void);
    const char *OPENSSL_version_text_full(void);

The following macros and functions are deprecated, and while currently
existing for backward compatibility, they are expected to disappear:

    OPENSSL_VERSION_NUMBER
    OPENSSL_VERSION_TEXT
    OPENSSL_VERSION
    OpenSSL_version_num()
    OpenSSL_version()

Also, this function is introduced to replace OpenSSL_version() for all
indexes except for OPENSSL_VERSION:

    OPENSSL_info()

For configuration, the option 'newversion-only' is added to disable all
the macros and functions that are mentioned as deprecated above.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/7724)
2018-12-06 12:24:47 +01:00
..
aes Update copyright year 2018-09-11 13:45:17 +01:00
aria
asn1 Switch future deprecation version from 1.2.0 to 3.0 2018-12-06 12:24:47 +01:00
async arch/async_posix.h: improve portability. 2018-10-19 10:29:21 +02:00
bf
bio Fix the BIO callback return code handling 2018-10-04 14:16:16 +01:00
blake2
bn bn/bn_{div|shift}.c: introduce fixed-top interfaces. 2018-12-05 10:33:57 +00:00
buffer
camellia Update copyright year 2018-09-11 13:45:17 +01:00
cast
chacha
cmac Adapt other EVP code to use EVP_MAC instead of direct implementation calls 2018-10-30 05:34:50 +01:00
cms Update copyright year 2018-09-11 13:45:17 +01:00
comp
conf Use secure_getenv(3) when available. 2018-09-24 11:21:18 +10:00
ct Use secure_getenv(3) when available. 2018-09-24 11:21:18 +10:00
des
dh Harmonize the error handling codepath 2018-09-05 15:22:35 +03:00
dsa Switch future deprecation version from 1.2.0 to 3.0 2018-12-06 12:24:47 +01:00
dso Extend dladdr() for AIX, consequence from changes for openssl#6368. 2018-08-22 21:50:33 +02:00
ec Switch future deprecation version from 1.2.0 to 3.0 2018-12-06 12:24:47 +01:00
engine crypto/engine/eng_devcrypto.c: ensure we don't leak resources 2018-11-02 20:21:59 +01:00
err err/err.c: add err_clear_last_constant_time. 2018-11-30 12:32:25 +00:00
evp Update copyright year 2018-11-20 13:26:47 +00:00
gmac GMAC implementation 2018-11-05 08:09:41 +10:00
hmac EVP_MAC: Integrate HMAC EVP_PKEY_METHOD into generic MAC EVP_PKEY_METHOD 2018-10-30 05:50:58 +01:00
idea
include/internal bn/bn_{div|shift}.c: introduce fixed-top interfaces. 2018-12-05 10:33:57 +00:00
kdf Reset the HKDF state between operations 2018-10-29 14:06:54 +00:00
kmac KMAC implementation using EVP_MAC 2018-11-14 07:01:09 +10:00
lhash Update copyright year 2018-09-11 13:45:17 +01:00
md2
md4
md5
mdc2
modes Update copyright year 2018-09-11 13:45:17 +01:00
objects KMAC implementation using EVP_MAC 2018-11-14 07:01:09 +10:00
ocsp Update copyright year 2018-09-11 13:45:17 +01:00
pem key zeroisation for pvkfmt now done on all branch paths 2018-09-05 05:14:02 +10:00
perlasm Update copyright year 2018-09-11 13:45:17 +01:00
pkcs7 Update copyright year 2018-09-11 13:45:17 +01:00
pkcs12 Use secure_getenv(3) when available. 2018-09-24 11:21:18 +10:00
poly1305 Add poly1305 MAC support 2018-11-05 13:07:07 +08:00
rand Fix issues with do_rand_init/rand_cleanup_int 2018-11-09 13:34:48 +01:00
rc2
rc4 Update copyright year 2018-09-11 13:45:17 +01:00
rc5
ripemd
rsa rsa/rsa_ssl.c: make RSA_padding_check_SSLv23 constant-time. 2018-11-30 12:32:25 +00:00
seed Update copyright year 2018-09-11 13:45:17 +01:00
sha sha/asm/sha512p8-ppc.pl: optimize epilogue. 2018-11-16 09:23:50 +01:00
siphash Fix SipHash init order. 2018-11-12 07:15:55 +01:00
sm2 EVP module documentation pass 2018-10-17 13:22:14 +03:00
sm3
sm4
srp Making SRP_user_pwd functions public 2018-11-15 10:53:47 +00:00
stack Revert "stack/stack.c: omit redundant NULL checks." 2018-08-09 14:37:10 +01:00
store crypto/*: address standard-compilance nits. 2018-07-20 13:40:30 +02:00
ts Check conversion return in ASN1_INTEGER_print_bio. 2018-07-31 11:37:05 +10:00
txt_db
ui crypto/ui/ui_openssl.c: make sure to recognise ENXIO and EIO too 2018-09-20 06:39:07 +02:00
whrlpool
x509 Apply self-imposed path length also to root CAs 2018-10-18 00:07:56 -04:00
x509v3 Support GeneralSubtrees with minimum = 0 2018-10-27 12:11:41 +08:00
alphacpuid.pl
arm64cpuid.pl
arm_arch.h
armcap.c
armv4cpuid.pl
build.info KMAC implementation using EVP_MAC 2018-11-14 07:01:09 +10:00
c64xpluscpuid.pl
cpt_err.c
cryptlib.c minor fixes for Windows 2018-09-12 09:16:07 +02:00
ctype.c
cversion.c Switch to MAJOR.MINOR.PATCH versioning and version 3.0.0-dev 2018-12-06 12:24:47 +01:00
dllmain.c Update copyright year 2018-09-11 13:45:17 +01:00
ebcdic.c
ex_data.c
getenv.c Use secure_getenv(3) when available. 2018-09-24 11:21:18 +10:00
ia64cpuid.S
init.c Add automatic initializations support for EVP_MAC objects 2018-10-29 13:35:19 +01:00
LPdir_nyi.c
LPdir_unix.c typo-fixes: miscellaneous typo fixes 2018-09-21 23:55:22 +02:00
LPdir_vms.c
LPdir_win32.c
LPdir_win.c
LPdir_wince.c
mem_clr.c
mem_dbg.c
mem_sec.c test/secmemtest: test secure memory only if it is implemented 2018-10-05 12:19:48 +02:00
mem.c crypto/mem.c: switch to tsan_assist.h in CRYPTO_MDEBUG. 2018-08-07 09:08:50 +02:00
mips_arch.h
o_dir.c
o_fips.c
o_fopen.c Add missing include file. 2018-09-17 10:40:32 +10:00
o_init.c
o_str.c
o_time.c
pariscid.pl
ppc_arch.h
ppccap.c
ppccpuid.pl
s390x_arch.h s390x assembly pack: add OPENSSL_s390xcap environment variable. 2018-10-17 14:02:34 +02:00
s390xcap.c Update copyright year 2018-11-20 13:26:47 +00:00
s390xcpuid.pl s390x assembly pack: add OPENSSL_s390xcap environment variable. 2018-10-17 14:02:34 +02:00
sparc_arch.h
sparccpuid.S
sparcv9cap.c
threads_none.c crypto/threads_*: remove CRYPTO_atomic_{read|write}. 2018-08-17 12:40:39 +02:00
threads_pthread.c crypto/threads_*: remove CRYPTO_atomic_{read|write}. 2018-08-17 12:40:39 +02:00
threads_win.c crypto/threads_*: remove CRYPTO_atomic_{read|write}. 2018-08-17 12:40:39 +02:00
uid.c Update copyright year 2018-09-11 13:45:17 +01:00
vms_rms.h
x86_64cpuid.pl
x86cpuid.pl