Bodo Möller
b889d6a8e8
fix warning
2002-05-06 10:44:59 +00:00
Bodo Möller
a4f576a378
disable AES ciphersuites unless explicitly requested
2002-05-05 23:44:27 +00:00
Bodo Möller
3def5a010e
fix casts
2002-05-05 23:00:28 +00:00
Bodo Möller
b52f3818f4
undo nonsense patch (r *is* signed or we have signedness mismatches elsewhere)
2002-04-29 11:03:06 +00:00
Richard Levitte
cc12975514
Fix unsigned vs. signed clash
2002-04-29 10:29:38 +00:00
Richard Levitte
9738f395c6
Synchronise with 0.9.7-stable.
2002-04-29 10:28:29 +00:00
Richard Levitte
d4294c8984
Synchronise with 0.9.7-stable.
2002-04-29 10:19:19 +00:00
Richard Levitte
8b07f23c30
Signedness mismatch.
...
Notified by Bernd Matthes <bernd.matthes@gemplus.com>
2002-04-20 10:23:19 +00:00
Richard Levitte
6176df94ed
Make sure the opened directory is closed on exit.
...
Notified by Lorinczy Zsigmond <lzsiga@mail.ahiv.hu>
2002-04-18 16:20:13 +00:00
Bodo Möller
2fb3f002d0
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:05:15 +00:00
Bodo Möller
82b0bf0b87
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:47:20 +00:00
Lutz Jänicke
11c26ecf81
Map new X509 verification errors to alert codes (Tom Wu <tom@arcot.com>).
2002-03-19 16:42:09 +00:00
Dr. Stephen Henson
611ba3f4a1
Initialize ciph_ctx in kssl.c
2002-03-19 01:28:00 +00:00
Bodo Möller
304d90425f
fix ssl3_pending
2002-03-15 10:52:32 +00:00
Lutz Jänicke
bfaa8a89e1
Add missing strength entries.
2002-03-14 18:53:15 +00:00
Dr. Stephen Henson
de941e289e
Initialize cipher context in KRB5
...
("D. Russell" <russelld@aol.net>)
Allow HMAC functions to use an alternative ENGINE.
2002-03-14 18:22:23 +00:00
Bodo Möller
234c73767d
use BIO_nwrite() more properly to demonstrate the general idea of
...
BIO_nwrite0/BIO_nwrite (the previous code was OK for BIO pairs but not
in general)
2002-03-14 09:48:54 +00:00
Dr. Stephen Henson
497810cae7
Undo previous patch: avoid warnings by #undef'ing
...
duplicate definitions.
Suggested by "Kenneth R. Robinette" <support@securenetterm.com>
2002-03-13 13:59:38 +00:00
Dr. Stephen Henson
cbc9d9713d
Fix Kerberos warnings with VC++.
2002-03-12 19:37:18 +00:00
Dr. Stephen Henson
98fa4fe8c5
Fix ASN1 additions for KRB5
2002-03-12 13:32:35 +00:00
Dr. Stephen Henson
0b4c91c0fc
Fix various warnings when compiling with KRB5 code.
2002-03-12 02:59:37 +00:00
Bodo Möller
9437fef8cc
use ERR_peek_last_error() instead of ERR_peek_error()
2002-02-28 14:07:37 +00:00
Richard Levitte
26414ee013
Increase internal security when using strncpy, by making sure the resulting string is NUL-terminated
2002-02-28 12:42:19 +00:00
Bodo Möller
023ec151df
Add 'void *' argument to app_verify_callback.
...
Submitted by: D. K. Smetters <smetters@parc.xerox.com>
Reviewed by: Bodo Moeller
2002-02-28 10:52:56 +00:00
Lutz Jänicke
d62bfb39cd
Fix the fix (Yoram Zahavi)...
2002-02-27 11:23:05 +00:00
Lutz Jänicke
334f1842fc
Make sure to remove bad sessions in SSL_clear() (found by Yoram Zahavi).
2002-02-26 21:40:09 +00:00
Dr. Stephen Henson
3a3ca3f515
Fix for AIX.
...
Submitted by Dawn Whiteside <dwhitesi@tiercel.uwaterloo.ca>
2002-02-22 21:26:25 +00:00
Bodo Möller
4d94ae00d5
ECDSA support
...
Submitted by: Nils Larsch <nla@trustcenter.de>
2002-02-13 18:21:51 +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
Ben Laurie
1f3b65801b
Fix SSL memory leak.
2001-08-28 13:45:41 +00:00
Geoff Thorpe
78435364ec
Changes crypto/evp/ and ssl/ code from directly incrementing reference
...
counts in DH, DSA, and RSA structures. Instead they use the new "***_up()"
functions that handle this.
2001-08-25 17:28:23 +00:00
Lutz Jänicke
e7cf7fcd21
Allow client certificate lists > 16kB ("Douglas E. Engert" <deengert@anl.gov>.)
2001-08-25 11:49:24 +00:00
Lutz Jänicke
11c8f0b79d
More manual pages. Constify.
2001-08-23 17:22:43 +00:00
Lutz Jänicke
df7cb13525
Checked in from the wrong !@#$%&*() copy...
2001-08-21 07:27:02 +00:00
Lutz Jänicke
a403188f92
Alert description strings for TLSv1 and documentation.
2001-08-19 16:20:42 +00:00
Geoff Thorpe
b7727ee616
The indexes returned by ***_get_ex_new_index() functions are used when
...
setting stack (actually, array) values in ex_data. So only increment the
global counters if the underlying CRYPTO_get_ex_new_index() call succeeds.
This change doesn't make "ex_data" right (see the comment at the head of
ex_data.c to know why), but at least makes the source code marginally less
frustrating.
2001-08-12 16:52:00 +00:00
Bodo Möller
37a7cd1a11
Bugfix: larger message size in ssl3_get_key_exchange() because
...
ServerKeyExchange message may be skipped.
Submitted by: Petr Lampa <lampa@fee.vutbr.cz>
2001-08-07 09:30:18 +00:00
Lutz Jänicke
3a2d9c4dd0
Fix typos (shinagawa@star.zko.dec.com)
2001-08-07 07:52:53 +00:00
Ben Laurie
d66ace9da5
Start to reduce some of the header bloat.
2001-08-05 18:02:16 +00:00
Lutz Jänicke
06da6e4977
Don't disable rollback attack detection as a recommended bug workaround.
2001-08-03 08:45:13 +00:00
Lutz Jänicke
d92f0bb6e9
Remove SSL_OP_NON_EXPORT_FIRST:
...
It did not work, it was deactivated by #if 0/#endif anyway _and_ we now have
the working SSL_OP_CIPHER_SERVER_PREFERENCE.
2001-08-01 10:06:32 +00:00
Lutz Jänicke
e32c852e1e
Indent.
2001-07-31 10:19:20 +00:00
Richard Levitte
3728974460
Make as sure as possible that gethostname() will be properly declared.
2001-07-31 08:50:20 +00:00
Richard Levitte
fdc2bbcacb
Correct most of the unsigned vs. signed warnings (or int vs. size_t),
...
and rename some local variables to avoid name shadowing.
2001-07-31 08:45:40 +00:00
Richard Levitte
c2a3358b60
Whoops, my fault, a backslash got converted to a slash...
2001-07-31 08:44:28 +00:00
Richard Levitte
882e891284
More Kerberos SSL changes from Jeffrey Altman <jaltman@columbia.edu>
...
His comments are:
First, it corrects a problem introduced in the last patch where the
kssl_map_enc() would intentionally return NULL for valid ENCTYPE
values. This was done to prevent verification of the kerberos 5
authenticator from being performed when Derived Key ciphers were
in use. Unfortunately, the authenticator verification routine was
not the only place that function was used. And it caused core dumps.
Second, it attempt to add to SSL_SESSION the Kerberos 5 Client
Principal Name.
2001-07-31 07:21:06 +00:00
Richard Levitte
99ecb90a99
make update
2001-07-31 06:40:10 +00:00
Ben Laurie
dbad169019
Really add the EVP and all of the DES changes.
2001-07-30 23:57:25 +00:00
Ben Laurie
be2e2c3297
Only set the verify callback if there's one to set!
2001-07-30 17:17:26 +00:00
Lutz Jänicke
1f0c9ad7e1
Fix inconsistent behaviour with respect to verify_callback handling.
2001-07-30 11:45:34 +00:00