summaryrefslogtreecommitdiff
path: root/include/openssl
Commit message (Collapse)AuthorAgeFilesLines
* Change provider params from int to size_tShane Lontis2019-09-052-26/+26
| | | | | Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9699)
* New function EVP_CIPHER_free()Richard Levitte2019-09-041-1/+2
| | | | | | | | | | | | | | | This function re-implements EVP_CIPHER_meth_free(), but has a name that isn't encumbered by legacy EVP_CIPHER construction functionality. We also refactor most of EVP_CIPHER_meth_new() into an internal evp_cipher_new() that's used when creating fetched methods. EVP_CIPHER_meth_new() and EVP_CIPHER_meth_free() are rewritten in terms of evp_cipher_new() and EVP_CIPHER_free(). This means that at any time, we can deprecate all the EVP_CIPHER_meth_ functions with no harmful consequence. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9758)
* New function EVP_MD_free()Richard Levitte2019-09-041-1/+2
| | | | | | | | | | | | | | | This function re-implements EVP_MD_meth_free(), but has a name that isn't encumbered by legacy EVP_MD construction functionality. We also refactor most of EVP_MD_meth_new() into an internal evp_md_new() that's used when creating fetched methods. EVP_MD_meth_new() and EVP_MD_meth_free() are rewritten in terms of evp_md_new() and EVP_MD_free(). This means that at any time, we can deprecate all the EVP_MD_meth_ functions with no harmful consequence. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9758)
* Refactor how KEYMGMT methods get associated with other methodsRichard Levitte2019-09-031-4/+1
| | | | | | | | | | | | | | | | | KEYMGMT methods were attached to other methods after those were fully created and registered, thereby creating a potential data race, if two threads tried to create the exact same method at the same time. Instead of this, we change the method creating function to take an extra data parameter, passed all the way from the public fetching function. In the case of EVP_KEYEXCH, we pass all the necessary data that evp_keyexch_from_dispatch() needs to be able to fetch the appropriate KEYMGMT method on the fly. Fixes #9592 Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9678)
* Add CPU info to the speed command summaryBernd Edlinger2019-09-021-0/+2
| | | | | Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9669)
* Diverse ERR fixesRichard Levitte2019-09-021-12/+22
| | | | | | | | | | | | 1. There are still references to the removed ERR_put_func_error(). 2. ERR_put_error() is deprecated as off version 3.0, so should ERR_PUT_error(). 3. 'no-err' didn't affect what was passed to ERR_set_debug(). Fixes #9522 Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9747)
* Fix a documentation bug in ec.hMatt Caswell2019-08-291-2/+0
| | | | | | | The EC_GROUP_new() function does not take a libctx parameter Reviewed-by: Paul Yang <kaishen.yy@antfin.com> (Merged from https://github.com/openssl/openssl/pull/9715)
* OPENSSL_info(): add the item OPENSSL_INFO_SEED_SOURCE and use itRichard Levitte2019-08-271-0/+1
| | | | | | | | | | 'openssl version -r' prints the seed source based on compiler macros. This does not necessarily reflect the library's idea of what seed sources to use, so we reimplement the list of seed sources as a OPENSSL_info() item and display that instead. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9689)
* Cleanup ciphers and Add 3des ciphers.Shane Lontis2019-08-261-0/+1
| | | | | | | | Moved the relevant ciphers into default and restructed headers to allow the move. This removed most of the cases of #ifdef NO_XXX (which are now specified in build.info) Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9482)
* Get rid of the diversity of names for MAC parametersRichard Levitte2019-08-241-8/+5
| | | | | | | | | | | | | | | The EVP_PKEY MAC implementations had a diversity of controls that were really the same thing. We did reproduce that for the provider based MACs, but are changing our minds on this. Instead of that, we now use one parameter name for passing the name of the underlying ciphers or digests to a MAC implementation, "cipher" and "digest", and one parameter name for passing the output size of the MAC, "size". Then we leave it to the EVP_PKEY->EVP_MAC bridge to translate "md" to "digest", and "digestsize" to "size". Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9667)
* Support parsing of SM2 ID in hexdecimalPaul Yang2019-08-221-1/+0
| | | | | | | | | | | | | The current EVP_PEKY_ctrl for SM2 has no capability of parsing an ID input in hexdecimal. The newly added ctrl string is called: sm2_hex_id Test cases and documentation are updated. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9584)
* Use macros internally for algorithm namesRichard Levitte2019-08-191-0/+10
| | | | | | | | | | The macros are defined in include/openssl/core_names.h and follow the naming standard OSSL_{OPNAME}_NAME_{ALGONAME}, where {OPNAME} is the name of the operation (such as MAC) and {ALGONAME} is the name of the algorithm. Example: OSSL_MAC_NAME_HMAC Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9635)
* Untangle / retangle opensslv.h, openssslconf.h and macros.hRichard Levitte2019-08-193-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When openssl/macros.h is included without openssl/opensslv.h, it can't define OPENSSL_API_4 properly (with sufficient warnings enabled, the compiler will complain about OPENSSL_VERSION_MAJOR not being defined). The quick fix could have been to include openssl/opensslv.h in openssl/macros.h, but that would create a nasty include loop, since openssl/opensslv.h includes openssl/opensslconf.h, which includes openssl/macros.h, in an order that leads back to macro check errors. The objective is to make these headers more independent: - openssl/opensslconf.h should really be completely independent, as it only defines macros for configuration values. However, it needs to include openssl/macros.h for backward compatibility reasons. We do this at the very end, under inclusion guards. - openssl/macros.h is changed to include openssl/opensslconf.h, so it gets necessary configuration values to build some macros. This will not cause an endless inclusion loop, since opensslconf.h's inclusion of macros.h is under guard. - openssl/opensslv.h is changed to include openssl/macros.h instead of openssl/opensslconf.h. Only one last piece needs to be done to make openssl/macros.h independent from openssl/opensslv.h. We can realise that the definition of OPENSSL_API_4 doesn't need to depend on the current version number. There's nothing in our configuration that would have OPENSSL_API_4 defined to 1, and if the user sets OPENSSL_API_COMPAT or OPENSSL_API_LEVEL to a high enough value, we consider that a deliberate and knowledgable action on their part. Fixes #7874 Fixes #9601 Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com> (Merged from https://github.com/openssl/openssl/pull/9626)
* cipher cleanups.Shane Lontis2019-08-191-26/+22
| | | | | | | | Add test to evp_test_extra for ciphers (that is similiar to the digest_fetch). Move some of the aes and gcm methods that can be shared with other ciphers into ciphers_common.c Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9580)
* Add fips provider code for handling self test dataShane Lontis2019-08-193-0/+63
| | | | | | | | | | | More PR's related to self test will be derived from this PR. Note: the code removed in core_get_params() was causing a freeze since the fips module was being loaded from a config file, which then called core_get_params() which then tried to init the config fle again... Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9596)
* Rename ctx_{get,set}_params to {get,set}_ctx_paramsRichard Levitte2019-08-161-12/+12
| | | | | | | | | | | | | | | | | | | Recently, we added dispatched functions to get parameter descriptions, and those for operation context parameters ended up being called something_gettable_ctx_params and something_settable_ctx_params. The corresponding dispatched functions to actually perform parameter transfers were previously called something_ctx_get_params and something_ctx_set_params, which doesn't quite match, so we rename them to something_get_ctx_params and something_set_ctx_params. An argument in favor of this name change is English, where you'd rather say something like "set the context parameters". This only change the libcrypto <-> provider interface. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9612)
* Implement EVP_MAC_do_all_ex()Richard Levitte2019-08-151-0/+4
| | | | | | Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/8877)
* Add EVP_MAC_provider()Richard Levitte2019-08-151-0/+1
| | | | | | | | For information processing. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/8877)
* Prepare EVP_MAC infrastructure for moving all MACs to providersRichard Levitte2019-08-154-44/+76
| | | | | | | | | | | | | | | | | | | | | Quite a few adaptations are needed, most prominently the added code to allow provider based MACs. As part of this, all the old information functions are gone, except for EVP_MAC_name(). Some of them will reappear later, for example EVP_MAC_do_all() in some form. MACs by EVP_PKEY was particularly difficult to deal with, as they need to allocate and deallocate EVP_MAC_CTXs "under the hood", and thereby implicitly fetch the corresponding EVP_MAC. This means that EVP_MACs can't be constant in a EVP_MAC_CTX, as their reference count may need to be incremented and decremented as part of the allocation or deallocation of the EVP_MAC_CTX. It may be that other provider based EVP operation types may need to be handled in a similar manner. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/8877)
* Enable curve-spefific ECDSA implementations via EC_METHODPatrick Steuer2019-08-151-0/+1
| | | | | | | | | | which are already enabled for ECDH. Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9348)
* Rename provider and core get_param_types functionsRichard Levitte2019-08-152-5/+5
| | | | | | | | | | | | | | It was argued that names like SOMETHING_set_param_types were confusing, and a rename has been proposed to SOMETHING_settable_params, and by consequence, SOMETHING_get_param_types is renamed SOMETHING_gettable_params. This changes implements this change for the dispatched provider and core functions. Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> (Merged from https://github.com/openssl/openssl/pull/9591)
* Add missing EVP param utility functionsRichard Levitte2019-08-152-0/+25
| | | | | | | | | | | | | | | | | | These functions were missing for a completes API: EVP_MD_get_params(), EVP_CIPHER_get_params(), EVP_CIPHER_CTX_set_params(), and EVP_CIPHER_CTX_get_params Additionally, we also add all the corresponding parameter descriptor returning functions, along the correspoding provider dispatches: EVP_MD_gettable_params(), EVP_MD_CTX_settable_params(), EVP_MD_CTX_gettable_params(), EVP_CIPHER_gettable_params(), EVP_CIPHER_CTX_settable_params(), and EVP_CIPHER_CTX_gettable_params() Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9576)
* Make more use of OSSL_PARAM for digestsRichard Levitte2019-08-122-19/+20
| | | | | | | | | A lot of the different numbers associated with digests are really algorithm parameters. block size, digest length, that sort of thing. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9391)
* Add OSSL_PARAM_construct_from_text() and OSSL_PARAM_allocate_from_text()Richard Levitte2019-08-121-0/+10
| | | | | | | | | | | These are utility functions that can be used to replace calls to ctrl_str type functions with get_params / set_params types of calls. They work by translating text values to something more suitable for OSSL_PARAM, and by interpretting parameter keys in a compatible fashion. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9303)
* Add OPENSSL_hexstr2buf_ex() and OPENSSL_buf2hexstr_ex()Richard Levitte2019-08-122-2/+9
| | | | | | | | | | | | They do the same thing as OPENSSL_hexstr2buf() and OPENSSL_buf2hexstr(), except they take a result buffer from the caller. We take the opportunity to break out the documentation of the hex to / from buffer conversion routines from the OPENSSL_malloc() file to its own file. These routines aren't memory allocation routines per se. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9303)
* enable DECLARE_DEPRECATED macro for Oracle Developer Studio compilerVladimir Kotal2019-08-121-0/+5
| | | | | | Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9434)
* Restrict usage of bio_dgram_sctp_data only to DGRAM SCTP methodsraja-ashok2019-08-091-4/+8
| | | | | | Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9216)
* Change EVP_CIPHER_CTX_iv_length() to return current ivlen for some modesShane Lontis2019-08-081-2/+6
| | | | | Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9542)
* Fix BN error reportingMatt Caswell2019-08-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit ed57f7f935 implemented the macro ERR_raise and updated err.h to use it. A typo in err.h means that errors in the BN library are mistakenly attributed to the RSA library. This was found due to the following error appearing in a travis log: 00:07:CB:13:05:7F:00:00:error:0400006C:rsa routines::data greater than mod len:crypto/bn/bn_gcd.c:613: 00:07:CB:13:05:7F:00:00:error:04000003:rsa routines::BN lib:crypto/rsa/rsa_gen.c:393: /home/travis/build/openssl/openssl/util/shlib_wrap.sh /home/travis/build/openssl/openssl/apps/openssl genrsa -out rsamptest.pem -primes 5 8192 => 1 not ok 12 - genrsa 8192p5 The line in question (crypto/bn/bn_gcd.c:613) actually looks like this: BNerr(BN_F_BN_MOD_INVERSE_NO_BRANCH, BN_R_NO_INVERSE); The test was checking for that error being raised, but was instead seeing a different error and thus failing. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Yang <kaishen.yy@antfin.com> (Merged from https://github.com/openssl/openssl/pull/9539)
* API to get negotiated key exchange algorithm in TLS1.3raja-ashok2019-08-061-0/+3
| | | | | | Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9323)
* Fix ECDSA_SIG docsMatt Caswell2019-08-061-1/+2
| | | | | | | | | | | | | They incorrectly said that i2d_ECDSA_SIG returns 0 on error. In fact it returns a negative value on error. We fix this by moving the i2d_ECDSA_SIG/d2i_ECDSA_SIG docs onto the same page as all the other d2i/i2d docs. Fixes #9517 Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> (Merged from https://github.com/openssl/openssl/pull/9533)
* Make the EC code available from inside the FIPS providerMatt Caswell2019-08-061-7/+56
| | | | | Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> (Merged from https://github.com/openssl/openssl/pull/9380)
* Correct the Extended Master Secret string for EBCDICMatt Caswell2019-08-061-1/+1
| | | | | | | | | The macro TLS_MD_MASTER_SECRET_CONST is supposed to hold the ascii string "extended master secret". On EBCDIC machines it actually contained the value "extecded master secret" Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9430)
* Documentation for the provider Key Exchange operationMatt Caswell2019-08-051-2/+2
| | | | | Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9506)
* Replace FUNCerr with ERR_raise_dataRich Salz2019-08-021-1/+0
| | | | | | Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9496)
* Add missing accessors for X509 AuthorityKeyIdentifierDr. Matthias St. Pierre2019-08-011-0/+2
| | | | | | | | | | | Complements commit b383aa208146, which added X509_get0_authority_key_id(). const ASN1_OCTET_STRING *X509_get0_authority_key_id(X509 *x); const GENERAL_NAMES *X509_get0_authority_issuer(X509 *x); [NEW] const ASN1_INTEGER *X509_get0_authority_serial(X509 *x); [NEW] Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9493)
* make RSA and DSA operations throw MISSING_PRIVATE_KEY if needed, adapt ECDSADavid von Oheimb2019-07-312-0/+2
| | | | | | Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com> (Merged from https://github.com/openssl/openssl/pull/9466)
* Add evp_util macrosShane Lontis2019-07-311-0/+5
| | | | | | | Also added EVP_CTRL_RET_UNSUPPORTED define (so magic numbers can be removed) Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9464)
* CAdES : lowercase name for now internal methods.FdaSilvaYY2019-07-312-10/+0
| | | | | | | | | | CAdES : rework CAdES signing API. Make it private, as it is unused outside library bounds. Fix varous doc-nits. Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
* Refactor provider support for reporting errorsRichard Levitte2019-07-311-9/+11
| | | | | | | | | | | | | | | The core now supplies its own versions of ERR_new(), ERR_set_debug() and ERR_vset_error(). This should suffice for a provider to have any OpenSSL compatible functionlity it desires. The main difference between the ERR functions and the core counterparts is that the core counterparts take an OSSL_PROVIDER parameter instead of the library number. That way, providers do not need to know what number they have been assigned, that information stays in the core. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* ERR: Remove ERR_put_func_error() and reimplement ERR_put_error() as a macroRichard Levitte2019-07-311-3/+8
| | | | | | | Also, deprecate ERR_put_error() Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* ERR: Implement the macros ERR_raise() and ERR_raise_data() and use themRichard Levitte2019-07-311-43/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The ERR_raise() macro uses a trick in C. The following is permitted: #include <stdio.h> void first(void) { printf("Hello! "); } void foo(const char *bar) { printf("%s", bar); } int main() { /* This */ (first(),foo)("cookie"); } ERR_raise_data() can be used to implement FUNCerr() as well, which takes away the need for the special function ERR_put_func_error(). Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* ERR: Add new building blocks for reporting errorsRichard Levitte2019-07-311-0/+9
| | | | | | | | | | | | The new building block are ERR_new(), ERR_set_debug(), ERR_set_error(), ERR_vset_error(), which allocate a new error record and set the diverse data in them. They are designed in such a way that it's reasonably easy to create macros that use all of them but then rely completely on the function signature of ERR_set_error() or ERR_vset_error(). Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* ERR: refactor useful inner macros to err_locl.h. Add function name fieldRichard Levitte2019-07-311-0/+1
| | | | | | | | The useful inner macros are now static inline functions. That will make them easier to debug in the future. Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* Move some macros from include/openssl/opensslconf.h.in, add OPENSSL_FUNCRichard Levitte2019-07-312-115/+144
| | | | | | | | | | | | | New header file, include/openssl/macros.h, which contains diverse useful macros that we use elsewhere. We also add the new macro OPENSSL_FUNC, which is an alias for __FUNC__, __FUNCTION__, __FUNCSIG or __func__, depending on what the compiler supports. In the worst case, it's an alias for the string "(unknown function)". Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9452)
* ERR: re-use the err_data field when possibleRichard Levitte2019-07-301-0/+1
| | | | | | | | | | | | | | | | | To deallocate the err_data field and then allocating it again might be a waste of processing, but may also be a source of errors when memory is scarce. While we normally tolerate that, the ERR sub-system is an exception and we need to pay closer attention to how we handle memory. This adds a new err_data flag, ERR_TXT_IGNORE, which means that even if there is err_data memory allocated, its contents should be ignored. Deallocation of the err_data field is much more selective, aand should only happen when ERR_free_state() is called. Fixes #9458 Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9459)
* Add functions to see if a provider is available for use.Richard Levitte2019-07-261-0/+1
| | | | | | | | | | | | | | | Public function OSSL_PROVIDER_available() takes a library context and a provider name, and returns 1 if it's available for use, i.e. if it's possible to fetch implementations from it, otherwise 0. Internal function ossl_provider_activated() returns 1 if the given OSSL_PROVIDER is activated, otherwise 0. To make this possible, the activation of fallbacks got refactored out to a separate function, which ended up simplifying the code. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9398)
* Document the provider DIGEST operationMatt Caswell2019-07-251-5/+3
| | | | | | | | Extends the existing provider documentation with information about the DIGEST operation. This is primarily for provider authors. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/9453)
* Remove OPENSSL_X509V3_H include detector from openssl/cms.hDr. Matthias St. Pierre2019-07-241-3/+0
| | | | | | | | The check is redundant, because <openssl/x509v3.h> is included. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Bernd Edlinger <bernd.edlinger@hotmail.de> (Merged from https://github.com/openssl/openssl/pull/9364)
* Enforce a minimum DH modulus size of 512 bitsBernd Edlinger2019-07-241-0/+1
| | | | | | | [extended tests] Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/9437)