Lutz Jänicke
ab073bad4f
When the underlying BIO_write() fails to send a datagram, we leave the
...
offending record queued as 'pending'. The DTLS code doesn't expect this,
and we end up hitting an OPENSSL_assert() in do_dtls1_write().
The simple fix is just _not_ to leave it queued. In DTLS, dropping
packets is perfectly acceptable -- and even preferable. If we wanted a
service with retries and guaranteed delivery, we'd be using TCP.
PR: #1703
Submitted by: David Woodhouse <dwmw2@infradead.org>
2008-10-10 10:41:32 +00:00
Bodo Möller
d875413a0b
Make sure that SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG can't
...
enable disabled ciphersuites.
2008-09-22 21:22:51 +00:00
Dr. Stephen Henson
e852835da6
Make update: delete duplicate error code.
2008-09-17 17:11:09 +00:00
Dr. Stephen Henson
52702f6f92
Updates to build system from FIPS branch. Make fipscanisterbuild work and
...
build FIPS test programs.
2008-09-17 15:56:42 +00:00
Bodo Möller
446881468c
update comment
2008-09-14 19:50:53 +00:00
Bodo Möller
c198c26226
oops
2008-09-14 18:16:09 +00:00
Andy Polyakov
54d6ddba69
dtls1_write_bytes consumers expect amount of bytes written per call, not
...
overall [from HEAD].
PR: 1604
2008-09-14 17:57:03 +00:00
Dr. Stephen Henson
1af12ff1d1
Fix error code discrepancy.
...
Make update.
2008-09-14 16:43:37 +00:00
Bodo Möller
200d00c854
Fix SSL state transitions.
...
Submitted by: Nagendra Modadugu
2008-09-14 14:02:01 +00:00
Bodo Möller
36a4a67b2b
Some precautions to avoid potential security-relevant problems.
2008-09-14 13:42:40 +00:00
Andy Polyakov
3413424f01
DTLS didn't handle alerts correctly [from HEAD].
...
PR: 1632
2008-09-13 18:25:36 +00:00
Dr. Stephen Henson
8f59c61d1d
If tickets disabled behave as if no ticket received to support
...
stateful resume.
2008-09-03 22:13:04 +00:00
Bodo Möller
f9f6f0e9f0
sanity check
...
PR: 1679
2008-08-13 19:44:44 +00:00
Dr. Stephen Henson
14748adb09
Make ssl code consistent with FIPS branch. The new code has no effect
...
at present because it asserts either noop flags or is inside
OPENSSL_FIPS #ifdef's.
2008-06-16 16:56:43 +00:00
Dr. Stephen Henson
0278e15fa3
If auto load ENGINE lookup fails retry adding builtin ENGINEs.
2008-06-05 15:13:03 +00:00
Dr. Stephen Henson
56ef1cbc40
include engine.h if needed.
2008-06-05 11:23:35 +00:00
Dr. Stephen Henson
591371566e
Update from HEAD.
2008-06-04 22:39:29 +00:00
Dr. Stephen Henson
4aefb1dd98
Backport more ENGINE SSL client auth code to 0.9.8.
2008-06-04 18:35:27 +00:00
Dr. Stephen Henson
aa03989791
Backport ssl client auth ENGINE support to 0.9.8.
2008-06-04 18:01:40 +00:00
Bodo Möller
cec9bce126
fix whitespace
2008-05-28 22:22:50 +00:00
Mark J. Cox
2c0fa03dc6
Fix flaw if 'Server Key exchange message' is omitted from a TLS
...
handshake which could lead to a cilent crash as found using the
Codenomicon TLS test suite (CVE-2008-1672)
Reviewed by: openssl-security@openssl.org
Obtained from: mark@awe.com
2008-05-28 07:29:27 +00:00
Mark J. Cox
d3b3a6d389
Fix double-free in TLS server name extensions which could lead to a remote
...
crash found by Codenomicon TLS test suite (CVE-2008-0891)
Reviewed by: openssl-security@openssl.org
Obtained from: jorton@redhat.com
2008-05-28 07:26:33 +00:00
Lutz Jänicke
b0118409a9
Reword comment to be much shorter to stop other people from complaining
...
about "overcommenting"
2008-05-26 06:21:10 +00:00
Lutz Jänicke
5f23288692
Clear error queue when starting SSL_CTX_use_certificate_chain_file
...
PR: 1417, 1513
Submitted by: Erik de Castro Lopo <mle+openssl@mega-nerd.com>
2008-05-23 10:37:22 +00:00
Dr. Stephen Henson
db533c96e3
TLS ticket key setting callback: this allows and application to set
...
its own TLS ticket keys.
2008-04-30 16:11:33 +00:00
Dr. Stephen Henson
8831eb7624
Do not permit stateless session resumption is session IDs mismatch.
2008-04-29 17:22:01 +00:00
Dr. Stephen Henson
3c8f315021
Support ticket renewal in state machine (not used at present).
2008-04-29 16:41:53 +00:00
Dr. Stephen Henson
0f2e636602
Status strings for ticket states.
2008-04-29 16:38:26 +00:00
Dr. Stephen Henson
d3eef3e5af
Fix from HEAD.
2008-04-25 16:27:25 +00:00
Dr. Stephen Henson
3edad44d6e
Avoid "initializer not constant" errors when compiling in pedantic mode.
2008-04-02 11:15:05 +00:00
Ben Laurie
9c04747623
Make depend.
2007-11-15 13:32:53 +00:00
Dr. Stephen Henson
236860735e
Allow new session ticket when resuming.
2007-11-03 13:07:39 +00:00
Dr. Stephen Henson
5f95651316
Ensure the ticket expected flag is reset when a stateless resumption is
...
successful.
2007-10-18 11:39:11 +00:00
Andy Polyakov
ccac657556
New unused field crippled ssl_ctx_st in 0.9.8"f".
2007-10-17 21:22:58 +00:00
Andy Polyakov
a9c23ea079
Don't let DTLS ChangeCipherSpec increment handshake sequence number. From
...
HEAD with a twist: server interoperates with non-compliant client.
PR: 1587
2007-10-17 21:17:49 +00:00
Dr. Stephen Henson
33ffe2a7f7
Don't try to lookup zero length session.
2007-10-17 17:30:15 +00:00
Dr. Stephen Henson
7c717aafc6
Allow TLS tickets and session ID to both be present if lifetime hint is -1.
...
This never happens in normal SSL sessions but can be useful if the session
is being used as a "blob" to contain other data.
2007-10-17 11:27:25 +00:00
Andy Polyakov
ffe181c366
Make ssl compile.
2007-10-14 14:07:46 +00:00
Dr. Stephen Henson
43490dfb89
Avoid shadow and signed/unsigned warnings.
2007-10-12 00:29:06 +00:00
Dr. Stephen Henson
a523276786
Backport certificate status request TLS extension support to 0.9.8.
2007-10-12 00:00:36 +00:00
Ben Laurie
bb99ce5f80
make update, and more DTLS stuff.
2007-10-11 14:36:59 +00:00
Andy Polyakov
49f42ec0f6
Respect cookie length set by app_gen_cookie_cb [from HEAD].
...
Submitted by: Alex Lam
2007-10-09 19:31:53 +00:00
Andy Polyakov
91d509f0d9
Make DTLS1 record layer MAC calculation RFC compliant. From HEAD with a
...
twist: server interoperates with non-compliant pre-0.9.8f client.
2007-10-09 19:22:01 +00:00
Andy Polyakov
d5e858c55f
Prohibit RC4 in DTLS [from HEAD].
2007-10-05 21:05:27 +00:00
Andy Polyakov
d4736ae701
Set client_version earlier in DTLS (this is 0.9.8 specific).
2007-10-03 10:18:06 +00:00
Andy Polyakov
3e1158522a
Oops! This was erroneously left out commit #16633 .
2007-10-01 06:28:48 +00:00
Andy Polyakov
57191f86d9
Explicit IV update [from HEAD].
2007-09-30 22:03:07 +00:00
Andy Polyakov
0a89c575de
Make ChangeCipherSpec compliant with DTLS RFC4347. From HEAD with a twist:
...
server interoperates with non-compliant pre-0.9.8f.
2007-09-30 21:20:59 +00:00
Andy Polyakov
4c860910df
DTLS RFC4347 says HelloVerifyRequest resets Finished MAC. From HEAD with a
...
twist: server allows for non-compliant Finished calculations in order to
enable interop with pre-0.9.8f.
2007-09-30 19:36:32 +00:00
Andy Polyakov
0fc3d51b7d
DTLS RFC4347 requires client to use rame random field in reply to
...
HelloVerifyRequest [from HEAD].
2007-09-30 19:15:46 +00:00
Andy Polyakov
c4b0d7879e
Switch for RFC-compliant version encoding in DTLS. From HEAD with a twist:
...
server accepts even non-compliant encoding in order to enable interop with
pre-0.9.8f clients.
2007-09-30 18:55:59 +00:00
Dr. Stephen Henson
aab1ec3f36
Update from HEAD.
2007-09-28 16:29:24 +00:00
Dr. Stephen Henson
07d9808496
Fix from HEAD.
2007-09-23 15:55:54 +00:00
Bodo Möller
4ab0088bfe
More changes from HEAD:
...
- no need to disable SSL 2.0 for SSL_CTRL_SET_TLSEXT_HOSTNAME
now that ssl23_client_hello takes care of that
- fix buffer overrun checks in ssl_add_serverhello_tlsext()
2007-09-21 14:05:08 +00:00
Dr. Stephen Henson
3bd1690bfb
Fixes from HEAD.
2007-09-21 13:40:51 +00:00
Ben Laurie
4f2b7d48b1
make depend
2007-09-19 12:17:11 +00:00
Ben Laurie
458c3900e1
Lingering "security" fix.
2007-09-19 12:16:21 +00:00
Dr. Stephen Henson
25b0e072dd
PR: 1582
2007-09-17 17:30:01 +00:00
Dr. Stephen Henson
927a28ba3b
gcc 4.2 fixes to avoid use or function pointer casts in OpenSSL.
...
Fix various "computed value not used" warnings too.
2007-09-06 12:43:54 +00:00
Dr. Stephen Henson
a938c4284e
Update from HEAD.
2007-08-31 00:28:51 +00:00
Dr. Stephen Henson
c2079de880
Update from HEAD.
2007-08-28 01:12:44 +00:00
Dr. Stephen Henson
afdbadc704
Update from HEAD.
2007-08-20 12:44:22 +00:00
Dr. Stephen Henson
865a90eb4f
Backport of TLS extension code to OpenSSL 0.9.8.
...
Include server name and RFC4507bis support.
This is not compiled in by default and must be explicitly enabled with
the Configure option enable-tlsext
2007-08-12 18:59:03 +00:00
Dr. Stephen Henson
761f3b403b
Fix more unused value warnings.
2007-07-04 13:09:27 +00:00
Bodo Möller
2c12e7f6f5
Ensure that AES remains the preferred cipher at any given key length.
...
(This does not really require a special case for Camellia.)
2007-04-25 07:58:32 +00:00
Bodo Möller
c3cc4662af
Add SEED encryption algorithm.
...
PR: 1503
Submitted by: KISA
Reviewed by: Bodo Moeller
2007-04-23 23:50:26 +00:00
Bodo Möller
6fd3f3260d
stricter session ID context matching
2007-03-21 14:33:01 +00:00
Bodo Möller
d9e262443c
oops -- this should have been in 0.9.8e
2007-03-21 14:18:27 +00:00
Dr. Stephen Henson
295de18c8a
Fix kerberos ciphersuite bugs introduced with PR:1336.
2007-03-09 14:06:34 +00:00
Ben Laurie
3370b694b9
Make local function static.
2007-03-08 15:52:04 +00:00
Bodo Möller
b2710ee19a
remove inconsistency between builds with and without Camellia enabled
2007-02-19 17:55:07 +00:00
Bodo Möller
bbfcc4724d
fix incorrect strength bit values for certain Kerberos ciphersuites
...
Submitted by: Victor Duchovni
2007-02-19 14:47:21 +00:00
Bodo Möller
5f4cc234fb
Some fixes for ciphersuite string processing:
...
- add a workaround provided by Victor Duchovni so that 128- and
256-bit variants of otherwise identical ciphersuites are treated
correctly;
- also, correctly skip invalid parts of ciphersuite description strings.
Submitted by: Victor Duchovni, Bodo Moeller
2007-02-17 06:52:42 +00:00
Nils Larsch
d31a13953c
ensure that the EVP_CIPHER_CTX object is initialized
...
PR: 1490
2007-02-16 20:40:07 +00:00
Nils Larsch
6555dfa486
use user-supplied malloc functions for persistent kssl objects
...
PR: 1467
Submitted by: Andrei Pelinescu-Onciul <andrei@iptel.org>
2007-02-10 10:40:24 +00:00
Nils Larsch
f418265865
ensure that a ec key is used
...
PR: 1476
2007-02-07 20:36:40 +00:00
Dr. Stephen Henson
4479ce9c1c
Update from HEAD.
2007-01-21 16:07:25 +00:00
Dr. Stephen Henson
34a8c7ec87
Win32 fixes.
...
Use OPENSSL_NO_RFC3779 instead of OPENSSL_RFC3779: this makes the Win32 scripts
work and is consistent with other options.
Fix Win32 scripts and Configure to process OPENSSL_NO_RFC3779 properly.
Update ordinals.
Change some prototypes for LSB because VC++ 6 doesn't like the */ sequence and thinks it is an invalid end of comment.
2006-11-30 13:04:43 +00:00
Nils Larsch
d4a6240005
replace macros with functions
...
Submitted by: Tracy Camp <tracyx.e.camp@intel.com>
2006-11-29 20:47:15 +00:00
Bodo Möller
5c6f76da0a
fix support for receiving fragmented handshake messages
2006-11-29 14:45:14 +00:00
Dr. Stephen Henson
115fc340cb
Rebuild error file C source files.
2006-11-21 20:14:46 +00:00
Richard Levitte
7e2bf83100
Fixes for the following claims:
...
1) Certificate Message with no certs
OpenSSL implementation sends the Certificate message during SSL
handshake, however as per the specification, these have been omitted.
-- RFC 2712 --
CertificateRequest, and the ServerKeyExchange shown in Figure 1
will be omitted since authentication and the establishment of a
master secret will be done using the client's Kerberos credentials
for the TLS server. The client's certificate will be omitted for
the same reason.
-- RFC 2712 --
3) Pre-master secret Protocol version
The pre-master secret generated by OpenSSL does not have the correct
client version.
RFC 2712 says, if the Kerberos option is selected, the pre-master
secret structure is the same as that used in the RSA case.
TLS specification defines pre-master secret as:
struct {
ProtocolVersion client_version;
opaque random[46];
} PreMasterSecret;
where client_version is the latest protocol version supported by the
client
The pre-master secret generated by OpenSSL does not have the correct
client version. The implementation does not update the first 2 bytes
of random secret for Kerberos Cipher suites. At the server-end, the
client version from the pre-master secret is not validated.
PR: 1336
2006-09-28 12:23:15 +00:00
Mark J. Cox
951dfbb13a
Introduce limits to prevent malicious keys being able to
...
cause a denial of service. (CVE-2006-2940)
[Steve Henson, Bodo Moeller]
Fix ASN.1 parsing of certain invalid structures that can result
in a denial of service. (CVE-2006-2937) [Steve Henson]
Fix buffer overflow in SSL_get_shared_ciphers() function.
(CVE-2006-3738) [Tavis Ormandy and Will Drewry, Google Security Team]
Fix SSL client code which could crash if connecting to a
malicious SSLv2 server. (CVE-2006-4343)
[Tavis Ormandy and Will Drewry, Google Security Team]
2006-09-28 11:29:03 +00:00
Dr. Stephen Henson
81780a3b62
Update from HEAD.
2006-09-23 17:30:25 +00:00
Bodo Möller
879b30aaa3
ensure that ciphersuite strings such as "RC4-MD5" match the SSL 2.0
...
ciphersuite as well
2006-09-11 09:48:46 +00:00
Ben Laurie
616f581650
Fix warning.
2006-07-02 14:43:21 +00:00
Bodo Möller
e6e3f38bfa
Fix for previous change: explicitly named ciphersuites are OK to add
2006-06-22 13:07:45 +00:00
Bodo Möller
aa17ab7e57
Put ECCdraft ciphersuites back into default build (but disabled
...
unless specifically requested)
2006-06-22 12:35:54 +00:00
Bodo Möller
35908bd040
Remove ECC ciphersuites from 0.9.8 branch (should use 0.9.9 branch)
2006-06-20 08:50:33 +00:00
Bodo Möller
0e73294e26
Disable invalid ciphersuites
2006-06-14 17:52:01 +00:00
Bodo Möller
b610f46bae
Make sure that AES ciphersuites get priority over Camellia ciphersuites
...
in the default cipher string.
2006-06-14 13:52:49 +00:00
Bodo Möller
6d2cd23f40
Thread-safety fixes
2006-06-14 08:51:41 +00:00
Bodo Möller
e18eef3d7a
Camellia cipher, contributed by NTT
...
Submitted by: Masashi Fujita
Reviewed by: Bodo Moeller
2006-06-09 15:42:21 +00:00
Dr. Stephen Henson
b723a7b11b
Don't check for padding bug if compression is negotiated.
...
PR: 1204
2006-05-07 12:27:48 +00:00
Dr. Stephen Henson
cbb0b734c7
If cipher list contains a match for an explicit ciphersuite only match that
...
one suite.
2006-04-15 00:22:34 +00:00
Nils Larsch
41d4d6721c
fix no-dh configure option; patch supplied by Peter Meerwald
2006-02-24 17:58:35 +00:00
Nils Larsch
22d1087e16
backport recent changes from the cvs head
2006-02-08 19:16:33 +00:00
Dr. Stephen Henson
9f85fcefdc
Update filenames in makefiles
2006-02-04 01:49:36 +00:00
Nils Larsch
45803988ce
make "./configure no-ssl2" work again
...
PR: 1217
2006-01-15 16:57:01 +00:00
Nils Larsch
82a2cb6f51
fix cipher list order
2006-01-15 07:14:38 +00:00