summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-01-28Remove outdated testsRich Salz
These tests are not built, and only usable as hand-tests so not worth moving into our test framework. This closes https://github.com/openssl/openssl/pull/561 and RT 4252 Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-28Add more components to build.Rich Salz
Add enable-crypto-mdebug enable-rc5 enable-md2 to any target that was --strict-warnings. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-28Missed part of b4f35eRich Salz
Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-01-28Correct number of arguments in BIO_get_conn_int_port macroRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-28CHANGES and NEWS updates for releaseMatt Caswell
Add details about the latest issues fixed in the forthcoming release. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-28Add a test for small subgroup attacks on DH/DHEMatt Caswell
Following on from the previous commit, add a test to ensure that DH_compute_key correctly fails if passed a bad y such that: y^q (mod p) != 1 Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-28Prevent small subgroup attacks on DH/DHEMatt Caswell
Historically OpenSSL only ever generated DH parameters based on "safe" primes. More recently (in version 1.0.2) support was provided for generating X9.42 style parameter files such as those required for RFC 5114 support. The primes used in such files may not be "safe". Where an application is using DH configured with parameters based on primes that are not "safe" then an attacker could use this fact to find a peer's private DH exponent. This attack requires that the attacker complete multiple handshakes in which the peer uses the same DH exponent. A simple mitigation is to ensure that y^q (mod p) == 1 CVE-2016-0701 Issue reported by Antonio Sanso. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-28Fix typo in md2.hRich Salz
Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-28Restore NUMPRIMES as a numeric literalViktor Dukhovni
This fixes clang compilation problem with size_t NUMPRIMES and int loop counters. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-27Add CRYPTO_secure_zallocRich Salz
Also turn B<foo> into foo() in the pod page. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-27Comment side-effect only calls of X509_check_purposeViktor Dukhovni
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-27Remove EIGHT_BIT and SIXTEEN_BITRich Salz
Also cleaned up bn_prime.pl to current coding style. Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-01-27Remove outdated legacy crypto optionsRich Salz
Many options for supporting optimizations for legacy crypto on legacy platforms have been removed. This simplifies the source code and does not really penalize anyone. DES_PTR (always on) DES_RISC1, DES_RISC2 (always off) DES_INT (always 'unsigned int') DES_UNROLL (always on) BF_PTR (always on) BF_PTR2 (removed) MD2_CHAR, MD2_LONG (always 'unsigned char') IDEA_SHORT, IDEA_LONG (always 'unsigned int') RC2_SHORT, RC2_LONG (always 'unsigned int') RC4_LONG (only int and char (for assembler) are supported) RC4_CHUNK (always long), RC_CHUNK_LL (removed) RC4_INDEX (always on) And also make D_ENCRYPT macro more clear (@appro) This is done in consultation with Andy. Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-01-27Fix check of what makedepprog should beRichard Levitte
A mistake was made and the setting of this config variable got reverted to an older behavior. This restores the latest. Reviewed-by: Emilia Käsper <emilia@openssl.org>
2016-01-27Test all built-in curves and let the library choose the EC_METHODBilly Brumley
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-27Complete the removal of /* foo.c */ commentsRichard Levitte
Some files that are automatically generated still had those comments added by the generating scripts. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-27Skip all explicitely if the number of tests is 0Richard Levitte
It seems that Test::More doesn't like 0 tests, a line like this raises an error and stops the recipe entirely: plan tests => 0; So we need to check for 0 tests beforehand and skip the subtest explicitely in that case. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-27Fix typosZhao Junwang
cryptograpic => cryptographic Signed-off-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-27Be careful when applying EXE_SHELLRichard Levitte
$EXE_SHELL should only be used with out own programs, not with surrounding programs such as the perl interpreter. Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-27Doc fixes suggested by Claus AssmannViktor Dukhovni
RT4264, RT4268 Reviewed-by: Tim Hudson <tjh@openssl.org>
2016-01-26Fix Custom Extension tests skip countViktor Dukhovni
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-26Remove /* foo.c */ commentsRich Salz
This was done by the following find . -name '*.[ch]' | /tmp/pl where /tmp/pl is the following three-line script: print unless $. == 1 && m@/\* .*\.[ch] \*/@; close ARGV if eof; # Close file to reset $. And then some hand-editing of other files. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-26SHARED_LIBS_LINK_EXTS is no longer used, remove it completelyRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-26Remove unused, undocumented clean-shared targetBenjamin Kaduk
Also removes the make variable SHARED_LIBS_LINK_EXTS, only used by the clean-shared target. When shared library linking was moved to the separate Makefile.shared in commit 30afcc072acd4f70590fec68bf0590da4e4f1883, this target was skipped. Prior to that commit, clean-shared was invoked as a dependency of build-shared, but afterward it was no longer referenced anywhere in the tree. Instead of porting the functionality over to Makefile.shared, just remove it entirely, as it appears to be unused. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-26RT4272: Unit tests fail when DTLS disabledTodd Short
Missing SKIP: block in SSL unit tests for DTLS and TLS version tests. Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-2680-test_ca.t is made to use the new perlapp()Richard Levitte
Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-26Have OpenSSL::Test handle perl scripts like any programRichard Levitte
Since we're building some of our perl scripts and the result might not end up in apps/ (*), we may need to treat them like the compile programs we use for testing. This introduces perlapp() and perltest(), which behave like app() and test(), but will add the perl executable in the command line. ----- (*) For example, with a mk1mf build, the result will end up in $(BIN_D) Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-26Add SSL_up_ref() and SSL_CTX_up_ref()Matt Caswell
The SSL and SSL_CTX structures are reference counted. However since libssl was made opaque there is no way for users of the library to manipulate the reference counts. This adds functions to enable that. Reviewed-by: Stephen Henson <steve@openssl.org>
2016-01-26Remove dirs from mkfiles.plMatt Caswell
Recent changes have removed some directories which is causing mkfiles.pl to fail. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-26Use the new OpenSSL::Test::Utils routines.Richard Levitte
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-26Use Configure's @disablables and %disabled through configdata.pmRichard Levitte
Enhances the routines in OpenSSL::Test::Utils for checking disabled stuff to get their information directly from Configure instead of 'openssl list -disabled'. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-26Configure first in travis create releaseRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-26Base the tarfile list of files on git ls-files instead of findRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Ask for tests in CONTRIBUTINGRich Salz
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-25Small Makefile.in cleanupRichard Levitte
engines_obj changed name to padlock_obj in Configure. We need to do the corresponding ENGINES_ASM_OBJ -> PADLOCK_ASM_OBJ in appropriate Makefile.ins. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Small cleanups in ConfigureRichard Levitte
- Small rearrangement of the TABLE and HASH printouts, and adding printout of the "build_scheme" item - Renamed "engines_obj" to "padlock_obj" - Moved the runs of dofile down... it didn't quite make sense to have that in the middle of a printout Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Generate warning textRichard Levitte
Now that we're using templates, we should warn people not to edit the resulting file. We do it through util/dofile.pl, which is enhanced with an option to tell what file it was called from. We also change the calls so the template files are on the command line instead of being redirected through standard input. That way, we can display something like this (example taken from include/openssl/opensslconf.h): /* WARNING: do not edit! */ /* Generated by Configure from include/openssl/opensslconf.h.in */ Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Misc fixupsRichard Levitte
The goal is Makefile, not Makefile.new Remove the second generation of opensslconf.h Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Revert merge errorRichard Levitte
There are two versions of print_table_entry() in Configure. Remove the older. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Add some info in CHANGES about what's happening so far with Configure et alRichard Levitte
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-25Remove GOST againRichard Levitte
The config for the removed GOST engine reappeared by mistake. Now removed again. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-25Refactor file writing - Remake Makefile.org into a templateRichard Levitte
It is time for Makefile.org to fold into the new regime and have a run through util/dofile.pl. This forces some information out of there and into Configure, which isn't a bad thing, it makes Configure increasingly the center of build information, which is as it should be. A few extra defaults were needed in the BASE template to get rid of warnings about missing values. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-25Now that Configure doesn't produce tools/c_rehash, mk1mf has to do itRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25For every test in 80-test_ssl.t, check that the protocol(s) used is enabledRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Make tests use configdata.pm rather than parsing MakefileRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-25Move & split opensslconf.h.inRich Salz
Move opensslconf.h.in to include/openssl. Split off DES,BN,RC4 stuff into separate header file templates in crypto/include/internal/*_conf.h.in Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-25Fix OpenSSL::Test::Simple to take more than one algorithmRichard Levitte
Some test programs may depend on more than just one TLS version, for example. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-24Move pqueue into sslRich Salz
This is an internal facility, never documented, not for public consumption. Move it into ssl (where it's only used for DTLS). I also made the typedef's for pqueue and pitem follow our style: they name structures, not pointers. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-25Make sure apps/Makefile builds apps/CA.pl by defaultRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-24The rehash.time target should depend on build_tools as wellRichard Levitte
The explanation is that it falls back to using tools/c_rehash if 'apps/openssl rehash' isn't supported on the platform at hand. Reviewed-by: Rich Salz <rsalz@openssl.org>