openssl.git
11 years agossl/s3_cbc.c: uint64_t portability fix.
Andy Polyakov [Fri, 1 Feb 2013 08:55:43 +0000 (09:55 +0100)]
ssl/s3_cbc.c: uint64_t portability fix.

Break dependency on uint64_t. It's possible to declare bits as
unsigned int, because TLS packets are limited in size and 32-bit
value can't overflow.
(cherry picked from commit cab13fc8473856a43556d41d8dac5605f4ba1f91)

11 years agotypo.
Dr. Stephen Henson [Thu, 31 Jan 2013 23:04:39 +0000 (23:04 +0000)]
typo.
(cherry picked from commit 34ab3c8c711ff79c2b768f0b17e4b2a78fd1df5d)

11 years agoAdd ordinal for CRYPTO_memcmp: since this will affect multiple
Dr. Stephen Henson [Thu, 31 Jan 2013 15:19:00 +0000 (15:19 +0000)]
Add ordinal for CRYPTO_memcmp: since this will affect multiple
branches it needs to be in a "gap".
(cherry picked from commit 81ce0e14e72e8e255ad1bd9c7cfaa47a6291919c)

11 years agoTiming fix mitigation for FIPS mode.
Dr. Stephen Henson [Tue, 29 Jan 2013 14:44:36 +0000 (14:44 +0000)]
Timing fix mitigation for FIPS mode.
We have to use EVP in FIPS mode so we can only partially mitigate
timing differences.

Make an extra call to EVP_DigestSignUpdate to hash additonal blocks
to cover any timing differences caused by removal of padding.
(cherry picked from commit b908e88ec15aa0a74805e3f2236fc4f83f2789c2)

11 years agoOops. Add missing file.
Ben Laurie [Mon, 28 Jan 2013 18:24:55 +0000 (18:24 +0000)]
Oops. Add missing file.
(cherry picked from commit 014265eb02e26f35c8db58e2ccbf100b0b2f0072)

11 years agoUpdate DTLS code to match CBC decoding in TLS.
Ben Laurie [Mon, 28 Jan 2013 17:34:33 +0000 (17:34 +0000)]
Update DTLS code to match CBC decoding in TLS.

This change updates the DTLS code to match the constant-time CBC
behaviour in the TLS.
(cherry picked from commit 9f27de170d1b7bef3d46d41382dc4dafde8b3900)

11 years agoDon't crash when processing a zero-length, TLS >= 1.1 record.
Ben Laurie [Mon, 28 Jan 2013 17:33:18 +0000 (17:33 +0000)]
Don't crash when processing a zero-length, TLS >= 1.1 record.

The previous CBC patch was bugged in that there was a path through enc()
in s3_pkt.c/d1_pkt.c which didn't set orig_len. orig_len would be left
at the previous value which could suggest that the packet was a
sufficient length when it wasn't.
(cherry picked from commit 6cb19b7681f600b2f165e4adc57547b097b475fd)

11 years agoMake CBC decoding constant time.
Ben Laurie [Mon, 28 Jan 2013 17:31:49 +0000 (17:31 +0000)]
Make CBC decoding constant time.

This patch makes the decoding of SSLv3 and TLS CBC records constant
time. Without this, a timing side-channel can be used to build a padding
oracle and mount Vaudenay's attack.

This patch also disables the stitched AESNI+SHA mode pending a similar
fix to that code.

In order to be easy to backport, this change is implemented in ssl/,
rather than as a generic AEAD mode. In the future this should be changed
around so that HMAC isn't in ssl/, but crypto/ as FIPS expects.
(cherry picked from commit e130841bccfc0bb9da254dc84e23bc6a1c78a64e)

11 years agoAdd and use a constant-time memcmp.
Ben Laurie [Mon, 28 Jan 2013 17:30:38 +0000 (17:30 +0000)]
Add and use a constant-time memcmp.

This change adds CRYPTO_memcmp, which compares two vectors of bytes in
an amount of time that's independent of their contents. It also changes
several MAC compares in the code to use this over the standard memcmp,
which may leak information about the size of a matching prefix.
(cherry picked from commit 2ee798880a246d648ecddadc5b91367bee4a5d98)

11 years agoMerge branch 'OpenSSL_1_0_2-stable' of /home/steve/src/git/openssl into OpenSSL_1_0_2...
Dr. Stephen Henson [Mon, 4 Feb 2013 15:14:11 +0000 (15:14 +0000)]
Merge branch 'OpenSSL_1_0_2-stable' of /home/steve/src/git/openssl into OpenSSL_1_0_2-stable

11 years agoFix for trace code: SSL3 doesn't include a length value for
Dr. Stephen Henson [Mon, 4 Feb 2013 14:53:47 +0000 (14:53 +0000)]
Fix for trace code: SSL3 doesn't include a length value for
encrypted premaster secret value.
(cherry picked from commit ea34a58385058748c51037bfb2c3208ee639f5f1)

11 years agobn_word.c: fix overflow bug in BN_add_word.
Andy Polyakov [Fri, 9 Nov 2012 13:58:40 +0000 (13:58 +0000)]
bn_word.c: fix overflow bug in BN_add_word.
(cherry picked from commit 134c00659a1bc67ad35a1e4620e16bc4315e6e37)

11 years agox86_64 assembly pack: keep making Windows build more robust.
Andy Polyakov [Sat, 2 Feb 2013 18:52:43 +0000 (19:52 +0100)]
x86_64 assembly pack: keep making Windows build more robust.

PR: 2963 and a number of others
(cherry picked from commit 4568182a8b8cbfd15cbc175189029ac547bd1762)

11 years agoFix warning: lenmax isn't used any more.
Dr. Stephen Henson [Thu, 24 Jan 2013 14:06:54 +0000 (14:06 +0000)]
Fix warning: lenmax isn't used any more.

11 years agoDon't include comp.h in cmd_cd.c if OPENSSL_NO_COMP set
Dr. Stephen Henson [Wed, 23 Jan 2013 01:04:36 +0000 (01:04 +0000)]
Don't include comp.h in cmd_cd.c if OPENSSL_NO_COMP set

11 years agox86_64 assembly pack: make Windows build more robust [from master].
Andy Polyakov [Tue, 22 Jan 2013 21:11:31 +0000 (22:11 +0100)]
x86_64 assembly pack: make Windows build more robust [from master].

PR: 2963 and a number of others

11 years agoTABLE update.
Andy Polyakov [Tue, 22 Jan 2013 20:22:20 +0000 (21:22 +0100)]
TABLE update.

11 years agoConfigure: update linux-mips* lines [from master].
Andy Polyakov [Tue, 22 Jan 2013 20:21:44 +0000 (21:21 +0100)]
Configure: update linux-mips* lines [from master].

11 years agobn/asm/mips.pl: hardwire local call to bn_div_words.
Andy Polyakov [Tue, 22 Jan 2013 20:13:37 +0000 (21:13 +0100)]
bn/asm/mips.pl: hardwire local call to bn_div_words.

11 years agoDon't include comp.h if no-comp set.
Dr. Stephen Henson [Sun, 20 Jan 2013 01:07:58 +0000 (01:07 +0000)]
Don't include comp.h if no-comp set.

11 years agoMerge branch 'OpenSSL_1_0_2-stable' of openssl.net:openssl into OpenSSL_1_0_2-stable
Ben Laurie [Sat, 19 Jan 2013 18:36:44 +0000 (18:36 +0000)]
Merge branch 'OpenSSL_1_0_2-stable' of openssl.net:openssl into OpenSSL_1_0_2-stable

11 years agoRemove extraneous brackets (clang doesn't like them).
Ben Laurie [Sat, 19 Jan 2013 15:12:08 +0000 (15:12 +0000)]
Remove extraneous brackets (clang doesn't like them).

11 years agoAdd MacOS 64-bit debug target.
Ben Laurie [Sat, 19 Jan 2013 18:23:36 +0000 (18:23 +0000)]
Add MacOS 64-bit debug target.

11 years agoengines/ccgost: GOST fixes [from master].
Andy Polyakov [Sat, 19 Jan 2013 17:24:03 +0000 (18:24 +0100)]
engines/ccgost: GOST fixes [from master].

Submitted by: Dmitry Belyavsky, Seguei Leontiev
PR: 2821

11 years agoCan't check a size_t for < 0.
Ben Laurie [Sat, 19 Jan 2013 15:00:27 +0000 (15:00 +0000)]
Can't check a size_t for < 0.

11 years ago.gitignore adjustments
Andy Polyakov [Sat, 19 Jan 2013 12:20:21 +0000 (13:20 +0100)]
.gitignore adjustments

11 years ago-named_curve option handled automatically now.
Dr. Stephen Henson [Fri, 18 Jan 2013 15:41:06 +0000 (15:41 +0000)]
-named_curve option handled automatically now.

11 years agoAdd code to download CRLs based on CRLDP extension.
Dr. Stephen Henson [Thu, 6 Dec 2012 18:43:40 +0000 (18:43 +0000)]
Add code to download CRLs based on CRLDP extension.

Just a sample, real world applications would have to be cleverer.

11 years agocipher is not used in s_server any more.
Dr. Stephen Henson [Fri, 18 Jan 2013 15:05:28 +0000 (15:05 +0000)]
cipher is not used in s_server any more.

11 years agoNew option to add CRLs for s_client and s_server.
Dr. Stephen Henson [Sun, 2 Dec 2012 16:16:28 +0000 (16:16 +0000)]
New option to add CRLs for s_client and s_server.

11 years agoinitial support for delta CRL generations by diffing two full CRLs
Dr. Stephen Henson [Tue, 4 Dec 2012 18:35:36 +0000 (18:35 +0000)]
initial support for delta CRL generations by diffing two full CRLs

11 years agoTypo (PR2959).
Dr. Stephen Henson [Thu, 17 Jan 2013 18:20:18 +0000 (18:20 +0000)]
Typo (PR2959).

11 years agoconstify
Dr. Stephen Henson [Thu, 29 Nov 2012 01:13:38 +0000 (01:13 +0000)]
constify

11 years agoNew functions to set lookup_crls callback and to retrieve internal X509_STORE
Dr. Stephen Henson [Tue, 27 Nov 2012 23:47:48 +0000 (23:47 +0000)]
New functions to set lookup_crls callback and to retrieve internal X509_STORE
from X509_STORE_CTX.

11 years agoadd option to get a certificate or CRL from a URL
Dr. Stephen Henson [Sun, 2 Dec 2012 14:00:22 +0000 (14:00 +0000)]
add option to get a certificate or CRL from a URL

11 years agoprint out issuer and subject unique identifier fields in certificates
Dr. Stephen Henson [Tue, 12 Jun 2012 13:41:18 +0000 (13:41 +0000)]
print out issuer and subject unique identifier fields in certificates

11 years agoadd wrapper function for certificate download
Dr. Stephen Henson [Thu, 29 Nov 2012 01:15:09 +0000 (01:15 +0000)]
add wrapper function for certificate download

11 years agoGeneralise OCSP I/O functions to support dowloading of other ASN1
Dr. Stephen Henson [Thu, 29 Nov 2012 01:15:09 +0000 (01:15 +0000)]
Generalise OCSP I/O functions to support dowloading of other ASN1
structures using HTTP. Add wrapper function to handle CRL download.

11 years agoUpdate default dependency flags.
Dr. Stephen Henson [Tue, 15 Jan 2013 16:26:04 +0000 (16:26 +0000)]
Update default dependency flags.

11 years agomake update
Dr. Stephen Henson [Tue, 15 Jan 2013 16:24:07 +0000 (16:24 +0000)]
make update

11 years agoAdd support for broken protocol tests (backport from master branch)
Dr. Stephen Henson [Tue, 15 Jan 2013 16:18:13 +0000 (16:18 +0000)]
Add support for broken protocol tests (backport from master branch)

11 years agoMake whitespace consistent with master branch.
Dr. Stephen Henson [Tue, 15 Jan 2013 15:55:54 +0000 (15:55 +0000)]
Make whitespace consistent with master branch.

11 years agoFix some clang warnings.
Ben Laurie [Sun, 13 Jan 2013 21:04:39 +0000 (21:04 +0000)]
Fix some clang warnings.

11 years agoCorrect EVP_PKEY_verifyrecover to EVP_PKEY_verify_recover (RT 2955).
Ben Laurie [Sat, 12 Jan 2013 12:25:30 +0000 (12:25 +0000)]
Correct EVP_PKEY_verifyrecover to EVP_PKEY_verify_recover (RT 2955).

11 years agoIn FIPS mode use PKCS#8 format when writing private keys:
Dr. Stephen Henson [Mon, 7 Jan 2013 16:14:15 +0000 (16:14 +0000)]
In FIPS mode use PKCS#8 format when writing private keys:
traditional format uses MD5 which is prohibited in FIPS mode.

11 years agoChange default bits to 1024
Dr. Stephen Henson [Mon, 7 Jan 2013 16:13:48 +0000 (16:13 +0000)]
Change default bits to 1024

11 years agoAdd .gitignore from master branch.
Dr. Stephen Henson [Sun, 6 Jan 2013 21:34:51 +0000 (21:34 +0000)]
Add .gitignore from master branch.

11 years agoFix warning.
Ben Laurie [Sun, 6 Jan 2013 19:03:48 +0000 (19:03 +0000)]
Fix warning.

11 years agoadd support for separate verify can chain stores to s_client (backport from HEAD)
Dr. Stephen Henson [Sun, 30 Dec 2012 16:27:15 +0000 (16:27 +0000)]
add support for separate verify can chain stores to s_client (backport from HEAD)

11 years agoadd -chain options to s_client (backrpot from HEAD)
Dr. Stephen Henson [Sun, 30 Dec 2012 16:17:29 +0000 (16:17 +0000)]
add -chain options to s_client (backrpot from HEAD)

11 years agomake no-comp compile
Dr. Stephen Henson [Sun, 30 Dec 2012 16:05:03 +0000 (16:05 +0000)]
make no-comp compile

11 years agostop warning when compiling with no-comp
Dr. Stephen Henson [Sun, 30 Dec 2012 01:12:19 +0000 (01:12 +0000)]
stop warning when compiling with no-comp

11 years agoremove unused cipher functionality from s_client
Dr. Stephen Henson [Sun, 30 Dec 2012 00:03:40 +0000 (00:03 +0000)]
remove unused cipher functionality from s_client

11 years agoUpdate debug-steve* options.
Dr. Stephen Henson [Sat, 29 Dec 2012 23:59:18 +0000 (23:59 +0000)]
Update debug-steve* options.

11 years agomake JPAKE work again, fix memory leaks
Dr. Stephen Henson [Sat, 29 Dec 2012 23:58:44 +0000 (23:58 +0000)]
make JPAKE work again, fix memory leaks

11 years agoupdate ordinals
Dr. Stephen Henson [Sat, 29 Dec 2012 14:18:14 +0000 (14:18 +0000)]
update ordinals

11 years agoDelegate command line handling for many common options in s_client/s_server to
Dr. Stephen Henson [Sat, 29 Dec 2012 14:16:41 +0000 (14:16 +0000)]
Delegate command line handling for many common options in s_client/s_server to
the SSL_CONF APIs.

This is complicated a little because the SSL_CTX structure is not available
when the command line is processed: so just check syntax of commands initially
and store them, ready to apply later.

(backport from HEAD)

11 years agoadd SSL_CONF functions and documentation (backport from HEAD)
Dr. Stephen Henson [Sat, 29 Dec 2012 13:30:56 +0000 (13:30 +0000)]
add SSL_CONF functions and documentation (backport from HEAD)

11 years agoUpdate ordinals.
Dr. Stephen Henson [Wed, 26 Dec 2012 23:53:52 +0000 (23:53 +0000)]
Update ordinals.

11 years agoPortability fix: use BIO_snprintf and pick up strcasecmp alternative
Dr. Stephen Henson [Wed, 26 Dec 2012 23:51:41 +0000 (23:51 +0000)]
Portability fix: use BIO_snprintf and pick up strcasecmp alternative
definitions from e_os.h

11 years agotypo
Dr. Stephen Henson [Wed, 26 Dec 2012 22:43:43 +0000 (22:43 +0000)]
typo

11 years agoSSL/TLS record tracing code (backport from HEAD).
Dr. Stephen Henson [Wed, 26 Dec 2012 22:40:46 +0000 (22:40 +0000)]
SSL/TLS record tracing code (backport from HEAD).

11 years agoReject zero length ec point format list.
Dr. Stephen Henson [Wed, 26 Dec 2012 18:26:11 +0000 (18:26 +0000)]
Reject zero length ec point format list.

Give more meaningful error is attempt made to use incorrect curve.

(from HEAD)

11 years agohandle point format list retrieval for clients too (from HEAD)
Dr. Stephen Henson [Wed, 26 Dec 2012 18:20:07 +0000 (18:20 +0000)]
handle point format list retrieval for clients too (from HEAD)

11 years agoAdd support for printing out and retrieving EC point formats extension.
Dr. Stephen Henson [Wed, 26 Dec 2012 18:13:49 +0000 (18:13 +0000)]
Add support for printing out and retrieving EC point formats extension.
(backport from HEAD)

11 years agoreturn error if Suite B mode is selected and TLS 1.2 can't be used.
Dr. Stephen Henson [Wed, 26 Dec 2012 17:39:02 +0000 (17:39 +0000)]
return error if Suite B mode is selected and TLS 1.2 can't be used.
(backport from HEAD)

11 years agoset auto ecdh parameter selction for Suite B
Dr. Stephen Henson [Wed, 26 Dec 2012 17:35:02 +0000 (17:35 +0000)]
set auto ecdh parameter selction for Suite B
(backport from HEAD)

11 years agoadd Suite B 128 bit mode offering only combination 2
Dr. Stephen Henson [Wed, 26 Dec 2012 17:34:50 +0000 (17:34 +0000)]
add Suite B 128 bit mode offering only combination 2
(backport from HEAD)

11 years agoUse client version when deciding which cipher suites to disable.
Dr. Stephen Henson [Wed, 26 Dec 2012 17:09:39 +0000 (17:09 +0000)]
Use client version when deciding which cipher suites to disable.
(backport from HEAD)

11 years agoUse default point formats extension for server side as well as client
Dr. Stephen Henson [Wed, 26 Dec 2012 17:09:14 +0000 (17:09 +0000)]
Use default point formats extension for server side as well as client
side, if possible.

Don't advertise compressed char2 for SuiteB as it is not supported.
(backport from HEAD)

11 years agoadd Suite B verification flags
Dr. Stephen Henson [Wed, 26 Dec 2012 16:57:39 +0000 (16:57 +0000)]
add Suite B verification flags

11 years agocontify
Dr. Stephen Henson [Wed, 26 Dec 2012 16:49:59 +0000 (16:49 +0000)]
contify
(backport from HEAD)

11 years agoAdd ctrl and utility functions to retrieve raw cipher list sent by client in
Dr. Stephen Henson [Wed, 26 Dec 2012 16:25:06 +0000 (16:25 +0000)]
Add ctrl and utility functions to retrieve raw cipher list sent by client in
client hello message. Previously this could only be retrieved on an initial
connection and it was impossible to determine the cipher IDs of any uknown
ciphersuites.
(backport from HEAD)

11 years agonew ctrl to retrive value of received temporary key in server key exchange message...
Dr. Stephen Henson [Wed, 26 Dec 2012 16:23:36 +0000 (16:23 +0000)]
new ctrl to retrive value of received temporary key in server key exchange message, print out details in s_client
(backport from HEAD)

11 years agostore and print out message digest peer signed with in TLS 1.2
Dr. Stephen Henson [Wed, 26 Dec 2012 16:23:13 +0000 (16:23 +0000)]
store and print out message digest peer signed with in TLS 1.2
(backport from HEAD)

11 years agoperform sanity checks on server certificate type as soon as it is received instead...
Dr. Stephen Henson [Wed, 26 Dec 2012 16:22:19 +0000 (16:22 +0000)]
perform sanity checks on server certificate type as soon as it is received instead of waiting until server key exchange
(backport from HEAD)

11 years agogive more meaningful error if presented with wrong certificate type by server
Dr. Stephen Henson [Wed, 26 Dec 2012 16:18:15 +0000 (16:18 +0000)]
give more meaningful error if presented with wrong certificate type by server
(backport from HEAD)

11 years agoAdd three Suite B modes to TLS code, supporting RFC6460.
Dr. Stephen Henson [Wed, 26 Dec 2012 16:17:40 +0000 (16:17 +0000)]
Add three Suite B modes to TLS code, supporting RFC6460.
(backport from HEAD)

11 years agoAdd missing prototype to x509.h
Dr. Stephen Henson [Wed, 26 Dec 2012 16:11:10 +0000 (16:11 +0000)]
Add missing prototype to x509.h

11 years agoNew function X509_chain_up_ref to dup and up the reference count of
Dr. Stephen Henson [Wed, 26 Dec 2012 16:04:03 +0000 (16:04 +0000)]
New function X509_chain_up_ref to dup and up the reference count of
a STACK_OF(X509): replace equivalent functionality in several places
by the equivalent call.
(backport from HEAD)

11 years agoadd suite B chain validation flags and associated verify errors
Dr. Stephen Henson [Wed, 26 Dec 2012 16:01:31 +0000 (16:01 +0000)]
add suite B chain validation flags and associated verify errors
(backport from HEAD)

11 years agoOops, add missing v3nametest.c
Dr. Stephen Henson [Wed, 26 Dec 2012 15:59:57 +0000 (15:59 +0000)]
Oops, add missing v3nametest.c

11 years agoNew -valid option to add a certificate to the ca index.txt that is valid and not...
Dr. Stephen Henson [Wed, 26 Dec 2012 15:32:13 +0000 (15:32 +0000)]
New -valid option to add a certificate to the ca index.txt that is valid and not revoked
(backport from HEAD)

11 years agoMake tls1_check_chain return a set of flags indicating checks passed
Dr. Stephen Henson [Wed, 26 Dec 2012 15:27:44 +0000 (15:27 +0000)]
Make tls1_check_chain return a set of flags indicating checks passed
by a certificate chain. Add additional tests to handle client
certificates: checks for matching certificate type and issuer name
comparison.

Print out results of checks for each candidate chain tested in
s_server/s_client.
(backport from HEAD)

11 years agoAbort handshake if signature algorithm used not supported by peer.
Dr. Stephen Henson [Wed, 26 Dec 2012 15:27:24 +0000 (15:27 +0000)]
Abort handshake if signature algorithm used not supported by peer.
(backport from HEAD)

11 years agocheck EC tmp key matches preferences
Dr. Stephen Henson [Wed, 26 Dec 2012 15:27:04 +0000 (15:27 +0000)]
check EC tmp key matches preferences
(backport from HEAD)

11 years agotypo
Dr. Stephen Henson [Wed, 26 Dec 2012 15:23:16 +0000 (15:23 +0000)]
typo

11 years agoAdd support for certificate stores in CERT structure. This makes it
Dr. Stephen Henson [Wed, 26 Dec 2012 15:21:53 +0000 (15:21 +0000)]
Add support for certificate stores in CERT structure. This makes it
possible to have different stores per SSL structure or one store in
the parent SSL_CTX. Include distint stores for certificate chain
verification and chain building. New ctrl SSL_CTRL_BUILD_CERT_CHAIN
to build and store a certificate chain in CERT structure: returing
an error if the chain cannot be built: this will allow applications
to test if a chain is correctly configured.

Note: if the CERT based stores are not set then the parent SSL_CTX
store is used to retain compatibility with existing behaviour.
(backport from HEAD)

11 years agoadd ssl_locl.h to err header files, rebuild ssl error strings
Dr. Stephen Henson [Wed, 26 Dec 2012 15:09:16 +0000 (15:09 +0000)]
add ssl_locl.h to err header files, rebuild ssl error strings
(backport from HEAD)

11 years agoset ciphers to NULL before calling cert_cb
Dr. Stephen Henson [Wed, 26 Dec 2012 14:56:40 +0000 (14:56 +0000)]
set ciphers to NULL before calling cert_cb
(backport from HEAD)

11 years agostop warning
Dr. Stephen Henson [Wed, 26 Dec 2012 14:56:27 +0000 (14:56 +0000)]
stop warning
(backport from HEAD)

11 years agoNew function ssl_set_client_disabled to set masks for any ciphersuites
Dr. Stephen Henson [Wed, 26 Dec 2012 14:55:46 +0000 (14:55 +0000)]
New function ssl_set_client_disabled to set masks for any ciphersuites
that are disabled for this session (as opposed to always disabled by
configuration).
(backport from HEAD)

11 years agoAdd new ctrl to retrieve client certificate types, print out
Dr. Stephen Henson [Wed, 26 Dec 2012 14:51:37 +0000 (14:51 +0000)]
Add new ctrl to retrieve client certificate types, print out
details in s_client.

Also add ctrl to set client certificate types. If not used sensible values
will be included based on supported signature algorithms: for example if
we don't include any DSA signing algorithms the DSA certificate type is
omitted.

Fix restriction in old code where certificate types would be truncated
if it exceeded TLS_CT_NUMBER.
(backport from HEAD)

11 years agocert_flags is unsigned
Dr. Stephen Henson [Wed, 26 Dec 2012 14:48:05 +0000 (14:48 +0000)]
cert_flags is unsigned
(backport from HEAD)

11 years agoadd support for client certificate callbak, fix memory leak
Dr. Stephen Henson [Wed, 26 Dec 2012 14:47:31 +0000 (14:47 +0000)]
add support for client certificate callbak, fix memory leak
(backport from HEAD)

11 years agonew function SSL_is_server to which returns 1 is the corresponding SSL context is...
Dr. Stephen Henson [Wed, 26 Dec 2012 14:45:46 +0000 (14:45 +0000)]
new function SSL_is_server to which returns 1 is the corresponding SSL context is for a server
(backport from HEAD)

11 years agono need to check s->server as default_nid is never used for TLS 1.2 client authentication
Dr. Stephen Henson [Wed, 26 Dec 2012 14:45:27 +0000 (14:45 +0000)]
no need to check s->server as default_nid is never used for TLS 1.2 client authentication
(backport from HEAD)

11 years agoSeparate client and server permitted signature algorithm support: by default
Dr. Stephen Henson [Wed, 26 Dec 2012 14:44:56 +0000 (14:44 +0000)]
Separate client and server permitted signature algorithm support: by default
the permitted signature algorithms for server and client authentication
are the same but it is now possible to set different algorithms for client
authentication only.
(backport from HEAD)

11 years agoAdd certificate callback. If set this is called whenever a certificate
Dr. Stephen Henson [Wed, 26 Dec 2012 14:43:51 +0000 (14:43 +0000)]
Add certificate callback. If set this is called whenever a certificate
is required by client or server. An application can decide which
certificate chain to present based on arbitrary criteria: for example
supported signature algorithms. Add very simple example to s_server.
This fixes many of the problems and restrictions of the existing client
certificate callback: for example you can now clear existing certificates
and specify the whole chain.
(backport from HEAD)

11 years agoNew functions to retrieve certificate signatures and signature OID NID.
Dr. Stephen Henson [Wed, 26 Dec 2012 14:31:05 +0000 (14:31 +0000)]
New functions to retrieve certificate signatures and signature OID NID.
(backport from HEAD)