oweals/openssl.git
23 years agoTypo.
Dr. Stephen Henson [Sat, 10 Mar 2001 01:57:38 +0000 (01:57 +0000)]
Typo.

23 years agoAdd the 'ec' directory to mkdef.pl and mkfiles.pl
Dr. Stephen Henson [Sat, 10 Mar 2001 01:56:48 +0000 (01:56 +0000)]
Add the 'ec' directory to mkdef.pl and mkfiles.pl
so the Windows build can see it.

Fixup mkdef.pl so it doesn't mess up with function
names longer than 39 characters in length.

23 years agoUse 32bit longs on Alpha as well, because that's what the VMS
Richard Levitte [Fri, 9 Mar 2001 15:27:41 +0000 (15:27 +0000)]
Use 32bit longs on Alpha as well, because that's what the VMS
assembler code works with.

Of course, the assembler code could differ between platforms.  That
might happen in the future.

23 years agoInstead of telling both 'make' and the user that ranlib
Bodo Möller [Fri, 9 Mar 2001 14:01:42 +0000 (14:01 +0000)]
Instead of telling both 'make' and the user that ranlib
errors can be tolerated, hide the error from 'make'.
This gives shorter output both if ranlib fails and if
it works.

23 years agoUpdate docs.
Dr. Stephen Henson [Fri, 9 Mar 2001 13:57:14 +0000 (13:57 +0000)]
Update docs.

23 years agoWorkaround for solaris64 linking problem (explicit "ar rs" is needed
Bodo Möller [Fri, 9 Mar 2001 13:04:06 +0000 (13:04 +0000)]
Workaround for solaris64 linking problem (explicit "ar rs" is needed
to create a symbol table).

Sun patches such as 109147-06 probably fix this problem,
but we can easily avoid it.

23 years agoConsistently use 'void *' for SSL read, peek and write functions.
Bodo Möller [Fri, 9 Mar 2001 10:09:20 +0000 (10:09 +0000)]
Consistently use 'void *' for SSL read, peek and write functions.

23 years agoChange the EVP_somecipher() and EVP_somedigest()
Dr. Stephen Henson [Fri, 9 Mar 2001 02:51:02 +0000 (02:51 +0000)]
Change the EVP_somecipher() and EVP_somedigest()
functions to return constant EVP_MD and EVP_CIPHER
pointers.

Update docs.

23 years agoBug fixes.
Richard Levitte [Fri, 9 Mar 2001 01:13:23 +0000 (01:13 +0000)]
Bug fixes.

23 years agoFix ec_GFp_simple_cmp.
Bodo Möller [Thu, 8 Mar 2001 22:52:49 +0000 (22:52 +0000)]
Fix ec_GFp_simple_cmp.

Use example group from Annex I of X9.62 in ectest.c.

23 years agossl23_peek
Bodo Möller [Thu, 8 Mar 2001 21:55:27 +0000 (21:55 +0000)]
ssl23_peek

23 years agoadd ssl23_peek
Bodo Möller [Thu, 8 Mar 2001 21:54:02 +0000 (21:54 +0000)]
add ssl23_peek

23 years agoAvoid problems with multi-line NAME sections.
Bodo Möller [Thu, 8 Mar 2001 21:52:53 +0000 (21:52 +0000)]
Avoid problems with multi-line NAME sections.

23 years agoToo many dollars...
Richard Levitte [Thu, 8 Mar 2001 21:12:58 +0000 (21:12 +0000)]
Too many dollars...

23 years agoImplement EC_GFp_mont_method.
Bodo Möller [Thu, 8 Mar 2001 20:55:16 +0000 (20:55 +0000)]
Implement EC_GFp_mont_method.

23 years agoFixes to make 'no-ec' work (it should not turn 'objects' into 'objts' for example)
Bodo Möller [Thu, 8 Mar 2001 19:34:14 +0000 (19:34 +0000)]
Fixes to make 'no-ec' work (it should not turn 'objects' into 'objts' for example)

23 years agoMore method functions for elliptic curves,
Bodo Möller [Thu, 8 Mar 2001 19:14:52 +0000 (19:14 +0000)]
More method functions for elliptic curves,
and an ectest.c that actually tests something.

23 years agoBugfix: previously the serial number file could turn negative
Bodo Möller [Thu, 8 Mar 2001 19:13:24 +0000 (19:13 +0000)]
Bugfix: previously the serial number file could turn negative
because an incompletely initialized ASN1_INTEGER was used.

23 years agoAdd newly learned knowledge from yesterday's discussion.
Lutz Jänicke [Thu, 8 Mar 2001 17:24:02 +0000 (17:24 +0000)]
Add newly learned knowledge from yesterday's discussion.

23 years agoWrite a small comment so we know...
Richard Levitte [Thu, 8 Mar 2001 17:22:38 +0000 (17:22 +0000)]
Write a small comment so we know...

23 years agoBuild ectest too.
Richard Levitte [Thu, 8 Mar 2001 17:22:05 +0000 (17:22 +0000)]
Build ectest too.

23 years agoSome EC function names are really long. Make aliases for VMS on VAX.
Richard Levitte [Thu, 8 Mar 2001 17:20:31 +0000 (17:20 +0000)]
Some EC function names are really long.  Make aliases for VMS on VAX.

23 years agonote the rand_win.c change
Ulf Möller [Thu, 8 Mar 2001 17:00:09 +0000 (17:00 +0000)]
note the rand_win.c change

23 years agoComment
Bodo Möller [Thu, 8 Mar 2001 16:53:30 +0000 (16:53 +0000)]
Comment

23 years agoold MSVC versions don't have rdtsc
Ulf Möller [Thu, 8 Mar 2001 16:46:23 +0000 (16:46 +0000)]
old MSVC versions don't have rdtsc
use _emit instead

Pointed out by Jeremy Cooper <jeremy@baymoo.org>

23 years agoHide BN_CTX structure details.
Bodo Möller [Thu, 8 Mar 2001 15:56:15 +0000 (15:56 +0000)]
Hide BN_CTX structure details.

Incease the number of BIGNUMs in a BN_CTX.

23 years agoVMS catches up on the EC modifications.
Richard Levitte [Thu, 8 Mar 2001 14:40:20 +0000 (14:40 +0000)]
VMS catches up on the EC modifications.

23 years agoMake EVP_Digest*() routines return a value.
Dr. Stephen Henson [Thu, 8 Mar 2001 14:04:22 +0000 (14:04 +0000)]
Make EVP_Digest*() routines return a value.

TODO: update docs, and make soe other routines
which use EVP_Digest*() check return codes.

23 years agoavoid compiler warning
Bodo Möller [Thu, 8 Mar 2001 14:02:28 +0000 (14:02 +0000)]
avoid compiler warning

23 years agoConstify BN_value_one.
Bodo Möller [Thu, 8 Mar 2001 13:58:09 +0000 (13:58 +0000)]
Constify BN_value_one.

23 years agoIntegrate ec_err.[co].
Bodo Möller [Thu, 8 Mar 2001 12:30:12 +0000 (12:30 +0000)]
Integrate ec_err.[co].

"make depend"

23 years agoThrow out *all* absolute pathnames, not matter what they look like.
Bodo Möller [Thu, 8 Mar 2001 12:27:44 +0000 (12:27 +0000)]
Throw out *all* absolute pathnames, not matter what they look like.
The filenames we are interested in for Makefile dependencies
are always relative.

23 years agoSort openssl.ec, the configuration file for mkerr.pl.
Bodo Möller [Thu, 8 Mar 2001 12:14:25 +0000 (12:14 +0000)]
Sort openssl.ec, the configuration file for mkerr.pl.

Change mkerr.pl so that it puts the ERR_load_..._strings()
prototype in header files that it writes.

23 years agoIntegrate ectest.c (which does not yet do anything).
Bodo Möller [Thu, 8 Mar 2001 11:59:48 +0000 (11:59 +0000)]
Integrate ectest.c (which does not yet do anything).

23 years agoOrder ERR_load_... calls like the stuff in err.h.
Bodo Möller [Thu, 8 Mar 2001 11:59:03 +0000 (11:59 +0000)]
Order ERR_load_... calls like the stuff in err.h.

23 years agoGet rid of '#define ERR_file_name __FILE__', which is unnecessary indirection.
Bodo Möller [Thu, 8 Mar 2001 11:45:44 +0000 (11:45 +0000)]
Get rid of '#define ERR_file_name __FILE__', which is unnecessary indirection.
(It cannot possibly help to avoid duplicate 'name of file' strings
in object files because the preprocessor does not work at object file
level.)

23 years agoLet EC_POINT_copy do nothing if dest==src
Bodo Möller [Thu, 8 Mar 2001 11:18:06 +0000 (11:18 +0000)]
Let EC_POINT_copy do nothing if dest==src

23 years agoMore 'TODO' items.
Bodo Möller [Thu, 8 Mar 2001 11:16:33 +0000 (11:16 +0000)]
More 'TODO' items.

23 years agoMore method functions for EC_GFp_simple_method.
Bodo Möller [Thu, 8 Mar 2001 01:23:28 +0000 (01:23 +0000)]
More method functions for EC_GFp_simple_method.

23 years agoMore method functions.
Bodo Möller [Wed, 7 Mar 2001 20:56:48 +0000 (20:56 +0000)]
More method functions.

23 years agoSome actual method functions (not enough yet to use the EC library, though),
Bodo Möller [Wed, 7 Mar 2001 19:54:35 +0000 (19:54 +0000)]
Some actual method functions (not enough yet to use the EC library, though),
including EC arithmetics derived from Lenka Fibikova's code (with some
additional optimizations).

23 years agoCode for better build under Darwin (MacOS X).
Richard Levitte [Wed, 7 Mar 2001 10:04:00 +0000 (10:04 +0000)]
Code for better build under Darwin (MacOS X).
Submitted by Brad Dominy <jdominy@darwinuser.org>

23 years ago..._init functions are method-specific too
Bodo Möller [Wed, 7 Mar 2001 09:53:41 +0000 (09:53 +0000)]
..._init functions are method-specific too
(they can't do much useful, but they will have to set pointers
to NULL)

23 years agoOptimized EC_METHODs need specific 'set_curve' and 'free' functions.
Bodo Möller [Wed, 7 Mar 2001 09:48:38 +0000 (09:48 +0000)]
Optimized EC_METHODs need specific 'set_curve' and 'free' functions.

23 years agoThe next bunch of vaporware.
Bodo Möller [Wed, 7 Mar 2001 09:29:45 +0000 (09:29 +0000)]
The next bunch of vaporware.

23 years agoextra_data 'mixin'.
Bodo Möller [Wed, 7 Mar 2001 09:03:32 +0000 (09:03 +0000)]
extra_data 'mixin'.
(This will be used for Lim/Lee precomputation data.)

23 years agoOops ...
Bodo Möller [Wed, 7 Mar 2001 01:41:20 +0000 (01:41 +0000)]
Oops ...

23 years agoIn clear_free, clear the complete structure just in case
Bodo Möller [Wed, 7 Mar 2001 01:37:54 +0000 (01:37 +0000)]
In clear_free, clear the complete structure just in case
the method misses something.

23 years agoFix ERR_R_... problems.
Bodo Möller [Wed, 7 Mar 2001 01:19:07 +0000 (01:19 +0000)]
Fix ERR_R_... problems.

23 years agoImplement dispatcher for EC_GROUP and EC_POINT method functions.
Bodo Möller [Wed, 7 Mar 2001 01:17:05 +0000 (01:17 +0000)]
Implement dispatcher for EC_GROUP and EC_POINT method functions.

Initial EC_GROUP_new_curve_GFp implementation.

23 years agoAdd a few 'const's
Bodo Möller [Tue, 6 Mar 2001 22:30:03 +0000 (22:30 +0000)]
Add a few 'const's

23 years agoForgot a '$'.
Ulf Möller [Tue, 6 Mar 2001 15:36:24 +0000 (15:36 +0000)]
Forgot a '$'.

23 years agoChange obj_... generation so that it does not generate rubbish or
Bodo Möller [Tue, 6 Mar 2001 08:58:38 +0000 (08:58 +0000)]
Change obj_... generation so that it does not generate rubbish or
abort with errors if no name is defined for some object, which was the
case for 'pilotAttributeType 27'.

Also avoid this very situation by assigning the name
'pilotAttributeType27'.

23 years ago'is_at_infinity' tests don't need a BN_CTX.
Bodo Möller [Tue, 6 Mar 2001 08:55:33 +0000 (08:55 +0000)]
'is_at_infinity' tests don't need a BN_CTX.

23 years agoNew function declarations.
Bodo Möller [Tue, 6 Mar 2001 07:01:51 +0000 (07:01 +0000)]
New function declarations.

23 years agoAdd BN_CTX arguments where appropriate.
Bodo Möller [Tue, 6 Mar 2001 06:20:20 +0000 (06:20 +0000)]
Add BN_CTX arguments where appropriate.

Rename 'EC_GROUP_set'-related functions to names similar to 'EC_GROUP_set_curve'
because they don't care about the generator.

Add new functions.

23 years agoDEC
Ulf Möller [Tue, 6 Mar 2001 03:26:38 +0000 (03:26 +0000)]
DEC

23 years agoAdd EC_GROUP_new_GFp prototype.
Bodo Möller [Mon, 5 Mar 2001 22:29:57 +0000 (22:29 +0000)]
Add EC_GROUP_new_GFp prototype.

23 years agoChange comments.
Bodo Möller [Mon, 5 Mar 2001 21:59:03 +0000 (21:59 +0000)]
Change comments.

23 years agoSome declarations that outline what I intend to implement.
Bodo Möller [Mon, 5 Mar 2001 21:54:39 +0000 (21:54 +0000)]
Some declarations that outline what I intend to implement.

23 years agoUpdate the VMS build scripts for EC
Richard Levitte [Mon, 5 Mar 2001 21:17:08 +0000 (21:17 +0000)]
Update the VMS build scripts for EC

23 years agoAnother file I had forgotten to add.
Bodo Möller [Mon, 5 Mar 2001 20:32:41 +0000 (20:32 +0000)]
Another file I had forgotten to add.

23 years agoAdd yet another (still empty) source code file that I forgot.
Bodo Möller [Mon, 5 Mar 2001 20:31:49 +0000 (20:31 +0000)]
Add yet another (still empty) source code file that I forgot.

23 years agoAdd more EC vaporware (empty source code files I missed in my
Bodo Möller [Mon, 5 Mar 2001 20:14:00 +0000 (20:14 +0000)]
Add more EC vaporware (empty source code files I missed in my
previous commit).

23 years agoMove ec.h to ec2.h because it is not compatible with what we will use.
Bodo Möller [Mon, 5 Mar 2001 20:13:37 +0000 (20:13 +0000)]
Move ec.h to ec2.h because it is not compatible with what we will use.

Add EC vaporware: change relevant Makefiles and add some empty source
files.

"make update".

23 years agoDocument the SSLv2 session reuse fix.
Richard Levitte [Mon, 5 Mar 2001 13:59:52 +0000 (13:59 +0000)]
Document the SSLv2 session reuse fix.

23 years agoAdd the possibility for option macros and start using it to indicate
Richard Levitte [Mon, 5 Mar 2001 13:45:34 +0000 (13:45 +0000)]
Add the possibility for option macros and start using it to indicate
for Windows compilations if DLL linkage is required or not.

23 years agoNew option '-subj arg' for 'openssl req' and 'openssl ca'. This
Bodo Möller [Mon, 5 Mar 2001 11:09:43 +0000 (11:09 +0000)]
New option '-subj arg' for 'openssl req' and 'openssl ca'.  This
sets the subject name for a new request or supersedes the
subject name in a given request.

Add options '-batch' and '-verbose' to 'openssl req'.

Submitted by: Massimiliano Pala <madwolf@hackmasters.net>
Reviewed by: Bodo Moeller

23 years agoincrease emailAddress_max
Bodo Möller [Sun, 4 Mar 2001 01:33:55 +0000 (01:33 +0000)]
increase emailAddress_max

23 years agoEC_set_half and the 'h' component of struct bn_ec_struct are unnecessary.
Bodo Möller [Sat, 3 Mar 2001 15:31:34 +0000 (15:31 +0000)]
EC_set_half and the 'h' component of struct bn_ec_struct are unnecessary.
The computations for which h was used can be done more efficiently
by using BN_rshift1.

23 years agoFor SSLv2, return the SSLv2 method, not the SSLv23 method. This way,
Richard Levitte [Fri, 2 Mar 2001 12:17:57 +0000 (12:17 +0000)]
For SSLv2, return the SSLv2 method, not the SSLv23 method.  This way,
it's possible to reuse an SSLv2 session.

23 years agoSort platforms lexicographically as well. Also, support more than two
Richard Levitte [Fri, 2 Mar 2001 12:14:54 +0000 (12:14 +0000)]
Sort platforms lexicographically as well.  Also, support more than two
variants of a symbol.

23 years agoSpelling corrected.
Richard Levitte [Fri, 2 Mar 2001 10:57:54 +0000 (10:57 +0000)]
Spelling corrected.

23 years agoIntroduce the possibility to access global variables through
Richard Levitte [Fri, 2 Mar 2001 10:38:19 +0000 (10:38 +0000)]
Introduce the possibility to access global variables through
functions on platform were that's the best way to handle exporting
global variables in shared libraries.  To enable this functionality,
one must configure with "EXPORT_VAR_AS_FN" or defined the C macro
"OPENSSL_EXPORT_VAR_AS_FUNCTION" in crypto/opensslconf.h (the latter
is normally done by Configure or something similar).

To implement a global variable, use the macro OPENSSL_IMPLEMENT_GLOBAL
in the source file (foo.c) like this:

OPENSSL_IMPLEMENT_GLOBAL(int,foo)=1;
OPENSSL_IMPLEMENT_GLOBAL(double,bar);

To declare a global variable, use the macros OPENSSL_DECLARE_GLOBAL
and OPENSSL_GLOBAL_REF in the header file (foo.h) like this:

OPENSSL_DECLARE_GLOBAL(int,foo);
#define foo OPENSSL_GLOBAL_REF(foo)
OPENSSL_DECLARE_GLOBAL(double,bar);
#define bar OPENSSL_GLOBAL_REF(bar)

The #defines are very important, and therefore so is including the
header file everywere where the defined globals are used.

The macro OPENSSL_EXPORT_VAR_AS_FUNCTION also affects the definition
of ASN.1 items, but that structure is a bt different.

The largest change is in util/mkdef.pl which has been enhanced with
better and easier to understand logic to choose which symbols should
go into the Windows .def files as well as a number of fixes and code
cleanup (among others, algorithm keywords are now sorted
lexicographically to avoid constant rewrites).

23 years agoTypo, spotted by "Greg Stark" <gstark@ethentica.com>.
Lutz Jänicke [Thu, 1 Mar 2001 16:50:11 +0000 (16:50 +0000)]
Typo, spotted by "Greg Stark" <gstark@ethentica.com>.

23 years agoFix bug in copy_email() which would not
Dr. Stephen Henson [Thu, 1 Mar 2001 13:32:11 +0000 (13:32 +0000)]
Fix bug in copy_email() which would not
find emailAddress at start of subject name.

23 years agoFix a bug which caused BN_div to produce the
Dr. Stephen Henson [Wed, 28 Feb 2001 00:51:48 +0000 (00:51 +0000)]
Fix a bug which caused BN_div to produce the
wrong result if rm==num and num < 0.

23 years ago%f conversion bug fix
Ulf Möller [Tue, 27 Feb 2001 23:59:18 +0000 (23:59 +0000)]
%f conversion bug fix
Submitted by: Henrik Eriksson <henrik.eriksson@axis.com>

23 years agodon't read from tty in test mode
Ulf Möller [Tue, 27 Feb 2001 21:10:21 +0000 (21:10 +0000)]
don't read from tty in test mode

23 years agorun self-test with no-krb5
Ulf Möller [Tue, 27 Feb 2001 21:05:55 +0000 (21:05 +0000)]
run self-test with no-krb5

23 years agoMacOSX doesn't have ftime().
Richard Levitte [Tue, 27 Feb 2001 08:14:32 +0000 (08:14 +0000)]
MacOSX doesn't have ftime().
Spotted by Pieter Bowman <bowman@math.utah.edu>

23 years agoTypo in comment.
Dr. Stephen Henson [Mon, 26 Feb 2001 23:34:14 +0000 (23:34 +0000)]
Typo in comment.

23 years agoEnhance OCSP_request_verify() so it finds the signers certificate
Dr. Stephen Henson [Mon, 26 Feb 2001 14:17:58 +0000 (14:17 +0000)]
Enhance OCSP_request_verify() so it finds the signers certificate
properly and supports several flags.

23 years agomake update
Richard Levitte [Mon, 26 Feb 2001 10:54:08 +0000 (10:54 +0000)]
make update
Note that all *_it variables are suddenly non-existant according to
libeay.num.  This is a bug that will be corrected.  Please be patient.

23 years agoAdd the CCITT pilot directory OIDs.
Richard Levitte [Mon, 26 Feb 2001 10:27:41 +0000 (10:27 +0000)]
Add the CCITT pilot directory OIDs.

23 years agoTrap an invalid ASN1_ITEM construction and print out
Dr. Stephen Henson [Sun, 25 Feb 2001 14:11:31 +0000 (14:11 +0000)]
Trap an invalid ASN1_ITEM construction and print out
the errant field for more ASN1 error conditions.

23 years agoNew function and options to check OCSP response validity.
Dr. Stephen Henson [Sat, 24 Feb 2001 13:50:06 +0000 (13:50 +0000)]
New function and options to check OCSP response validity.

23 years agoPrint out OID of unknown signature or public key
Dr. Stephen Henson [Sat, 24 Feb 2001 01:42:21 +0000 (01:42 +0000)]
Print out OID of unknown signature or public key
algorithms.

23 years agoStop PKCS7_verify() core dumping with unknown public
Dr. Stephen Henson [Sat, 24 Feb 2001 01:38:56 +0000 (01:38 +0000)]
Stop PKCS7_verify() core dumping with unknown public
key algorithms and leaking if the signature verify
fails.

23 years agoDescribe new callback for session id generation.
Lutz Jänicke [Fri, 23 Feb 2001 21:38:42 +0000 (21:38 +0000)]
Describe new callback for session id generation.

23 years agoSSL_get_version() was an easy one :-)
Lutz Jänicke [Fri, 23 Feb 2001 21:05:56 +0000 (21:05 +0000)]
SSL_get_version() was an easy one :-)

23 years agoThat statement seems to be not true. In fact, I have said that I would
Ulf Möller [Fri, 23 Feb 2001 18:22:58 +0000 (18:22 +0000)]
That statement seems to be not true. In fact, I have said that I would
like to use libtool, but not automake.

Let's investigate that further, or leave the question open for now.

23 years agoautoconf would be useful...
Ulf Möller [Fri, 23 Feb 2001 18:00:06 +0000 (18:00 +0000)]
autoconf would be useful...

23 years agoMake OCSP cert id code tolerate a missing issuer certificate
Dr. Stephen Henson [Fri, 23 Feb 2001 13:04:24 +0000 (13:04 +0000)]
Make OCSP cert id code tolerate a missing issuer certificate
or serial number.

23 years agoOops, forgot CHANGES entry for ASN1_ITEM_FUNCTIONS.
Dr. Stephen Henson [Fri, 23 Feb 2001 13:02:56 +0000 (13:02 +0000)]
Oops, forgot CHANGES entry for ASN1_ITEM_FUNCTIONS.

23 years agoGet rid of ASN1_ITEM_FUNCTIONS dummy function
Dr. Stephen Henson [Fri, 23 Feb 2001 12:47:06 +0000 (12:47 +0000)]
Get rid of ASN1_ITEM_FUNCTIONS dummy function
prototype hack. This unfortunately means that
every ASN1_*_END construct cannot have a
trailing ;

23 years agomake depend.
Richard Levitte [Fri, 23 Feb 2001 11:57:35 +0000 (11:57 +0000)]
make depend.

23 years agoInitial support for ASN1_ITEM_FUNCTION option to
Dr. Stephen Henson [Fri, 23 Feb 2001 03:16:09 +0000 (03:16 +0000)]
Initial support for ASN1_ITEM_FUNCTION option to
change the way ASN1 modules are exported.

Still needs a bit of work for example the hack which a
dummy function prototype to avoid compilers warning about
multiple ;s.

23 years agoI missed one.
Geoff Thorpe [Fri, 23 Feb 2001 00:09:50 +0000 (00:09 +0000)]
I missed one.

23 years agoFix an oversight - when checking a potential session ID for conflicts with
Geoff Thorpe [Fri, 23 Feb 2001 00:02:56 +0000 (00:02 +0000)]
Fix an oversight - when checking a potential session ID for conflicts with
an SSL_CTX's session cache, it is necessary to compare the ssl_version at
the same time (a conflict is defined, courtesy of SSL_SESSION_cmp(), as a
matching id/id_length pair and a matching ssl_version). However, the
SSL_SESSION that will result from the current negotiation does not
necessarily have the same ssl version as the "SSL_METHOD" in use by the
SSL_CTX - part of the work in a handshake is to agree on an ssl version!

This is fixed by having the check function accept an SSL pointer rather
than the SSL_CTX it belongs to.

[Thanks to Lutz for illuminating the full extent of my stupidity]