oweals/openssl.git
8 years agospeed.c: use size_t instead of int to match function signatures
Cristian Stoica [Tue, 2 Aug 2016 09:20:45 +0000 (12:20 +0300)]
speed.c: use size_t instead of int to match function signatures

Signed-off-by: Cristian Stoica <cristian.stoica@nxp.com>
Reviewed-by: Emilia Käsper <emilia@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1378)

8 years agoNPN and ALPN: test resumption
Emilia Kasper [Mon, 8 Aug 2016 12:42:08 +0000 (14:42 +0200)]
NPN and ALPN: test resumption

In NPN and ALPN, the protocol is renegotiated upon resumption. Test that
resumption picks up changes to the extension.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoFix ALPN tests when NPN is off
Emilia Kasper [Fri, 5 Aug 2016 15:17:00 +0000 (17:17 +0200)]
Fix ALPN tests when NPN is off

OPENSSL_NO_NEXTPROTONEG only disables NPN, not ALPN

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoReorganize SSL test structures
Emilia Kasper [Thu, 21 Jul 2016 14:29:48 +0000 (16:29 +0200)]
Reorganize SSL test structures

Move custom server and client options from the test dictionary to an
"extra" section of each server/client. Rename test expectations to say
"Expected".

This is a big but straightforward change. Primarily, this allows us to
specify multiple server and client contexts without redefining the
custom options for each of them. For example, instead of
"ServerNPNProtocols", "Server2NPNProtocols", "ResumeServerNPNProtocols",
we now have, "NPNProtocols".

This simplifies writing resumption and SNI tests. The first application
will be resumption tests for NPN and ALPN.

Regrouping the options also makes it clearer which options apply to the
server, which apply to the client, which configure the test, and which
are test expectations.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoFix CIPHER_DEBUG
JimC [Sat, 6 Aug 2016 10:22:04 +0000 (06:22 -0400)]
Fix CIPHER_DEBUG

Commit 3eb2aff renamed a field of ssl_cipher_st from algorithm_ssl -> min_tls but neglected to update the fprintf reference which is included by -DCIPHER_DEBUG

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1417)

8 years agoAdd a note about a perl issue on VMS and how to work around it
Richard Levitte [Sat, 6 Aug 2016 09:30:48 +0000 (11:30 +0200)]
Add a note about a perl issue on VMS and how to work around it

I bug in perl's File::Spec->canonpath() was uncovered.  There's
nothing we can do about it (except re-implementing canonpath()),
except working around the problem (a directory rename) and reporting
the issue to the perl module developers.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoFix irregularities in GENERAL_NAME_print().
Tomas Mraz [Fri, 5 Aug 2016 07:33:30 +0000 (09:33 +0200)]
Fix irregularities in GENERAL_NAME_print().

Add colon when printing Registered ID.
Remove extra space when printing DirName.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1401)

8 years agoMkae CT_log_new_from_base64 always return 0 on failure
Rob Percival [Sat, 6 Aug 2016 01:27:12 +0000 (21:27 -0400)]
Mkae CT_log_new_from_base64 always return 0 on failure

In one failure case, it used to return -1. That failure case
(CTLOG_new() returning NULL) was not usefully distinct from all of the
other failure cases.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1407)

8 years agofixing too optimistic typo-fix
klemens [Fri, 5 Aug 2016 19:36:29 +0000 (21:36 +0200)]
fixing too optimistic typo-fix

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1413)

8 years agospelling fixes, just comments and readme.
klemens [Fri, 5 Aug 2016 17:56:58 +0000 (19:56 +0200)]
spelling fixes, just comments and readme.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1413)

8 years agoRemoves CTLOG_new_null from the CT public API
Rob Percival [Thu, 4 Aug 2016 17:48:48 +0000 (18:48 +0100)]
Removes CTLOG_new_null from the CT public API

This is an entirely useless function, given that CTLOG is publicly
immutable.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1406)

8 years agoopenssl-format-source: A few more (DECLARE|IMPLEMENT) variants to care for
Richard Levitte [Fri, 5 Aug 2016 19:35:32 +0000 (21:35 +0200)]
openssl-format-source: A few more (DECLARE|IMPLEMENT) variants to care for

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoThe capi engine uses stdio, so don't build it when configuring 'no-stdio'
Richard Levitte [Fri, 5 Aug 2016 10:54:57 +0000 (12:54 +0200)]
The capi engine uses stdio, so don't build it when configuring 'no-stdio'

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoRemove OPENSSL_NO_STDIO guards around certain SSL cert/key functions
Richard Levitte [Thu, 4 Aug 2016 23:54:27 +0000 (01:54 +0200)]
Remove OPENSSL_NO_STDIO guards around certain SSL cert/key functions

These functions are:

    SSL_use_certificate_file
    SSL_use_RSAPrivateKey_file
    SSL_use_PrivateKey_file
    SSL_CTX_use_certificate_file
    SSL_CTX_use_RSAPrivateKey_file
    SSL_CTX_use_PrivateKey_file
    SSL_use_certificate_chain_file

Internally, they use BIO_s_file(), which is defined and implemented at
all times, even when OpenSSL is configured no-stdio.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agomake update
Richard Levitte [Fri, 5 Aug 2016 08:58:16 +0000 (10:58 +0200)]
make update

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoutil/mkdef.pl: mark certain PEM function declarations with STDIO
Richard Levitte [Fri, 5 Aug 2016 08:57:47 +0000 (10:57 +0200)]
util/mkdef.pl: mark certain PEM function declarations with STDIO

The macros that produce PEM_write_FOO() andd PEM_read_FOO() only do so
unless 'no-stdio' has been configured.  mkdef.pl should mimic that by
marking those functions with the "STDIO" algo.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoTravis: add a build with no-stdio
Richard Levitte [Thu, 4 Aug 2016 22:48:44 +0000 (00:48 +0200)]
Travis: add a build with no-stdio

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoMove the building of test/buildtest_*. to be done unconditionally
Richard Levitte [Thu, 4 Aug 2016 22:32:36 +0000 (00:32 +0200)]
Move the building of test/buildtest_*. to be done unconditionally

These were guarded by $disabled{tests}.  However, 'tests' is disabled
if we configure 'no-stdio', which means that we don't detect the lack
of OPENSSL_NO_STDIO guards in our public header files.  So we move the
generation and build of test/buildtest_*.c to be unconditional.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoSanity check input length in OPENSSL_uni2asc().
Dr. Stephen Henson [Fri, 5 Aug 2016 16:59:32 +0000 (17:59 +0100)]
Sanity check input length in OPENSSL_uni2asc().

Thanks to Hanno Böck for reporting this bug.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoAdd --gcov-options '\-lp' to coverage
Emilia Kasper [Fri, 5 Aug 2016 09:33:48 +0000 (11:33 +0200)]
Add --gcov-options '\-lp' to coverage

Should result in more accurate header file coverage, see
https://github.com/eddyxu/cpp-coveralls/issues/54

Reviewed-by: Kurt Roeckx <kurt@openssl.org>
8 years agoAdd a coverage target
Emilia Kasper [Wed, 3 Aug 2016 13:29:21 +0000 (15:29 +0200)]
Add a coverage target

Run tests with coverage and report to coveralls.io

For simplicity, this currently only adds a single target in a
configuration that attempts to maximize coverage. The true CI coverage
from all the various builds may be a little larger.

The coverage run has the following configuration:
- no-asm: since we can't track asm coverage anyway, might as well measure the
  non-asm code coverage.
- Enable various disabled-by-default options:
  - rc5
  - md2
  - ec_nistp_64_gcc_128
  - ssl3
  - ssl3-method
  - weak-ssl-ciphers

Finally, observe that no-pic implies no-shared, and therefore running
both builds in the matrix is redundant.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
8 years agoFree buffer in a2i_ASN1_INTEGER() on error path.
Dr. Stephen Henson [Fri, 5 Aug 2016 15:06:36 +0000 (16:06 +0100)]
Free buffer in a2i_ASN1_INTEGER() on error path.

Thank to Shi Lei for reporting this bug.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoMake update, etc.
Rich Salz [Fri, 5 Aug 2016 15:16:07 +0000 (11:16 -0400)]
Make update, etc.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoindent: add a couple of types we use in apps
Richard Levitte [Wed, 3 Aug 2016 20:03:50 +0000 (22:03 +0200)]
indent: add a couple of types we use in apps

Reviewed-by: Emilia Käsper <emilia@openssl.org>
8 years agoopenssl-format-source: no dash marker on *INDENT-(ON|OFF)* comments
Richard Levitte [Wed, 3 Aug 2016 17:49:32 +0000 (19:49 +0200)]
openssl-format-source: no dash marker on *INDENT-(ON|OFF)* comments

We mark small comments with a dash immediately following the starting /*.
However, *INDENT-(ON|OFF)* comments shouldn't be treated that way, or
indent will ignore them if we do.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoVMS: Fix building of bad_dtls_test
Richard Levitte [Fri, 5 Aug 2016 08:14:56 +0000 (10:14 +0200)]
VMS: Fix building of bad_dtls_test

Reviewed-by: Tim Hudson <tjh@openssl.org>
8 years agoAdded appropriate OPENSSL_NO_STDIO to PKCS12 header
Dániel Bakai [Thu, 4 Aug 2016 11:00:48 +0000 (13:00 +0200)]
Added appropriate OPENSSL_NO_STDIO to PKCS12 header

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoAdd basic test for Cisco DTLS1_BAD_VER and record replay handling
David Woodhouse [Mon, 25 Jul 2016 13:31:43 +0000 (14:31 +0100)]
Add basic test for Cisco DTLS1_BAD_VER and record replay handling

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix ubsan 'left shift of negative value -1' error in satsub64be()
David Woodhouse [Tue, 2 Aug 2016 21:54:46 +0000 (22:54 +0100)]
Fix ubsan 'left shift of negative value -1' error in satsub64be()

Baroque, almost uncommented code triggers behaviour which is undefined
by the C standard. You might quite reasonably not care that the code was
broken on ones-complement machines, but if we support a ubsan build then
we need to at least pretend to care.

It looks like the special-case code for 64-bit big-endian is going to
behave differently (and wrongly) on wrap-around, because it treats the
values as signed. That seems wrong, and allows replay and other attacks.
Surely you need to renegotiate and start a new epoch rather than
wrapping around to sequence number zero again?

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoMake DTLS1_BAD_VER work with DTLS_client_method()
David Woodhouse [Mon, 25 Jul 2016 17:03:27 +0000 (18:03 +0100)]
Make DTLS1_BAD_VER work with DTLS_client_method()

DTLSv1_client_method() is deprecated, but it was the only way to obtain
DTLS1_BAD_VER support. The SSL_OP_CISCO_ANYCONNECT hack doesn't work with
DTLS_client_method(), and it's relatively non-trivial to make it work without
expanding the hack into lots of places.

So deprecate SSL_OP_CISCO_ANYCONNECT with DTLSv1_client_method(), and make
it work with SSL_CTX_set_{min,max}_proto_version(DTLS1_BAD_VER) instead.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix cipher support for DTLS1_BAD_VER
David Woodhouse [Fri, 8 Jul 2016 19:59:50 +0000 (20:59 +0100)]
Fix cipher support for DTLS1_BAD_VER

Commit 3eb2aff40 ("Add support for minimum and maximum protocol version
supported by a cipher") disabled all ciphers for DTLS1_BAD_VER.

That wasn't helpful. Give them back.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix DTLS_VERSION_xx() comparison macros for DTLS1_BAD_VER
David Woodhouse [Fri, 8 Jul 2016 19:56:38 +0000 (20:56 +0100)]
Fix DTLS_VERSION_xx() comparison macros for DTLS1_BAD_VER

DTLS version numbers are strange and backwards, except DTLS1_BAD_VER so
we have to make a special case for it.

This does leave us with a set of macros which will evaluate their arguments
more than once, but it's not a public-facing API and it's not like this is
the kind of thing where people will be using DTLS_VERSION_LE(x++, y) anyway.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix ossl_statem_client_max_message_size() for DTLS1_BAD_VER
David Woodhouse [Fri, 8 Jul 2016 19:47:42 +0000 (20:47 +0100)]
Fix ossl_statem_client_max_message_size() for DTLS1_BAD_VER

The Change Cipher Spec message in this ancient pre-standard version of DTLS
that Cisco are unfortunately still using in their products, is 3 bytes.

Allow it.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix SSL_export_keying_material() for DTLS1_BAD_VER
David Woodhouse [Fri, 8 Jul 2016 19:46:07 +0000 (20:46 +0100)]
Fix SSL_export_keying_material() for DTLS1_BAD_VER

Commit d8e8590e ("Fix missing return value checks in SCTP") made the
DTLS handshake fail, even for non-SCTP connections, if
SSL_export_keying_material() fails. Which it does, for DTLS1_BAD_VER.

Apply the trivial fix to make it succeed, since there's no real reason
why it shouldn't even though we never need it.

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoWhen tr gets bracketed arguments, they need to be quoted
Richard Levitte [Thu, 4 Aug 2016 16:31:51 +0000 (18:31 +0200)]
When tr gets bracketed arguments, they need to be quoted

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoRemove some unused options from 10-main.conf
Benjamin Kaduk [Wed, 3 Aug 2016 20:07:55 +0000 (15:07 -0500)]
Remove some unused options from 10-main.conf

The options RC4_CHUNK_LL, DES_PTR, and BF_PTR were removed by Rich
in commit 3e9e810f2e047effb1056211794d2d12ec2b04e7 but were still
sticking around in a coupule configuration entries.

Since they're unused, remove them.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1390)

8 years agoFix output text to avoid gratuitious git diff
Rich Salz [Thu, 4 Aug 2016 18:29:53 +0000 (14:29 -0400)]
Fix output text to avoid gratuitious git diff

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoRemove get_hash completely
Rich Salz [Wed, 3 Aug 2016 19:24:57 +0000 (15:24 -0400)]
Remove get_hash completely

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1389)

8 years agoRemove "lockit" from internal error-hash function
Rich Salz [Wed, 3 Aug 2016 19:15:20 +0000 (15:15 -0400)]
Remove "lockit" from internal error-hash function

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1389)

8 years agoLimit status message sisze in ts_get_status_check
Dr. Stephen Henson [Tue, 2 Aug 2016 20:38:37 +0000 (21:38 +0100)]
Limit status message sisze in ts_get_status_check

Thanks to Shi Lei for reporting this issue.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoPack globals variables used to control apps/verify_callback()
FdaSilvaYY [Mon, 1 Aug 2016 19:30:57 +0000 (21:30 +0200)]
Pack globals variables used to control apps/verify_callback()

  into a structure , to avoid any accident .

Plus some few cleanups

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoIgnore windows generated manifests
JimC [Wed, 3 Aug 2016 17:53:21 +0000 (13:53 -0400)]
Ignore windows generated manifests

- Commit a95ce7f builds *.manifest files on windows -- added them to
  .gitignore.

- ignore pod -> html temp file

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConstify some ASN1_OBJECT *obj input parameters
FdaSilvaYY [Sun, 31 Jul 2016 17:38:09 +0000 (19:38 +0200)]
Constify some ASN1_OBJECT *obj input parameters

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConstify inputs of two X509_LOOKUP_METHOD methods
FdaSilvaYY [Sun, 31 Jul 2016 17:19:49 +0000 (19:19 +0200)]
Constify inputs of two X509_LOOKUP_METHOD methods

... get_by_fingerprint() and get_by_alias()

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConstify input buffer
FdaSilvaYY [Sun, 31 Jul 2016 17:14:09 +0000 (19:14 +0200)]
Constify input buffer

 of X509_NAME_add_entry_by_OBJ, X509_NAME_add_entry_by_NID, X509_NAME_ENTRY_create_by_NID

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConstify two internal methods
FdaSilvaYY [Fri, 29 Jul 2016 10:51:35 +0000 (12:51 +0200)]
Constify two internal methods
- append_ia5
- old_entry_print

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConstify ASN1_INTEGER_get, ASN1_ENUMERATED_get
FdaSilvaYY [Mon, 4 Jul 2016 18:40:27 +0000 (20:40 +0200)]
Constify ASN1_INTEGER_get, ASN1_ENUMERATED_get

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoVMS: have the IVP verify that a well known engine loads properly
Richard Levitte [Tue, 19 Jul 2016 07:17:09 +0000 (09:17 +0200)]
VMS: have the IVP verify that a well known engine loads properly

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoHave 'openssl engine' exit with non-zero when some engine fails to load
Richard Levitte [Tue, 19 Jul 2016 06:57:01 +0000 (08:57 +0200)]
Have 'openssl engine' exit with non-zero when some engine fails to load

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoVSI submission: make the VMS version of RAND_poll() faster and more secure
Richard Levitte [Wed, 3 Aug 2016 19:45:06 +0000 (21:45 +0200)]
VSI submission: make the VMS version of RAND_poll() faster and more secure

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoVSI submisson: make better use of item lists in o_time.c
Richard Levitte [Wed, 3 Aug 2016 19:33:31 +0000 (21:33 +0200)]
VSI submisson: make better use of item lists in o_time.c

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoTravis: When testing installation, build in separate dir, otherwise in checkout
Richard Levitte [Thu, 4 Aug 2016 09:50:39 +0000 (11:50 +0200)]
Travis: When testing installation, build in separate dir, otherwise in checkout

The rationale is that installation from a tarball is a common task
that everyone performs.  For all other builds, we do specialised
tests, and might as well build them directly in the checkout, which
also gives us fuzz corpora.

Reviewed-by: Emilia Käsper <emilia@openssl.org>
8 years agoPrepare for 1.1.0-pre7-dev
Matt Caswell [Thu, 4 Aug 2016 14:02:43 +0000 (15:02 +0100)]
Prepare for 1.1.0-pre7-dev

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoPrepare for 1.1.0-pre6 release OpenSSL_1_1_0-pre6
Matt Caswell [Thu, 4 Aug 2016 14:00:44 +0000 (15:00 +0100)]
Prepare for 1.1.0-pre6 release

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agomake update
Matt Caswell [Thu, 4 Aug 2016 14:00:43 +0000 (15:00 +0100)]
make update

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoFix date in CHANGES
Matt Caswell [Thu, 4 Aug 2016 13:55:41 +0000 (14:55 +0100)]
Fix date in CHANGES

The release scripts expect to see the date "xx XXX xxxx" in CHANGES. At
some point the year got changed from xxxx to 2016. This changes it back.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoDon't check any revocation info on proxy certificates
Richard Levitte [Wed, 3 Aug 2016 14:02:20 +0000 (16:02 +0200)]
Don't check any revocation info on proxy certificates

Because proxy certificates typically come without any CRL information,
trying to check revocation on them will fail.  Better not to try
checking such information for them at all.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoINSTALL: Make the use of [, ], { and } consistent and explain it
Richard Levitte [Wed, 3 Aug 2016 05:55:54 +0000 (07:55 +0200)]
INSTALL: Make the use of [, ], { and } consistent and explain it

The diverse notations used in INSTALL are not as self explanatory as
we might imagine, so let's attempt a consistent notation for mandatory
and optional pieces of a command line, and to explain the meaning of
each notation.

This does away with the bash notation used in one spot, as it isn't
universally understood and will only confuse the unknowing more.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoINSTALL: Add missing details on VMS installation results
Richard Levitte [Wed, 3 Aug 2016 05:55:16 +0000 (07:55 +0200)]
INSTALL: Add missing details on VMS installation results

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoVMS: make sure to provide an absolute source directory for pod2html
Richard Levitte [Wed, 3 Aug 2016 10:54:42 +0000 (12:54 +0200)]
VMS: make sure to provide an absolute source directory for pod2html

Experience shows that pod2html changes directory during its process
without properly adjusting the given source directory.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoVMS: If configured no-shared, don't provide shareable image logical names
Richard Levitte [Wed, 3 Aug 2016 10:53:49 +0000 (12:53 +0200)]
VMS: If configured no-shared, don't provide shareable image logical names

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoCheck for overlows and error return from ASN1_object_size()
Dr. Stephen Henson [Mon, 1 Aug 2016 23:45:31 +0000 (00:45 +0100)]
Check for overlows and error return from ASN1_object_size()

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoCheck for overflows in ASN1_object_size().
Dr. Stephen Henson [Mon, 1 Aug 2016 23:30:47 +0000 (00:30 +0100)]
Check for overflows in ASN1_object_size().

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years ago80-test_ssl_new.t: only skip on $no_tls if no other skip conditions defined
Richard Levitte [Tue, 2 Aug 2016 11:27:39 +0000 (13:27 +0200)]
80-test_ssl_new.t: only skip on $no_tls if no other skip conditions defined

Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoIn 80-test_ssl_new, more "plan tests" to a more useful position
Richard Levitte [Tue, 2 Aug 2016 09:19:07 +0000 (11:19 +0200)]
In 80-test_ssl_new, more "plan tests" to a more useful position

Reviewed-by: Matt Caswell <matt@openssl.org>
8 years agoFix tests for no-nextprotoneg
Matt Caswell [Tue, 2 Aug 2016 09:19:56 +0000 (10:19 +0100)]
Fix tests for no-nextprotoneg

Fix the 80-test_ssl_test_ctx and 80-test_ssl_new tests when used with the
no-nextprotoneg option

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoFix some style issues...
FdaSilvaYY [Thu, 28 Jul 2016 19:15:52 +0000 (21:15 +0200)]
Fix some style issues...

 extra spacing and 80 cols

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1366)

8 years agoDon't overwrite existing installed openssl.cnf
Richard Levitte [Mon, 1 Aug 2016 21:18:25 +0000 (23:18 +0200)]
Don't overwrite existing installed openssl.cnf

Instead, install the new one as openssl.cnf.dist (openssl.cnf-dist on
VMS), and only install it as openssl.cnf if that file doesn't already
exist.

Also, don't install with exec privileges on VMS.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoAll of ssldirs installation should be done by the install_ssldirs target
Richard Levitte [Mon, 1 Aug 2016 21:15:50 +0000 (23:15 +0200)]
All of ssldirs installation should be done by the install_ssldirs target

The Unix build file template didn't do that quite right.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoSome minor tweaks to the fuzzing docs
Matt Caswell [Mon, 1 Aug 2016 20:46:08 +0000 (21:46 +0100)]
Some minor tweaks to the fuzzing docs

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoDocument certificate and CRL time functions.
Dr. Stephen Henson [Mon, 1 Aug 2016 18:16:52 +0000 (19:16 +0100)]
Document certificate and CRL time functions.

RT#4639

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoConstify some X509_CRL, X509_REQ functions.
Dr. Stephen Henson [Mon, 1 Aug 2016 18:30:34 +0000 (19:30 +0100)]
Constify some X509_CRL, X509_REQ functions.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoConstify some X509_CRL functions.
Dr. Stephen Henson [Mon, 1 Aug 2016 18:25:16 +0000 (19:25 +0100)]
Constify some X509_CRL functions.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agomake update
Dr. Stephen Henson [Mon, 1 Aug 2016 17:37:48 +0000 (18:37 +0100)]
make update

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoAdd DSA_bits() function.
Dr. Stephen Henson [Mon, 1 Aug 2016 17:37:03 +0000 (18:37 +0100)]
Add DSA_bits() function.

RT#4637

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoFix typo of BN_zero()
Kurt Roeckx [Sun, 31 Jul 2016 12:11:12 +0000 (14:11 +0200)]
Fix typo of BN_zero()

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoForgotten make update
Richard Levitte [Mon, 1 Aug 2016 14:14:41 +0000 (16:14 +0200)]
Forgotten make update

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoConst the ex data stuff too to fix warnings
Richard J. Moore [Sun, 31 Jul 2016 10:04:48 +0000 (11:04 +0100)]
Const the ex data stuff too to fix warnings

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConst EC_KEY_dup
Richard J. Moore [Sun, 31 Jul 2016 00:08:30 +0000 (01:08 +0100)]
Const EC_KEY_dup

Reviewed-by: Rich Salz <rsalz@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoAdditional CMS content types from RFC 4073, RFC 5083, and RFC 5084.
Wim Lewis [Wed, 27 Jul 2016 00:37:29 +0000 (17:37 -0700)]
Additional CMS content types from RFC 4073, RFC 5083, and RFC 5084.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1355)

8 years agoUseless allocation
FdaSilvaYY [Thu, 28 Jul 2016 21:20:19 +0000 (23:20 +0200)]
Useless allocation

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoFix some style issues
FdaSilvaYY [Thu, 28 Jul 2016 20:51:18 +0000 (22:51 +0200)]
Fix some style issues

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoAdd missing help string
FdaSilvaYY [Sat, 23 Jul 2016 13:39:49 +0000 (15:39 +0200)]
Add missing help string

Fix an error message

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoFix some awkward tests
FdaSilvaYY [Sat, 23 Jul 2016 12:45:08 +0000 (14:45 +0200)]
Fix some awkward tests

Add some explanatory comments
Discard some useless parenthesis.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoMerge some conditional blocks of code.
FdaSilvaYY [Fri, 29 Jul 2016 11:22:42 +0000 (13:22 +0200)]
Merge some conditional blocks of code.

Fix an #if check about rsa_count...

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoSimplify default inits, add const qualifiers
FdaSilvaYY [Tue, 19 Jul 2016 21:54:21 +0000 (23:54 +0200)]
Simplify default inits, add const qualifiers
Simplify some loops to reuse k variable

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoCast to right type, simplify array args
FdaSilvaYY [Tue, 19 Jul 2016 21:57:18 +0000 (23:57 +0200)]
Cast to right type, simplify array args

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoFix sharing of two static variables
FdaSilvaYY [Tue, 12 Jul 2016 21:13:20 +0000 (23:13 +0200)]
Fix sharing of two static variables

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoECDH test is only one operation to run
FdaSilvaYY [Tue, 19 Jul 2016 22:16:45 +0000 (00:16 +0200)]
ECDH test is only one operation to run

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoFix three missing global declarations.
FdaSilvaYY [Sat, 23 Jul 2016 12:26:07 +0000 (14:26 +0200)]
Fix three missing global declarations.

Fix compilation without SIGALRM.
It don't link because of remaning alarm(0); call.

Convert engine_id variable to local one

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/1342)

8 years agoFix return values of do_passwd() in apps/passwd.c
Richard Levitte [Mon, 1 Aug 2016 11:07:48 +0000 (13:07 +0200)]
Fix return values of do_passwd() in apps/passwd.c

do_passwd() was returning 0 on success and 1 on failure.  However,
those values were interpreted the other way around.  The fix that
makes the most sense is to change what do_passwd() returns.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoFix bad result in i2b_PVK()
Matt Caswell [Mon, 1 Aug 2016 11:11:21 +0000 (12:11 +0100)]
Fix bad result in i2b_PVK()

The function i2b_PVK() was returning a bad pointer causing subsequent
crashes.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoFix param order in RSA_get0_key
Matt Caswell [Mon, 1 Aug 2016 11:10:11 +0000 (12:10 +0100)]
Fix param order in RSA_get0_key

Some calls to RSA_get0_key had the parameters in the wrong order causing a
failure.

GitHub Issue #1368

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoInclude what we use.
Ben Laurie [Mon, 1 Aug 2016 02:44:42 +0000 (03:44 +0100)]
Include what we use.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agopeer_tmp doesn't exist if no-ec no-dh.
Ben Laurie [Sun, 31 Jul 2016 14:48:24 +0000 (15:48 +0100)]
peer_tmp doesn't exist if no-ec no-dh.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agoFix various no-*s.
Ben Laurie [Sun, 31 Jul 2016 10:42:04 +0000 (11:42 +0100)]
Fix various no-*s.

Reviewed-by: Rich Salz <rsalz@openssl.org>
8 years agocrypto/ui/ui_openssl.c: UTF-y Windows code path.
Andy Polyakov [Tue, 19 Jul 2016 11:52:49 +0000 (13:52 +0200)]
crypto/ui/ui_openssl.c: UTF-y Windows code path.

Windows never composes UTF-8 strings as result of user interaction
such as input query. The only way to compose one is programmatic
conversion from WCHAR string, which in turn can be picked up with
ReadConsoleW.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoapps/openssl.c: UTF-y Windows argv.
Andy Polyakov [Sat, 16 Jul 2016 21:21:39 +0000 (23:21 +0200)]
apps/openssl.c: UTF-y Windows argv.

Windows never composes UTF-8 strings as result of user interaction
such as passing command-line argument. The only way to compose one
is programmatic conversion from WCHAR string, which in turn can be
picked up on command line.

[For reference, why not wmain, it's not an option on MinGW.]

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConfigurations/00-base-templates.conf: harmonize BASE_Windows.
Andy Polyakov [Sun, 17 Jul 2016 20:12:38 +0000 (22:12 +0200)]
Configurations/00-base-templates.conf: harmonize BASE_Windows.

Reviewed-by: Richard Levitte <levitte@openssl.org>
8 years agoConfigurations/unix-Makefile.tmpl: add LC_ALL=C to unify messages.
Andy Polyakov [Thu, 28 Jul 2016 21:05:32 +0000 (23:05 +0200)]
Configurations/unix-Makefile.tmpl: add LC_ALL=C to unify messages.

RT#4138

Reviewed-by: Rich Salz <rsalz@openssl.org>