Matt Caswell [Mon, 25 Apr 2016 15:05:55 +0000 (16:05 +0100)]
Ensure we check i2d_X509 return val
The i2d_X509() function can return a negative value on error. Therefore
we should make sure we check it.
Issue reported by Yuan Jochen Kang.
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Dr. Stephen Henson [Tue, 26 Apr 2016 11:57:24 +0000 (12:57 +0100)]
*.der files are binary.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Benjamin Kaduk [Wed, 20 Apr 2016 18:51:58 +0000 (13:51 -0500)]
Remove the never-functional no-sct
It was added as part of
2df84dd3299ff25fa078ca7ffbdeaac65b361feb
but has never actually been used for anything; presumably it was
a typo for one of SCTP or CT.
This removes the last '??' entry from INSTALL.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
Benjamin Kaduk [Wed, 20 Apr 2016 18:58:25 +0000 (13:58 -0500)]
Remove some OPENSSL_NO_SHA that snuck in
Commit
d064e6ab52ac8e7b80b2a5d11b31bca583b769c7 removed all the
OPENSSL_NO_SHA guards, but commit
a50ad1daaa68c109ea1a14225a7aba8660526101 regenerated some due to the
sha entries in the %md_disabler table in apps/progs.pl.
Update %md_disabler to reflect that sha is not disableable, and
remove OPENSSL_NO_SHA for good.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
Andy Polyakov [Fri, 15 Apr 2016 14:30:29 +0000 (16:30 +0200)]
crypto/poly1305/asm: chase overflow bit on x86 and ARM platforms.
Even though no test could be found to trigger this, paper-n-pencil
estimate suggests that x86 and ARM inner loop lazy reductions can
loose a bit in H4>>*5+H0 step.
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Viktor Dukhovni [Mon, 25 Apr 2016 19:13:27 +0000 (15:13 -0400)]
make update
And recycle some disused slots.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Viktor Dukhovni [Mon, 25 Apr 2016 19:02:02 +0000 (15:02 -0400)]
Added missing X509_STORE_CTX_set_error_depth() accessor
Reviewed-by: Rich Salz <rsalz@openssl.org>
Richard Levitte [Thu, 21 Apr 2016 19:08:42 +0000 (21:08 +0200)]
Document the enhancements for DEPEND and INCLUDE and use a better example
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Richard Levitte [Thu, 21 Apr 2016 12:30:08 +0000 (14:30 +0200)]
Build system: add include directories and dependencies for generators
In the case of generating a file like this:
GENERATE[foo.S]=mkfoo.pl arg1 arg2
the 'mkfoo.pl' generator itself might need to include other files,
such as perl modules within our source tree. We can reuse already
existing syntax for it, like this:
INCLUDE[mkfoo.pl]=module/path
or:
DEPEND[mkfoo.pl]=modules/mymodule.pm
This change implements the support for such constructs, and for the
DEPEND statement, for any value that indicates a perl module (.pm
file), it will automatically infer an INCLUDE statement for its
directory, just like it does for C header files, so you won't have do
write this:
DEPEND[mkfoo.pl]=modules/mymodule.pm
INCLUDE[mkfoo.pl]=modules
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Rich Salz [Mon, 25 Apr 2016 12:56:54 +0000 (08:56 -0400)]
Fix NULL deref in apps/pkcs7
Thanks to Brian Carpenter for finding and reporting this.
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Viktor Dukhovni [Sat, 23 Apr 2016 04:39:20 +0000 (00:39 -0400)]
API compat macros for renamed X509_STORE_CTX functions
Reviewed-by: Rich Salz <rsalz@openssl.org>
Andy Polyakov [Fri, 15 Apr 2016 14:39:22 +0000 (16:39 +0200)]
s390x assembly pack: cache capability query results.
IBM argues that in certain scenarios capability query is really
expensive. At the same time it's asserted that query results can
be safely cached, because disabling CPACF is incompatible with
reboot-free operation.
Reviewed-by: Tim Hudson <tjh@openssl.org>
Andy Polyakov [Sat, 23 Apr 2016 17:10:04 +0000 (19:10 +0200)]
crypto/sparc_arch.h: reserve more SPARCv9 capability bits.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Sat, 23 Apr 2016 17:16:56 +0000 (19:16 +0200)]
chacha/asm/chacha-ppc.pl: get misalignment corner case right on big-endian.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Kazuki Yamaguchi [Thu, 21 Apr 2016 08:35:53 +0000 (17:35 +0900)]
Fix EC_KEY_set_private_key() to call key->group->meth->set_private()
Fix a bug introduced by
6903e2e7e9a4 (Extended EC_METHOD customisation
support., 2016-02-01). key->meth->set_private() is wrongly called where
it should call key->group->meth->set_private().
PR#4517
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Stephen Henson <steve@openssl.org>
Dr. Stephen Henson [Fri, 22 Apr 2016 17:44:23 +0000 (18:44 +0100)]
add test for CVE-2016-2109
Reviewed-by: Richard Levitte <levitte@openssl.org>
Dr. Stephen Henson [Fri, 22 Apr 2016 17:37:42 +0000 (18:37 +0100)]
In d2i_test return error for malloc failure.
Bad ASN.1 data should never be able to trigger a malloc failure so return
an error in d2i_test if a malloc failure occurs.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Dr. Stephen Henson [Mon, 11 Apr 2016 12:57:20 +0000 (13:57 +0100)]
Harden ASN.1 BIO handling of large amounts of data.
If the ASN.1 BIO is presented with a large length field read it in
chunks of increasing size checking for EOF on each read. This prevents
small files allocating excessive amounts of data.
CVE-2016-2109
Thanks to Brian Carpenter for reporting this issue.
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Richard Levitte [Thu, 21 Apr 2016 16:03:16 +0000 (18:03 +0200)]
Warn when doing an out-of-source build and finding in-source build artifacts
The reason to warn is that configuration *may* pick up on
configuration header files that are in the source tree, that might be
for a wildly different configuration than what is expected in the
current out-of-source configuration.
Reviewed-by: Matt Caswell <matt@openssl.org>
Viktor Dukhovni [Fri, 22 Apr 2016 00:06:49 +0000 (20:06 -0400)]
make update
Reviewed-by: Rich Salz <rsalz@openssl.org>
Viktor Dukhovni [Fri, 22 Apr 2016 00:00:58 +0000 (20:00 -0400)]
Enabled DANE only when at least one TLSA RR was added
It is up to the caller of SSL_dane_tlsa_add() to take appropriate
action when no records are added successfully or adding some records
triggers an internal error (negative return value).
With this change the caller can continue with PKIX if desired when
none of the TLSA records are usable, or take some appropriate action
if DANE is required.
Also fixed the internal ssl_dane_dup() function to properly initialize
the TLSA RR stack in the target SSL handle. Errors in ssl_dane_dup()
are no longer ignored.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Tue, 19 Apr 2016 22:33:35 +0000 (23:33 +0100)]
Don't set peer_tmp until we have finished constructing it
If we fail halfway through constructing the peer_tmp EVP_PKEY but we have
already stored it in s->s3->peer_tmp then if anything tries to use it then
it will likely fail. This was causing s_client to core dump in the
sslskewith0p test. s_client was trying to print out the connection
parameters that it had negotiated so far. Arguably s_client should not do
that if the connection has failed...but given it is existing functionality
it's easier to fix libssl.
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Dr. Stephen Henson [Wed, 20 Apr 2016 20:37:57 +0000 (21:37 +0100)]
Extensions to d2i_test.
Using ASN1_ITEM tables in d2i_test: this then uses consistent names and
makes it easier to extend.
Add bio, reencode and compare tests.
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Matt Caswell [Fri, 22 Apr 2016 11:23:07 +0000 (12:23 +0100)]
Fix capi engine for no-dsa
The capi engine was failing to compile on Windows if the no-dsa option
was selected.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 22 Apr 2016 11:10:19 +0000 (12:10 +0100)]
Fix no-dsa on Windows/VMS
The no-dsa option was failing on Windows because some symbols were not
correctly flagged in libcrypto.num. Problem found due to the new symbol
consistency test.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 22 Apr 2016 11:09:49 +0000 (12:09 +0100)]
Fix the indentation of OPENSSL_NO_STDIO in pem.h
Some pre-processor macros were incorrectly indented
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 22 Apr 2016 10:47:57 +0000 (11:47 +0100)]
Fix no-cmac on Windows/VMS
no-cmac was failing on Windows/VMS due to libcrypto.num not marking the
CMAC functions properly. Found due to the new symbol consistency test.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Fri, 22 Apr 2016 11:21:51 +0000 (07:21 -0400)]
Unified copyright for test recipes
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Fri, 22 Apr 2016 08:20:59 +0000 (10:20 +0200)]
Add a best effort test to check shared library consistency
Our main development platforms are of the Unix family, which doesn't
have the same strictness regarding a shared library being consistent
with the contents of the ld script (.map file, on Linux and Solaris)
as Windows is with the contents of the .def file or VMS is with the
linker symb_vector option.
To eliminate surprises, we therefore need to make sure to check that
the contents of the .map file is matched with the shared library, at
least to check that the shared library isn't missing any symbols that
should be present.
This test isn't absolutely perfect, as it will only check the symbols
that would be present on Linux / Solaris and will therefore miss those
that would only appear on Windows or VMS. On the other hand, those
platform specific are few and far apart in time, so it's not likely
they will pose a problem.
Reviewed-by: Matt Caswell <matt@openssl.org>
Dr. Stephen Henson [Thu, 21 Apr 2016 14:30:17 +0000 (15:30 +0100)]
Fix CRYPTO_clear_realloc() bug.
If allocation in CRYPTO_clear_realloc() fails don't free up the original
buffer: this is consistent with the behaviour of realloc(3) and is expected
in other places in OpenSSL.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
Richard Levitte [Thu, 21 Apr 2016 19:36:48 +0000 (21:36 +0200)]
Update the Configurations READMEs
Reviewed-by: Tim Hudson <tjh@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 15:38:29 +0000 (16:38 +0100)]
Fix no-ocsp on Windows (and probably VMS)
The ocsp.h file did not have appropriate guards causing link failures on
Windows.
GH Issue 900
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Thu, 21 Apr 2016 09:01:19 +0000 (10:01 +0100)]
Remove some unneccessary assignments to argc
openssl.c and ts.c assign the value of opt_num_rest() to argc, but then
only use the value once.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Sat, 16 Apr 2016 11:18:19 +0000 (12:18 +0100)]
Remove some unused argc assignments
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 13:45:12 +0000 (14:45 +0100)]
Fix a missing return value check in v3_addr
All other instances of extract_min_max are checked for an error return,
except this one.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 13:42:48 +0000 (14:42 +0100)]
Add missing return value check in pkcs8 app
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 13:31:03 +0000 (14:31 +0100)]
Add missing return value checks
Also correct the return value from the the "prime" application
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 13:11:09 +0000 (14:11 +0100)]
Fix missing break in option parsing
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 13:01:41 +0000 (14:01 +0100)]
Remove some dead code
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Fri, 15 Apr 2016 12:56:44 +0000 (13:56 +0100)]
Fix some code maintenance issues
Various instances of variables being written to, but then never read.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Davide Galassi [Mon, 18 Apr 2016 13:48:27 +0000 (15:48 +0200)]
BIO socket connect failure was not handled correctly.
The state was always set to BIO_CONN_S_OK.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Michel [Wed, 20 Apr 2016 18:38:35 +0000 (14:38 -0400)]
Fix missing IDEA renames (windows build)
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Wed, 20 Apr 2016 02:25:27 +0000 (22:25 -0400)]
Copyright consolidation script
With Richard Levitte.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Wed, 20 Apr 2016 16:39:01 +0000 (18:39 +0200)]
Travis: _srcdist, not _srcdir
Reviewed-by: Matt Caswell <matt@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 12:48:57 +0000 (13:48 +0100)]
Fix no-ui on Windows
Ensure public functions have appropriate guards in header files.
GH Issue 899
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Wed, 20 Apr 2016 14:20:59 +0000 (10:20 -0400)]
Copyright consolidation; .pm and Configure
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Wed, 20 Apr 2016 14:26:11 +0000 (10:26 -0400)]
Update copyright; generated files.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Sat, 2 Apr 2016 16:36:52 +0000 (18:36 +0200)]
Remove --classic build entirely
The Unix build was the last to retain the classic build scheme. The
new unified scheme has matured enough, even though some details may
need polishing.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 11:56:37 +0000 (12:56 +0100)]
Fix no-sock on Windows
Link errors were occurring on Windows because the header files were not
correctly guarding some functions with OPENSSL_NO_SOCK
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 11:43:27 +0000 (12:43 +0100)]
Include winsock2.h even if compiling no-sock
We need the struct timeval definition from winsock2.h even if we're not
going to call any socket functions.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 11:56:54 +0000 (12:56 +0100)]
Don't use select on Windows
Windows "select" only works for sockets so don't use it to wait for async.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 10:24:49 +0000 (11:24 +0100)]
Cascade no-dgram from no-sock in Configure not e_os.h
e_os.h was defining OPENSSL_NO_DGRAM if OPENSSL_NO_SOCK was defined.
This causes link problems on Windows because the generated .def files
still contain the DGRAM symbols even though they have not been compiled.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 20 Apr 2016 08:47:29 +0000 (09:47 +0100)]
Fix no-dgram on Windows
Link errors were occurring on Windows because the header files were not
correctly guarding some functions with OPENSSL_NO_DGRAM
Reviewed-by: Rich Salz <rsalz@openssl.org>
Rich Salz [Wed, 20 Apr 2016 02:10:43 +0000 (22:10 -0400)]
Copyright consolidation: perl files
Add copyright to most .pl files
This does NOT cover any .pl file that has other copyright in it.
Most of those are Andy's but some are public domain.
Fix typo's in some existing files.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rainer Jung [Wed, 20 Apr 2016 08:13:32 +0000 (09:13 +0100)]
Fix warnings installing pod files
Fixes some links in the pod files
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Andy Polyakov [Wed, 20 Apr 2016 08:22:47 +0000 (10:22 +0200)]
Configurations: fix typo in 50-masm.conf.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Tue, 19 Apr 2016 11:09:54 +0000 (13:09 +0200)]
evp/aes_aes.c: engage Fujitsu SPARC64 X AES support.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Tue, 19 Apr 2016 11:08:47 +0000 (13:08 +0200)]
sparcv9cap.c: add Fujitsu SPARC64 X AES capability detection.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Tue, 19 Apr 2016 11:06:18 +0000 (13:06 +0200)]
Add AES assembly module for Fujitsu SPARC64 X/X+.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Tue, 19 Apr 2016 18:41:18 +0000 (20:41 +0200)]
Configuration: add unsupported masm target.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Mon, 18 Apr 2016 11:27:01 +0000 (13:27 +0200)]
perlasm/x86_64-xlate.pl: make latest ml64 work.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Andy Polyakov [Mon, 18 Apr 2016 08:45:25 +0000 (10:45 +0200)]
poly1305/asm/poly1305-x86_64.pl: not all assemblers manage << in constants.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Tue, 19 Apr 2016 21:22:55 +0000 (23:22 +0200)]
Typo, asoutflag -> perlasm_scheme
Reviewed-by: Tim Hudson <tjh@openssl.org>
Richard Levitte [Mon, 18 Apr 2016 18:15:33 +0000 (20:15 +0200)]
Only allow Microsoft assembler with no-asm on Windows
This also restores the possibility to have ml used with VC-WIN32 with
no-asm, which was lost during the mk1mf -> unified transition.
Reviewed-by: Andy Polyakov <appro@openssl.org>
Richard Levitte [Mon, 18 Apr 2016 12:09:36 +0000 (14:09 +0200)]
Build: Make 'test' depend on 'tests'
Because we have a directory 'test', the target 'test' may be confusing
to make. However, if we make it depend on 'tests', which doesn't
exist, make should never fail to run the actions.
Reviewed-by: Andy Polyakov <appro@openssl.org>
Matt Caswell [Tue, 19 Apr 2016 14:58:45 +0000 (15:58 +0100)]
Prepare for 1.1.0-pre6-dev
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Tue, 19 Apr 2016 14:57:51 +0000 (15:57 +0100)]
Prepare for 1.1.0-pre5 release
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Mon, 18 Apr 2016 14:12:58 +0000 (15:12 +0100)]
Unsigned chars can't be negative
Fix a problem where an unsigned char was being checked to see if it was
negative.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Mon, 18 Apr 2016 09:35:34 +0000 (10:35 +0100)]
Fix PKCS7 memory leak
Commit
f0e0fd51f was a bit over-zealous in removing a call to
X509_STORE_CTX_cleanup(). The call in question was in a loop and was
required to cleanup resources used on each iteration of the loop. Removing
this resulted in a memory leak.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Wed, 13 Apr 2016 19:58:28 +0000 (15:58 -0400)]
Make string_to_hex/hex_to_string public
Give the API new names, document it.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Mon, 18 Apr 2016 11:43:54 +0000 (07:43 -0400)]
Rename some lowercase API's
Make OBJ_name_cmp internal
Rename idea_xxx to IDEA_xxx
Rename get_rfc_xxx to BN_get_rfc_xxx
Rename v3_addr and v3_asid functions to X509v3_...
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Mon, 18 Apr 2016 11:49:41 +0000 (13:49 +0200)]
NOTES files will contain more requirements, make that explicit
Reviewed-by: Rich Salz <rsalz@openssl.org>
Jérôme Duval [Sun, 17 Apr 2016 14:36:30 +0000 (16:36 +0200)]
Haiku x86-64 doesn't need RC4_CHAR.
* add a comment about Haiku being built with no-asm.
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
Ben Laurie [Sat, 16 Apr 2016 04:37:04 +0000 (05:37 +0100)]
Free methods on destroy.
Reviewed-by: Matt Caswell <matt@openssl.org>
Ben Laurie [Sat, 16 Apr 2016 04:33:24 +0000 (05:33 +0100)]
Free engine on error.
Reviewed-by: Matt Caswell <matt@openssl.org>
Ben Laurie [Fri, 15 Apr 2016 08:45:47 +0000 (09:45 +0100)]
Opacity.
Reviewed-by: Matt Caswell <matt@openssl.org>
Ben Laurie [Fri, 15 Apr 2016 08:45:25 +0000 (09:45 +0100)]
Signed/unsigned compare.
Reviewed-by: Matt Caswell <matt@openssl.org>
Richard Levitte [Sun, 17 Apr 2016 11:48:53 +0000 (13:48 +0200)]
Restore OCSP_basic_verify() error return semantics
Recently, OCSP_basic_verify() was changed to always return 0 on error,
when it would previously return 0 on error and < 0 on fatal error.
This restores the previous semantics back.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Richard Levitte [Sun, 17 Apr 2016 11:21:06 +0000 (13:21 +0200)]
Remove declaration of function that isn't implemented
Reviewed-by: Rich Salz <rsalz@openssl.org>
Dr. Stephen Henson [Sat, 16 Apr 2016 17:23:19 +0000 (18:23 +0100)]
Add X509_STORE_CTX_set0_untrusted function.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Richard Levitte [Sat, 16 Apr 2016 10:57:09 +0000 (12:57 +0200)]
Small OCSP fixup
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Stephen Henson <steve@openssl.org>
Rich Salz [Fri, 15 Apr 2016 03:59:26 +0000 (23:59 -0400)]
Make many X509_xxx types opaque.
Make X509_OBJECT, X509_STORE_CTX, X509_STORE, X509_LOOKUP,
and X509_LOOKUP_METHOD opaque.
Remove unused X509_CERT_FILE_CTX
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
Richard Levitte [Fri, 15 Apr 2016 07:17:13 +0000 (09:17 +0200)]
Don't use a default for --with-zlib-lib on Windows with option 'zlib'
To begin with, the default should have been the import library, not
the DLL itself. However, we don't know what directory it's installed
in either way, so we may as well demand the full path from the user
Reviewed-by: Matt Caswell <matt@openssl.org>
Richard Levitte [Fri, 15 Apr 2016 05:53:17 +0000 (07:53 +0200)]
ex_libs settings have to be added to, not overriden, on Windows too
Reviewed-by: Matt Caswell <matt@openssl.org>
Matt Caswell [Thu, 14 Apr 2016 13:28:13 +0000 (14:28 +0100)]
Update Travis and Appveyor for change to shared by default
Update the Travis and Appveyor builds to explicitly state no-shared where
applicable.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Thu, 14 Apr 2016 13:16:52 +0000 (14:16 +0100)]
Make "shared" builds the default
In most cases we expect that people will be using shared libraries not
static ones, therefore we make that the default.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Thu, 14 Apr 2016 20:28:54 +0000 (21:28 +0100)]
Fix ex_data locks issue
Travis identified a problem with freeing the ex_data locks which wasn't
quite right in
ff2344052. Trying to fix it identified a further problem:
the ex_data locks are cleaned up by OPENSSL_cleanup(), which is called
explicitly by CRYPTO_mem_leaks(), but then later the BIO passed to
CRYPTO_mem_leaks() is freed. An attempt is then made to use the ex_data
lock already freed.
Reviewed-by: Tim Hudson <tjh@openssl.org>
Jérôme Duval [Tue, 23 Feb 2016 21:49:01 +0000 (22:49 +0100)]
Add Haiku support.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
Richard Levitte [Thu, 14 Apr 2016 15:07:37 +0000 (16:07 +0100)]
Fix installation on VMS for no-stdio and no-autoalginit
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Richard Levitte [Thu, 14 Apr 2016 15:04:56 +0000 (16:04 +0100)]
Fix installation for no-stdio and no-autoalginit
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
Matt Caswell [Thu, 14 Apr 2016 12:44:15 +0000 (13:44 +0100)]
Fix no-stdio and no-autoalginit
no-stdio does not work with the apps. Since the tests also need the apps
it doesn't support that either. Therefore we disable building of both.
no-autoalginit is not compatible with the apps because it requires explicit
loading of the algorithms, and the apps don't do that. Therefore we disable
building the apps for this option. Similarly the tests depend on the apps
so we also disable the tests. Finally the whole point about no-autoalginit
is to avoid excessive executable sizes when doing static linking. Therefore
we disable "shared" if this option is selected.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Thu, 14 Apr 2016 12:37:41 +0000 (13:37 +0100)]
The err_cleanup() funtion is internal so shouldn't be exported
Running a "make update" wanted to add err_cleanup to libcrypto.num which
is wrong.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Rich Salz [Mon, 11 Apr 2016 14:17:38 +0000 (10:17 -0400)]
Write POD page.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Lyon Chen [Mon, 11 Apr 2016 14:08:00 +0000 (10:08 -0400)]
Add SSL_SESSION_get0_hostname()
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Fri, 11 Mar 2016 21:53:18 +0000 (21:53 +0000)]
Ensure all locks are properly cleaned up
Some locks were not being properly cleaned up during close down.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Shlomi Fish [Wed, 13 Apr 2016 20:43:07 +0000 (23:43 +0300)]
Fix the spelling of "implement".
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
Matt Caswell [Wed, 13 Apr 2016 22:26:56 +0000 (23:26 +0100)]
Fix AFALG kernel and headers mismatch problem
During Configure we attempt to check the kernel version of this platform
to see whether we can compile the AFALG engine. If the kernel version
looks recent enough then we enable AFALG. However when we compile
e_afalg.c we check the version of the linux headers. If there is a
mismatch between the linux headers and the currently running kernel then
we don't compile the AFLAG engine and continue. This was causing a link
error.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Viktor Dukhovni [Thu, 14 Apr 2016 03:14:43 +0000 (23:14 -0400)]
Bugfix: in asn1parse avoid erroneous len after a sub-sequence
Introduced in:
commit
79c7f74d6cefd5d32fa20e69195ad3de834ce065
Author: Ben Laurie <ben@links.org>
Date: Tue Mar 29 19:37:57 2016 +0100
Fix buffer overrun in ASN1_parse().
Problem input:
https://tools.ietf.org/html/draft-ietf-curdle-pkix-eddsa-00#section-8.1
-----BEGIN PUBLIC KEY-----
MC0wCAYDK2VkCgECAyEAGb9ECWmEzf6FQbrBZ9w7lshQhqowtrbLDFw4rXAxZuE=
-----END PUBLIC KEY-----
Previously:
0:d=0 hl=2 l= 45 cons: SEQUENCE
2:d=1 hl=2 l= 8 cons: SEQUENCE
4:d=2 hl=2 l= 3 prim: OBJECT :1.3.101.100
9:d=2 hl=2 l= 1 prim: ENUMERATED :02
Error in encoding
140735164989440:error:
0D07207B:asn1 encoding routines:ASN1_get_object:header too long:../openssl/crypto/asn1/asn1_lib.c:148:
Now:
0:d=0 hl=2 l= 45 cons: SEQUENCE
2:d=1 hl=2 l= 8 cons: SEQUENCE
4:d=2 hl=2 l= 3 prim: OBJECT :1.3.101.100
9:d=2 hl=2 l= 1 prim: ENUMERATED :02
12:d=1 hl=2 l= 33 prim: BIT STRING
0000 - 00 19 bf 44 09 69 84 cd-fe 85 41 ba c1 67 dc 3b ...D.i....A..g.;
0010 - 96 c8 50 86 aa 30 b6 b6-cb 0c 5c 38 ad 70 31 66 ..P..0....\8.p1f
0020 - e1 .
Reviewed-by: Richard Levitte <levitte@openssl.org>
Viktor Dukhovni [Thu, 14 Apr 2016 03:41:55 +0000 (23:41 -0400)]
Don't use deprecated CONF_modules_free() in tests
Reviewed-by: Richard Levitte <levitte@openssl.org>
Matt Caswell [Wed, 13 Apr 2016 20:26:24 +0000 (21:26 +0100)]
make update
Reviewed-by: Richard Levitte <levitte@openssl.org>