Lutz Jänicke
68a9ee13e8
Reorder cleanup sequence in SSL_CTX_free() to leave ex_data for remove_cb().
...
Submitted by:
Reviewed by:
PR: 212
2002-08-16 17:02:30 +00:00
Bodo Möller
e73308638a
use correct function code in error message
2002-08-15 16:17:02 +00:00
Richard Levitte
b84e473d63
Sometimes, the value of the variable containing the compiler call can
...
become rather large. This becomes a problem when the default 1024
character large buffer that WRITE uses isn't enough. WRITE/SYMBOL
uses a 2048 byte large buffer instead.
2002-08-15 08:29:26 +00:00
Richard Levitte
74a25e9cd9
Instead of returning errors when certain flags are unusable, just ignore them.
...
That will make the test go through even if DH (or in some cases ECDH) aren't
built into OpenSSL.
PR: 216, part 2
2002-08-14 12:18:36 +00:00
Bodo Möller
ab1a01e9b2
oops -- must use EVP_MD_size, not EVP_MD_block_size
2002-08-03 18:50:17 +00:00
Bodo Möller
265a9e2c5d
get rid of OpenSSLDie
2002-08-02 11:47:24 +00:00
Richard Levitte
450c73d98b
Make sure to use $(MAKE) everywhere instead of make.
...
Part of PR 181
2002-07-31 13:49:58 +00:00
Lutz Jänicke
addafc08a5
Typo.
...
Submitted by: Jeffrey Altman <jaltman@columbia.edu>
Reviewed by:
PR: 169
2002-07-30 13:34:44 +00:00
Lutz Jänicke
bca9dc2a51
OpenSSL Security Advisory [30 July 2002]
...
Changes marked "(CHATS)" were sponsored by the Defense Advanced
Research Projects Agency (DARPA) and Air Force Research Laboratory,
Air Force Materiel Command, USAF, under agreement number
F30602-01-2-0537.
Submitted by:
Reviewed by:
PR:
2002-07-30 11:21:19 +00:00
Lutz Jänicke
3720ea24f0
"make update"
...
Submitted by:
Reviewed by:
PR:
2002-07-30 07:18:03 +00:00
Lutz Jänicke
f19b6474fe
New cipher selection options COMPLEMENTOFALL and COMPLEMENTOFDEFAULT.
...
Submitted by:
Reviewed by:
PR: 127
2002-07-19 19:53:02 +00:00
Lutz Jänicke
7e8852c549
Reorder inclusion of header files:
...
des_old.h redefines crypt:
#define crypt(b,s)\
DES_crypt((b),(s))
This scheme leads to failure, if header files with the OS's true definition
of crypt() are processed _after_ des_old.h was processed. This is e.g. the
case on HP-UX with unistd.h.
As evp.h now again includes des.h (which includes des_old.h), this problem
only came up after this modification.
Solution: move header files (indirectly) including e_os.h before the header
files (indirectly) including evp.h.
Submitted by:
Reviewed by:
PR:
2002-07-10 06:57:54 +00:00
Lutz Jänicke
4064a85205
Ciphers with NULL encryption were not properly handled because they were
...
not covered by the strength bit mask.
Submitted by:
Reviewed by:
PR: 130
2002-07-10 06:40:18 +00:00
Bodo Möller
be9419edf4
emtpy fragments are not necessary for SSL_eNULL
...
(but noone uses it anyway)
fix t1_enc.c: use OPENSSL_NO_RC4, not NO_RC4
2002-07-09 08:48:49 +00:00
Bodo Möller
5af9fcaf35
AES cipher suites are now official (RFC3268)
2002-07-04 08:50:33 +00:00
Richard Levitte
ca55c617e5
Pass CFLAG to dependency makers, so non-standard system include paths are
...
handled properly.
Part of PR 75
2002-06-27 16:44:52 +00:00
Bodo Möller
2f8275c52d
New option SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS for disabling CBC
...
vulnerability workaround (included in SSL_OP_ALL).
PR: #90
2002-06-14 12:20:27 +00:00
Richard Levitte
88f1be140c
Correct syntax in ssl-lib.com
...
maketests.com was missing the TCP/IP options TCPIP and NONE
2002-06-05 06:45:27 +00:00
Richard Levitte
f9332da521
Recover from errors
2002-05-23 23:32:30 +00:00
Richard Levitte
7d2ff3f081
Allow the use of the TCP/IP stack keyword TCPIP and NONE
2002-05-22 11:37:02 +00:00
Dr. Stephen Henson
75a46764e5
closedir is not used on Win32.
2002-05-11 12:42:23 +00:00
Bodo Möller
ae936dae90
Fix ciphersuite list to enforce low priority for RC4.
2002-05-07 08:36:01 +00:00
Bodo Möller
67166dc05c
ensure that, for each strength, RC4 ciphers have least preference
...
in the default ciphersuite list
2002-05-07 07:59:05 +00:00
Bodo Möller
aa9fed8cc2
refer to latest draft for AES ciphersuites
2002-05-07 07:56:09 +00:00
Bodo Möller
442eb8a4c3
fix warning
2002-05-06 10:44:08 +00:00
Bodo Möller
29f6a99432
disable AES ciphersuites unless explicitly requested
2002-05-05 23:47:09 +00:00
Bodo Möller
1f13793b1a
fix casts
2002-05-05 23:01:02 +00:00
Bodo Möller
7bcf65a125
undo nonsense patch (r *is* signed or we have signedness mismatches elsewhere)
2002-04-29 11:03:38 +00:00
Richard Levitte
306009bb6a
Fix unsigned vs. signed clash
2002-04-29 10:30:34 +00:00
Richard Levitte
f84ffd0130
Make sure the opened directory is closed on exit.
...
Notified by Lorinczy Zsigmond <lzsiga@mail.ahiv.hu>
2002-04-18 16:20:21 +00:00
Bodo Möller
1dcb6c994f
fix length field we create when converting SSL 2.0 format into SSL 3.0/TLS 1.0 format
...
(the bug was introduced with message callback support)
2002-04-14 13:04:58 +00:00
Bodo Möller
a9ab63c01c
Implement known-IV countermeasure.
...
Fix length checks in ssl3_get_client_hello().
Use s->s3->in_read_app_data differently to fix ssl3_read_internal().
2002-04-13 22:51:26 +00:00
Lutz Jänicke
3671e38af4
Map new X509 verification errors to alert codes (Tom Wu <tom@arcot.com>).
...
Submitted by:
Reviewed by:
PR:
2002-03-19 16:44:26 +00:00
Dr. Stephen Henson
4fc3946111
Initialize ciph_ctx in kssl.c
2002-03-19 01:27:10 +00:00
Bodo Möller
0bdbc5a86e
fix ssl3_pending
2002-03-15 10:52:03 +00:00
Lutz Jänicke
abecef77cf
Add missing strength classification.
...
Submitted by:
Reviewed by:
PR:
2002-03-14 18:47:51 +00:00
Dr. Stephen Henson
b74dfe6e8e
Initialize cipher context in KRB5
...
("D. Russell" <russelld@aol.net>)
Allow HMAC functions to use an alternative ENGINE.
2002-03-14 18:16:49 +00:00
Bodo Möller
13962f0b15
use BIO_nwrite() more properly
2002-03-14 09:48:32 +00:00
Dr. Stephen Henson
f2cbb15468
Undo previous patch: avoid warnings by #undef'ing
...
duplicate definitions.
Suggested by "Kenneth R. Robinette" <support@securenetterm.com>
2002-03-13 13:58:33 +00:00
Dr. Stephen Henson
e38e8b29f8
Fix Kerberos warnings with VC++.
2002-03-12 19:38:16 +00:00
Dr. Stephen Henson
c03ceadfbd
Fix ASN1 additions for KRB5
2002-03-12 13:33:20 +00:00
Dr. Stephen Henson
e50baf58ab
Fix various warnings when compiling with KRB5 code.
2002-03-12 03:00:59 +00:00
Ben Laurie
91aeab0de3
ADH-DES-CBC-SHA should be LOW.
2002-03-06 16:59:12 +00:00
Bodo Möller
2be9b88135
use ERR_peek_last_error() instead of ERR_peek_error()
2002-02-28 14:10:13 +00:00
Richard Levitte
421d474332
Increase internal security when using strncpy, by making sure the resulting string is NUL-terminated
2002-02-28 12:44:05 +00:00
Bodo Möller
48781ef7f7
Add 'void *' argument to app_verify_callback.
...
Submitted by: D. K. Smetters <smetters@parc.xerox.com>
Reviewed by: Bodo Moeller
2002-02-28 10:55:52 +00:00
Lutz Jänicke
21f422ca5e
Fix the fix (Yoram Zahavi)...
...
Submitted by:
Reviewed by:
PR:
2002-02-27 11:24:39 +00:00
Lutz Jänicke
3b79d2789d
Make sure that bad sessions are removed in SSL_clear() (found by
...
Yoram Zahavi).
Submitted by:
Reviewed by:
PR:
2002-02-26 21:44:07 +00:00
Dr. Stephen Henson
cfe1c195c4
non-Monolith fixes.
...
Submitted by Andrew W. Gray <agray@iconsinc.com>
2002-02-22 21:27:47 +00:00
Lutz Jänicke
acfe628b6e
Make removal from session cache more robust.
2002-02-10 12:46:41 +00:00
Lutz Jänicke
4de920c91d
Do not store unneeded data.
2002-02-08 15:15:04 +00:00
Bodo Möller
8c74b5e56c
Bugfix: In ssl3_accept, don't use a local variable 'got_new_session'
...
to indicate that a real handshake is taking place (the value will be
lost during multiple invocations). Set s->new_session to 2 instead.
2002-01-14 23:40:26 +00:00
Bodo Möller
c59ba5b528
Return -1 from ssl3_get_server_done (ssl3/s3_clnt.c) if
...
the SSL_R_LENGTH_MISMATCH error is detected.
2002-01-14 12:37:59 +00:00
Ben Laurie
45d87a1ffe
Prototype info function.
2002-01-12 15:56:13 +00:00
Ben Laurie
a3feb21bbe
Add client_cert_cb prototype.
2002-01-12 13:15:40 +00:00
Ulf Möller
dcbbf83dba
ssl3_read_bytes bug fix
...
Submitted by: D P Chang <dpc@qualys.com>
Reviewed by: Bodo
2001-12-28 17:14:35 +00:00
Bodo Möller
4d7072f4b5
remove redundant ERR_load_... declarations
2001-12-17 19:22:23 +00:00
Ben Laurie
ff3fa48fc7
Improve back compatibility.
2001-12-09 21:53:31 +00:00
Bodo Möller
47ff5c6279
For future portability reasons MIT is moving all macros to function
...
calls. This patch allows compilation either way.
Submitted by: Jeffrey Altman <jaltman@columbia.edu>
2001-11-23 21:50:50 +00:00
Bodo Möller
c23d16ac19
cast to unsigned int, not to int to avoid the warning -- all these
...
values really are unsigned
2001-11-14 21:18:35 +00:00
Richard Levitte
3102792161
unsigned int vs. int.
2001-11-14 10:55:29 +00:00
Bodo Möller
2b90b1f344
make code a little more similar to what it looked like before the fixes,
...
call ssl2_part_read again to parse error message
2001-11-10 10:44:15 +00:00
Bodo Möller
cf82191d77
Implement msg_callback for SSL 2.0.
...
Important SSL 2.0 bugfixes (bugs found while implementing msg_callback).
2001-11-10 01:16:28 +00:00
Richard Levitte
a7b42009c4
Change the shared library support so the shared libraries get built
...
sooner and the programs get built against the shared libraries.
This requires a bit more work. Things like -rpath and the possibility
to still link the programs statically should be included. Some
cleanup is also needed. This will be worked on.
2001-10-30 08:00:59 +00:00
Richard Levitte
7b5ffd6834
Addapt VMS scripts to the newer disk layout system ODS-5, which allows more than one period and mixed size characters in file names
2001-10-29 13:05:28 +00:00
Bodo Möller
4d635a7001
Consistency with s2_... and s23_... variants (no real functional
...
change)
2001-10-25 08:17:53 +00:00
Bodo Möller
ba1c602281
Assume TLS 1.0 when ClientHello fragment is too short.
2001-10-25 06:09:51 +00:00
Bodo Möller
979689aa5c
Fix SSL handshake functions and SSL_clear() such that SSL_clear()
...
never resets s->method to s->ctx->method when called from within
one of the SSL handshake functions.
2001-10-24 19:03:22 +00:00
Richard Levitte
a3faebd104
Deprecate the macro MAC_OS_pre_X.
2001-10-24 15:32:53 +00:00
Bodo Möller
287973746e
Fix memory leak.
2001-10-22 13:59:36 +00:00
Bodo Möller
cf3a5cebd7
Call msg_callback with correct length parameter if ssl3_write_bytes had to
...
be called multiple times
2001-10-20 18:56:01 +00:00
Bodo Möller
a661b65357
New functions SSL[_CTX]_set_msg_callback().
...
New macros SSL[_CTX]_set_msg_callback_arg().
Message callback imlementation for SSL 3.0/TLS 1.0 (no SSL 2.0 yet).
New '-msg' option for 'openssl s_client' and 'openssl s_server'
that enable a message callback that displays all protocol messages.
In ssl3_get_client_hello (ssl/s3_srvr.c), generate a fatal alert if
client_version is smaller than the protocol version in use.
Also change ssl23_get_client_hello (ssl/s23_srvr.c) to select TLS 1.0
if the client demanded SSL 3.0 but only TLS 1.0 is enabled; then the
client will at least see that alert.
Fix SSL[_CTX]_ctrl prototype (void * instead of char * for generic
pointer).
Add/update some OpenSSL copyright notices.
2001-10-20 17:56:36 +00:00
Bodo Möller
31fe950d2b
gcc complained about "write" being shadowed even though the "write"
...
variable name occured just in a function *prototype* -- so rename it
2001-10-17 20:44:25 +00:00
Richard Levitte
db6a87d8cc
Wrong place...
2001-10-17 17:54:17 +00:00
Richard Levitte
7beb408771
The EVP_*Init_ex() functions take one extra argument. Let's default
...
it to NULL.
2001-10-17 16:03:42 +00:00
Dr. Stephen Henson
581f1c8494
Modify EVP cipher behaviour in a similar way
...
to digests to retain compatibility.
2001-10-17 00:37:12 +00:00
Bodo Möller
bf21446a2a
Add per-SSL 'msg_callback' with 'msg_callback_arg'.
...
Both have per-SSL_CTX defaults.
These new values can be set by calling SSL[_CTX]_[callback_]ctrl
with codes SSL_CTRL_SET_MSG_CALLBACK and SSL_CTRL_SET_MSG_CALLBACK_ARG.
So far, the callback is never actually called.
Also rearrange some SSL_CTX struct members (some exist just in
SSL_CTXs, others are defaults for SSLs and are either copied
during SSL_new, or used if the value in the SSL is not set;
these three classes of members were not in a logical order),
and add some missing assignments to SSL_dup.
2001-10-16 13:09:24 +00:00
Dr. Stephen Henson
20d2186c87
Retain compatibility of EVP_DigestInit() and EVP_DigestFinal()
...
with existing code.
Modify library to use digest *_ex() functions.
2001-10-16 01:24:29 +00:00
Bodo Möller
9ba3ec9176
The message header for fake SSL 3.0/TLS 1.0 client hellos created from
...
SSL 2.0 client hellos added with the previous commit was totally wrong --
it must start with the message type, not the protocol version.
(Not that this particular header is actually used anywhere ...)
2001-10-16 00:56:04 +00:00
Bodo Möller
8f71fb8d98
For consistency, set s->init_num in the 'reuse_message' case
...
(if s23_srvr.c faked the message, s->init_num is 0).
2001-10-15 20:16:36 +00:00
Bodo Möller
48948d53b6
Change ssl3_get_message and the functions using it so that complete
...
'Handshake' protocol structures are kept in memory, including
'msg_type' and 'length'.
(This is in preparation of future support for callbacks that get to
peek at handshake messages and the like.)
2001-10-15 19:49:25 +00:00
Bodo Möller
2ce15df528
Fix ssl3_get_message handle message fragmentation correctly.
2001-10-15 17:41:41 +00:00
Bodo Möller
681bfae499
the previous commit accidentily removed 'ret = 1' from the SSL_ST_OK
...
case of ssl3_accept
2001-10-15 17:40:42 +00:00
Richard Levitte
116daf4c2f
To avoid commit wars over dependencies, let's make it so things that
...
depend on the environment, like the presence of the OpenBSD crypto
device or of Kerberos, do not change the dependencies within OpenSSL.
2001-10-10 07:55:02 +00:00
Richard Levitte
285046ec51
SSL_add_dir_cert_subjects_to_stack for Win32 finally implemented.
...
Submitted by Massimo Santin <msantin@santineassociati.com>.
2001-10-04 12:27:39 +00:00
Richard Levitte
f8000b9345
'make update'
2001-10-04 07:49:09 +00:00
Bodo Möller
965b6dad44
comment
2001-09-24 07:56:45 +00:00
Bodo Möller
a32d795aae
avoid everything resembling a magic trigraph
2001-09-24 07:54:11 +00:00
Bodo Möller
3b0b5abae3
bugfix: handle HelloRequest received during handshake correctly
2001-09-21 11:18:40 +00:00
Bodo Möller
b49124f6d9
Disable session related stuff in SSL_ST_OK case of ssl3_accept if we
...
just sent a HelloRequest.
2001-09-21 07:01:25 +00:00
Bodo Möller
2260ad21fb
Bugfix: correct cleanup after sending a HelloRequest
2001-09-21 00:04:15 +00:00
Bodo Möller
6b0e9facf4
New function SSL_renegotiate_pending().
...
New option SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION.
2001-09-20 22:54:09 +00:00
Bodo Möller
8e2f6b79ea
fix ssl3_accept: don't call ssl_init_wbio_buffer() in HelloRequest case
2001-09-20 21:37:13 +00:00
Bodo Möller
ee60d9fb28
Fix ssl/s3_enc.c, ssl/t1_enc.c and ssl/s3_pkt.c so that we don't
...
reveal whether illegal block cipher padding was found or a MAC
verification error occured.
In ssl/s2_pkt.c, verify that the purported number of padding bytes is in
the legal range.
2001-09-20 18:35:52 +00:00
Bodo Möller
b78e502104
add comment
2001-09-14 13:47:25 +00:00
Lutz Jänicke
c0f5dd070b
Make maximum certifcate chain size accepted from the peer application
...
settable (proposed by "Douglas E. Engert" <deengert@anl.gov>).
2001-09-11 13:08:51 +00:00
Bodo Möller
384eff877c
Fix apps/openssl.c and ssl/ssltest.c so that they use
...
CRYPTO_set_mem_debug_options() instead of CRYPTO_dbg_set_options(),
which is the default implementation of the former and should usually
not be directly used by applications (at least if we assume that the
options accepted by the default implementation will also be meaningful
to any other implementations).
Also fix apps/openssl.c and ssl/ssltest such that environment variable
setting 'OPENSSL_DEBUG_MEMORY=off' actively disables the compiled-in
library defaults (i.e. such that CRYPTO_MDEBUG is ignored in this
case).
2001-09-10 09:50:30 +00:00
Bodo Möller
6ac4e8bd6e
Rename recently introduced functions for improved code clarity:
...
[DR]SA_up => [DR]SA_up_ref
2001-09-03 13:40:07 +00:00
Geoff Thorpe
79aa04ef27
Make the necessary changes to work with the recent "ex_data" overhaul.
...
See the commit log message for that for more information.
NB: X509_STORE_CTX's use of "ex_data" support was actually misimplemented
(initialisation by "memset" won't/can't/doesn't work). This fixes that but
requires that X509_STORE_CTX_init() be able to handle errors - so its
prototype has been changed to return 'int' rather than 'void'. All uses of
that function throughout the source code have been tracked down and
adjusted.
2001-09-01 20:02:13 +00:00
Geoff Thorpe
4db73c1bb8
(A version of) gcc had been giving somewhat odd "trigraph" warnings about
...
this construct, and Ulf provided the following insight as to why;
> ANSI C compliant compilers must substitute "??)" for "]" because your
> terminal might not have a "]" key if you bought it in the early 1970s.
So we escape the final '?' to avoid this pathological case.
2001-08-28 19:32:16 +00:00