Commit graph

455 commits

Author SHA1 Message Date
Dr. Stephen Henson
3c07b4c2ee Various Win32 related fixes. Doesn't compile yet on
Win32 but it is getting there...

Update mkdef.pl to handle ASN1_ANY and fix headers.

Stop various VC++ warnings.

Include some fixes from "Peter 'Luna' Runestig"
<peter@runestig.com>

Remove external declaration for des_set_weak_key_flag:
it doesn't exist.
2000-12-21 01:38:55 +00:00
Dr. Stephen Henson
9c67ab2f26 Make mkdef.pl parse some ASN1 IMPLEMENT macros.
Initial support for variables in DEF files.
2000-12-16 01:19:24 +00:00
Ulf Möller
6e2dad1cc7 "Andrew W. Gray" <agray@iconsinc.com> says /GD is no longer a valid
compiler switch.
2000-12-15 20:59:37 +00:00
Ulf Möller
f27b45d237 Don't check for bc at all. We can now run a meaningful test even if
it is missing.
2000-12-06 16:39:09 +00:00
Richard Levitte
322006dcb1 During the self test, we only want to know what bctest says on
stderr...
2000-12-06 10:58:13 +00:00
Richard Levitte
db01d55671 Have the self test use bctest to check that bc is sane. 2000-12-06 10:54:31 +00:00
Bodo Möller
dcbd0d74d5 Fix BN_is_... macros.
Fix BN_gcd.
Analyze BN_mod_inverse.
Add BN_kronecker.
"make update".
2000-11-27 21:17:20 +00:00
Bodo Möller
78a0c1f18d modular arithmetics
"make update"
2000-11-26 16:42:38 +00:00
Richard Levitte
74e10aa58b make update 2000-11-14 13:39:38 +00:00
Richard Levitte
5f524accc1 Get the Rijndael function declarations. 2000-11-14 13:24:06 +00:00
Richard Levitte
451e60e99f Detect and mark functions that no longer exist. 2000-11-14 13:20:10 +00:00
Richard Levitte
993ea851f5 Add Rijndael as things to look through. 2000-11-14 10:51:00 +00:00
Richard Levitte
ccb9643f02 Remove references to RSAref. The glue library is but a memory to fade
away now...
2000-11-08 17:51:37 +00:00
Richard Levitte
8bb4ad88d8 make update 2000-10-27 11:09:52 +00:00
Richard Levitte
eb64730b9c The majority of the OCSP code from CertCo. 2000-10-27 11:05:35 +00:00
Richard Levitte
5270e7025e Merge the engine branch into the main trunk. All conflicts resolved.
At the same time, add VMS support for Rijndael.
2000-10-26 21:07:28 +00:00
Richard Levitte
0a2221f9ad make update 2000-10-21 20:15:46 +00:00
Richard Levitte
3ab5651112 The experimental Rijndael code moved to the main trunk.
make update done.
2000-10-14 20:09:54 +00:00
Richard Levitte
5f97f508e4 make update 2000-10-13 08:27:00 +00:00
Ulf Möller
9e2c0f41d7 fix problems in the selftest 2000-10-11 00:08:15 +00:00
Richard Levitte
46b1b91309 Update 2000-09-25 10:22:39 +00:00
Richard Levitte
be054868a1 When creating a .def file, be a bit more selective so disabled
algorithms do not get in...
2000-09-25 10:21:23 +00:00
Richard Levitte
56245be46d Change the Windows building scripts to enable DSO_WIN32. 2000-09-24 14:48:51 +00:00
Ulf Möller
eb206eb8be print the perlasm rule only for linux-elf (it seems it confuses some
version of make for Mingw32)
----------------------------------------------------------------------
----------------------------------------------------------------------
2000-09-23 19:24:06 +00:00
Richard Levitte
d176986488 Ugly hack to make sure static libraries are usable. Without this,
anything that just links with libeay32.lib or libssl32.lib will get an
error saying the __imp__RegQueryValueEx is unresolved.

The right thing would really be to fix crypto/rand/rand_win.c to load
ADVAPI32.DLL dynamically, but that won't be done just before a
release.
2000-09-21 15:16:20 +00:00
Richard Levitte
33b1a4c218 Wrong variable used. It's funny how some bugs take a long time
getting triggered...
2000-09-20 14:47:04 +00:00
Richard Levitte
645749ef98 On VMS, stdout may very well lead to a file that is written to in a
record-oriented fashion.  That means that every write() will write a
separate record, which will be read separately by the programs trying
to read from it.  This can be very confusing.

The solution is to put a BIO filter in the way that will buffer text
until a linefeed is reached, and then write everything a line at a
time, so every record written will be an actual line, not chunks of
lines and not (usually doesn't happen, but I've seen it once) several
lines in one record.  Voila, BIO_f_linebuffer() is born.

Since we're so close to release time, I'm making this VMS-only for
now, just to make sure no code is needlessly broken by this.  After
the release, this BIO method will be enabled on all other platforms as
well.
2000-09-20 13:55:50 +00:00
Richard Levitte
5ef8093732 Oops, no engine in the main trunk. 2000-09-17 15:45:43 +00:00
Richard Levitte
6d50071e84 Tell users that a rewrite might be a good idea. 2000-09-17 15:41:24 +00:00
Richard Levitte
1c86d93ca5 'make update' 2000-09-15 22:13:38 +00:00
Richard Levitte
d63b8db852 mkdef.pl still needed better logic. Also, the semantics of the
platforms list is clarified (it's however not quite followed in the
RSAREF case...).

RSAREF is also checked now.
2000-09-11 20:04:58 +00:00
Richard Levitte
965c17756a mkdef.pl has erroneous conditions to check if a symbol is excluded
from the given target.  Fixed, I hope.
2000-09-11 17:31:05 +00:00
Richard Levitte
4d0c6b2936 I started with a make update, but a rewrite was actually needed.
Perhaps we should make rewrites the default thing to do?
2000-09-11 11:45:02 +00:00
Richard Levitte
724f9694a6 *.num rewitten to include the extra information. 2000-09-07 08:44:13 +00:00
Richard Levitte
948d0125db Major hack of mkdef.pl. There should be no more need to redo the
process when some symbols are missing.  Instead, all needed info is
saved in the .num files, including what conditions are needed for a
specific symbol to exist.

This was needed for the work I'm doing with shared libraries under
VMS.
2000-09-07 08:43:08 +00:00
Bodo Möller
75cb225989 'make update' 2000-09-06 12:34:10 +00:00
Bodo Möller
bbb8de0966 Avoid abort() throughout the library, except when preprocessor
symbols for debugging are defined.
2000-09-04 15:34:43 +00:00
Richard Levitte
967f4ca847 New option 'ctestall' for mkdef.pl, that makes it not only generate
existing functions, but really all functions that exist in libeay.num
and ssleay.num.  This is a good check on how much we should actually
clean up the number files.
2000-08-17 21:26:22 +00:00
Richard Levitte
3009458e2f MD4 implemented. Assar Westerlund provided the digest code itself and the test utility, I added the bits to get a EVP interface, the command line utility and the speed test 2000-08-14 14:05:53 +00:00
Richard Levitte
aa04f1d7ad "make update" 2000-08-02 03:44:16 +00:00
Richard Levitte
8886f118db This isn't entirely necessary if you do everything right from the
start, but can save you some trouble.  Just ignore "shared" if it
comes up among the given options, at least for now...
2000-07-24 20:34:29 +00:00
Richard Levitte
f944e7845c "make update" 2000-07-24 10:02:47 +00:00
Richard Levitte
f6cd2d38c0 Show the running line count and definition cont in debug mode. That
has helped me a bit when I ran into trouble.
2000-07-24 07:01:57 +00:00
Ulf Möller
d55a3cf19d Profiling option for mk1mf.pl 2000-07-21 19:00:38 +00:00
Dr. Stephen Henson
4dd4535441 Change mkstack.pl so it now sorts each group
into lexical order. Previously it depended on
the order of files in the directory.

This should now mean that all systems will
agree on the order of safestack.h and will
not change it needlessly and avoid massive
needless commits to safestack.h in future.

It wont however avoid this one :-(
2000-06-22 00:34:27 +00:00
Dr. Stephen Henson
130832150c Fixes for Win32 build.
This is mostly a work around for the old VC++ problem
that it treats func() as func(void).

Various prototypes had been added to 'compare' function
pointers that triggered this. This could be fixed by removing
the prototype, adding function pointer casts to every call or
changing the passed function to use the expected arguments.
I mostly did the latter.

The mkdef.pl script was modified to remove the typesafe
functions which no longer exist.

Oh and some functions called OPENSSL_freeLibrary() were
changed back to FreeLibrary(), wonder how that happened :-)
2000-06-21 02:25:30 +00:00
Dr. Stephen Henson
7ef8206859 Handle ASN1_SET_OF and PKCS12_STACK_OF using function
casts in the same way as STACK_OF.
2000-06-20 18:45:28 +00:00
Richard Levitte
562ba1715a 'make update' 2000-06-19 16:51:41 +00:00
Richard Levitte
c79223040d Add support for dynamically created and destroyed mutexes. This will
be needed in some ENGINE code, and might serve elsewhere as well.
Note that it's implemented in such a way that the locking itself is
done through the same CRYPTO_lock function as the static locks.

WARNING: This is currently experimental and untested code (it will get
tested soon, though :-)).
2000-06-18 15:59:04 +00:00
Richard Levitte
a8b07aa4e9 First of all, with the current macros, we should never get any
type-specific stack function.  Second, even when we don't build any of
those functions, DECLARE_STACK_OF lines should not find themselves
into $def.
2000-06-18 14:06:40 +00:00
Bodo Möller
3f39e5ae6c Using speaking "variable" names in macros so that e.g. grepping for
sk_whatever_insert and sk_whatever_set immediately reveals the subtle
difference in parameter order.

Change mkstack.pl so that safestack.h is not rewritten when
nothing has changed.
2000-06-17 23:41:44 +00:00
Dr. Stephen Henson
3aceb94b9e Safe stack reorganisation in terms of function casts.
After some messing around this seems to work but needs
a few more tests. Working out the syntax for sk_set_cmp_func()
(cast it to a function that itself returns a function pointer)
was painful :-(

Needs some testing to see what other compilers think of this
syntax.

Also needs similar stuff for ASN1_SET_OF etc etc.
2000-06-16 23:29:26 +00:00
Geoff Thorpe
e9a68cfbc3 Currently the DSO_METHOD interface has one entry point to bind all
"symbols" including functions (of all prototypes( and variables. Whilst
casting any function type to another violates ANSI C (I believe), it is
a necessary evil in shared-library APIs. However, it is quite
conceivable that functions in general and data symbols could very well
be represented differently to each other on some systems, as Bodo said;

> Since the function/object distinction is a lot more likely to be
> important on real-life platforms supporting DSO *and* it can be quite
> easily done *and* it will silence compilers that don't like
> assignments from void pointers to function pointer variables, why
> not do it?

I agree. So this change splits the "dso_bind" handler in DSO_METHOD
into "dso_bind_var" and "dso_bind_func". Similarly the exported
function DSO_bind() has been split in two. I've also put together
changes for the various DSO_METHOD implementations, but so far only
DSO_dlfcn() has been tested. BTW: The prototype for dso_bind had been
a bit strange so I've taken the opportunity to change its shape (in
both variations).

Also, the README has been updated - particularly with a note about
using customised native name-translation for shared libraries (and that
you can't do it yet).
2000-06-16 10:45:36 +00:00
Dr. Stephen Henson
d3ed8ceb3d Add support for the modified SGC key format used in IIS. 2000-06-15 23:48:05 +00:00
Bodo Möller
9ef876f269 Report "error" (usually just "File exists", which is harmless)
when symlink() fails.
2000-06-14 10:09:46 +00:00
Geoff Thorpe
1c4f90a05d Enable DSO support on alpha (OSF1), cc and gcc.
Also, "make update" has added some missing functions to libeay.num,
updated the TABLE for the alpha changes, and updated thousands of
dependancies that have changed from recent commits.
2000-06-13 12:59:38 +00:00
Bodo Möller
dc434bbcb0 Slightly faster DSA verification (BN_mod_exp2_mont),
marginally faster BN_mod_exp for 1024 bit exponents.
2000-06-08 20:26:03 +00:00
Ulf Möller
e7cae74725 Increased consideration for stupid Linux users. 2000-06-06 02:45:18 +00:00
Geoff Thorpe
7edd20916a "make update" + stripping the type-specific stack functions out of
libeay.num and ssleay.num.
2000-06-01 06:07:19 +00:00
Geoff Thorpe
e41c8d6ad4 This change will cause builds (by default) to not use different STACK
structures and functions for each stack type. The previous behaviour
can be enabled by configuring with the "-DDEBUG_SAFESTACK" option.
This will also cause "make update" (mkdef.pl in particular) to
update the libeay.num and ssleay.num symbol tables with the number of
extra functions DEBUG_SAFESTACK creates.

The way this change works is to accompany each DECLARE_STACK_OF()
macro with a set of "#define"d versions of the sk_##type##_***
functions that ensures all the existing "type-safe" stack calls are
precompiled into the underlying stack calls. The presence or abscence
of the DEBUG_SAFESTACK symbol controls whether this block of
"#define"s or the DECLARE_STACK_OF() macro is taking effect. The
block of "#define"s is in turn generated and maintained by a perl
script (util/mkstack.pl) that encompasses the block with delimiting
C comments. This works in a similar way to the auto-generated error
codes and, like the other such maintenance utilities, is invoked
by the "make update" target.

A long (but mundane) commit will follow this with the results of
"make update" - this will include all the "#define" blocks for
each DECLARE_STACK_OF() statement, along with stripped down
libeay.num and ssleay.num files.
2000-06-01 05:13:52 +00:00
Richard Levitte
602ef2ae00 Result of "make update" 2000-05-31 21:35:38 +00:00
Geoff Thorpe
547bf7f983 "make update"
Also, corrects the linux-elf-arm config string, it was previously setting
$des_obj = dlfcn :-)
2000-05-30 12:59:43 +00:00
Geoff Thorpe
e212226828 This declaration seems to have been added into the header file accidently.
There's no trace of it being implemented and it doesn't seem to have been
intended given that it is prototyped with a BIO yet there was a BIO-
specific version added in at the same time.
2000-05-29 03:17:45 +00:00
Richard Levitte
a45623c447 'make update' 2000-05-19 13:44:28 +00:00
Richard Levitte
145d39fbe5 Remove extra comma (creates a unnessecary null element, right?). 2000-05-19 13:36:29 +00:00
Ulf Möller
c22e4b19e6 Missing cases when no_rsa is defined
Submitted by: Zeroknowledge
2000-05-15 19:20:10 +00:00
Ulf Möller
b222eb6443 linux-elf bugfix
Submitted by:
Reviewed by:
PR:
2000-04-27 15:07:15 +00:00
Geoff Thorpe
ffb488781f Thanks to "make update" ... 2000-04-19 23:02:12 +00:00
Bodo Möller
e5c84d5152 New function ERR_error_string_n. 2000-04-14 23:36:15 +00:00
Richard Levitte
7a807ad8a7 "make update" 2000-04-09 12:52:40 +00:00
Geoff Thorpe
9ec0126ed2 This commit ties the new DSO code (crypto/dso/) into the build for a
variety of platforms. A few are missing, and they will be added in
eventually, but as this is new stuff, it was better to not break lots of
platforms in one go that we can't easily test. The changes to "Configure"
should illustrate how to add support to other systems if you feel like
having a go.

NB: I'll add something shortly to allow you to add "dlfcn.h" support on
those platforms that don't have (or need) a dlfcn.h header file. (The
symbol for Configure will probably by "dlfcn_no_h").

Thanks to Richard Levitte, who is responsible for the dso_dl.c support,
understanding the trickier aspects of the build process, and giving great
feedback on everything else.

[Don't use this stuff if you're easily offended by changes to the
interface or behaviour - it's still work in progress.]

PR:
2000-04-04 22:32:19 +00:00
Richard Levitte
eff5f6124c Add a default banner. Contributed by Joon Radley <jradley@vps.co.za> 2000-03-28 18:56:04 +00:00
Richard Levitte
edbcba6c6b Don't force the use of GNU make with Borland C++ Builder. Contributed by Joon Radley <jradley@vps.co.za> 2000-03-28 18:54:27 +00:00
Ulf Möller
b313adc4b6 OpenBSD complains. 2000-03-20 18:19:38 +00:00
Richard Levitte
be1755f1cf make update 2000-03-20 07:35:38 +00:00
Ulf Möller
1f39d082c6 make update 2000-03-19 02:18:45 +00:00
Bodo Möller
24aaff588a Remove "Makefile.uni" files and some related stuff.
This was meant for building individual ciphers separately;
but nothing of this is maintained, it does not work
because we rely on central configuration by the Configure
utility with <openssl/opensslconf.h> etc., so the files
are only wasting space and time.
2000-03-14 13:56:00 +00:00
Bodo Möller
59fc2b0fc2 Preserve reason strings in automatically build tables. 2000-03-05 00:19:36 +00:00
Bodo Möller
0cff255077 Change output text (ar is not a linker). 2000-03-04 02:06:04 +00:00
Ulf Möller
c7fecee8b5 The selftest sometimes lacked important information 2000-03-04 00:22:56 +00:00
Ulf Möller
2da0c11926 Support assembler for Mingw32. 2000-02-28 19:16:41 +00:00
Dr. Stephen Henson
9b95f1df4b Fix so Win32 compiles again... 2000-02-27 01:39:41 +00:00
Ulf Möller
775c63fc02 Reorganize bn_mul.c (no bugfix yet), remove obsolete files in BN library. 2000-02-26 22:16:47 +00:00
Bodo Möller
6d0d5431d4 More get0 et al. changes. Also provide fgrep targets in CHANGES
where the new functions are mentioned.
2000-02-26 08:36:46 +00:00
Richard Levitte
7bd3a58022 make update 2000-02-26 04:48:22 +00:00
Dr. Stephen Henson
c7cb16a8ff Rename functions for new convention. 2000-02-26 01:55:33 +00:00
Bodo Möller
a7b991bd68 Don't define platform-dependent preprocessor symbols for OPENSSL_THREAD_DEFINES.
"make update".
2000-02-24 18:19:50 +00:00
Bodo Möller
331b59214b Avoid filename "test.c" because otherwise "make test"
will invoke a default rule built into make.
2000-02-24 09:48:12 +00:00
Ulf Möller
4c5fac4ac4 Fix NO_RSA (misplaced #endif). 2000-02-24 04:41:03 +00:00
Ulf Möller
ac9c1bcb81 remove test "goto err" 2000-02-24 03:03:01 +00:00
Ulf Möller
d7f0ab5ff4 New make target "report" to run util/selftest.pl 2000-02-23 23:47:05 +00:00
Ulf Möller
71308c3bb5 *** empty log message *** 2000-02-23 22:07:59 +00:00
Ulf Möller
720b590f56 Run the test suite and generate a report. 2000-02-23 21:58:06 +00:00
Dr. Stephen Henson
72b60351f1 Change EVP_MD_CTX_type so it is more logical and add EVP_MD_CTX_md for
the old functionality.

Various warning fixes.

Initial EVP symmetric cipher docs.
2000-02-22 02:59:26 +00:00
Ulf Möller
4ec19e203c Fix gcc warnings. 2000-02-20 20:59:21 +00:00
Dr. Stephen Henson
8a208cba97 New functions and option to use NEW in certificate requests. 2000-02-18 00:54:21 +00:00
Dr. Stephen Henson
cd3c54e50f Add -pass argument to 'enc'.
Fix to make Win32 compile work again.
2000-02-17 00:41:43 +00:00
Bodo Möller
cbcc5c01f9 Update. 2000-02-11 16:31:04 +00:00
Dr. Stephen Henson
ff8a4c47ce Rename the X509V3_*_d2i functions to X509_get_ext_d2i() etc.
This better reflects their behaviour.
2000-02-07 01:17:22 +00:00
Dr. Stephen Henson
66430207a4 Add support for some broken PKCS#8 formats. 2000-02-05 21:07:56 +00:00
Bodo Möller
37e48b88ad Generate just one error code if iterated SSL_CTX_get() fails.
Avoid enabled 'assert()' in production library.
2000-02-05 19:29:00 +00:00
Dr. Stephen Henson
af57d84312 Rename SSLeay_add_all_algorithms() et al to
OpenSSL_add_all_algorithms(). Move these into
separate files so they work properly.
2000-02-04 14:01:38 +00:00
Bodo Möller
b136aa5423 Correct spelling as it was done in the source. 2000-02-04 00:42:21 +00:00
Bodo Möller
a87030a1ed Make DSA_generate_parameters, and fix a couple of bug
(including another problem in the s3_srvr.c state machine).
2000-01-30 02:23:03 +00:00
Richard Levitte
294b3c1a9c Since pod2man is still evolving, and some sites (among others dev.openssl.org)
don't have a version that will handle the L<foo(1)|foo(1)> construct yet, here
is a copy from my laptop (slightly modifed to work independently of the place
where perl itself resides).
2000-01-27 20:23:29 +00:00
Bodo Möller
52732b38da Some comments added, and slight code clean-ups. 2000-01-26 22:36:55 +00:00
Dr. Stephen Henson
dd9d233e2a Tidy up CRYPTO_EX_DATA structures. 2000-01-23 23:41:49 +00:00
Ulf Möller
b838465135 WINDOWS is defined in e_os.h. The problem was WIN32 (the new egcs uses _WIN32). 2000-01-20 23:59:24 +00:00
Bodo Möller
6481f3d29d Define WINDOWS in all Mingw32 cases. 2000-01-20 23:16:07 +00:00
Bodo Möller
97c1f605f4 Define WINDOWS. 2000-01-20 23:08:07 +00:00
Dr. Stephen Henson
6e6bc352b1 Finish off the X509_ATTRIBUTE string stuff. 2000-01-20 01:37:17 +00:00
Dr. Stephen Henson
77b47b9036 Rename X509_att*() stuff to X509at_*(), add X509_REQ wrappers. 2000-01-19 01:02:13 +00:00
Bodo Möller
a8eeb155b5 Avoid some warnings, and run "make update". 2000-01-14 17:28:48 +00:00
Ulf Möller
9ea76b951d Submitted by:
Reviewed by:
PR:
2000-01-07 03:30:36 +00:00
Ulf Möller
0f583f69f3 Honor the no-xxx Configure options when creating .DEF files. 2000-01-07 03:17:47 +00:00
Dr. Stephen Henson
35f4850ae0 More X509_ATTRIBUTE changes. 2000-01-07 00:55:54 +00:00
Dr. Stephen Henson
20432eae41 Fix some of the command line password stuff. New function
that can automatically determine the type of a DER encoded
"traditional" format private key and change some of the
d2i functions to use it instead of requiring the application
to work out the key type.
2000-01-01 16:42:49 +00:00
Dr. Stephen Henson
6447cce372 Simplify the trust structure: basically zap the bit strings and
represent everything by OIDs.
1999-12-29 00:40:28 +00:00
Dr. Stephen Henson
e6f3c5850e New {i2d,d2i}_PrivateKey_{bio, fp} functions. 1999-12-26 19:20:03 +00:00
Dr. Stephen Henson
36217a9424 Allow passwords to be included on command line for a few
more utilities.
1999-12-24 23:53:57 +00:00
Dr. Stephen Henson
12aefe78f0 Fixes so NO_RSA works again. 1999-12-24 17:26:33 +00:00
Dr. Stephen Henson
525f51f6c9 Add PKCS#8 utility functions and add PBE options. 1999-12-23 02:02:42 +00:00
Bodo Möller
2b6313d0da Rename
CRYPTO_add_info    => CRYPTO_push_info
   CRYPTO_remove_info => CRYPTO_pop_info
in the hope that these names are more descriptive;
and "make update".
1999-12-18 13:51:47 +00:00
Dr. Stephen Henson
a2121e0aee Add i2d_ASN1_PRINTABLESTRING() function, and do 'make update' 1999-12-08 00:56:15 +00:00
Dr. Stephen Henson
21131f00d7 New function PKC12_newpass() 1999-12-03 03:46:18 +00:00
Dr. Stephen Henson
dd4134101f Change the trust and purpose code so it doesn't need init
either and has a static and dynamic mix.
1999-12-02 02:33:56 +00:00
Dr. Stephen Henson
bb7cd4e3eb Remainder of SSL purpose and trust code: trust and purpose setting in
SSL_CTX and SSL, functions to set them and defaults if no values set.
1999-11-29 22:35:00 +00:00
Dr. Stephen Henson
13938aceca Add part of chain verify SSL support code: not complete or doing anything
yet.

Add a function X509_STORE_CTX_purpose_inherit() which implements the logic
of "inheriting" purpose and trust from a parent structure and using a default:
this will be used in the SSL code and possibly future S/MIME.

Partial documentation of the 'verify' utility. Still need to document how all
the extension checking works and the various error messages.
1999-11-29 01:09:25 +00:00
Dr. Stephen Henson
d4cec6a13d New options to the -verify program which can be used for chain verification.
Extend the X509_PURPOSE structure to include shortnames for purposed and default
trust ids.

Still need some extendable trust checking code and integration with the SSL and
S/MIME code.
1999-11-26 00:27:07 +00:00
Dr. Stephen Henson
6d3724d3b0 Support for authority information access extension.
Fix so EVP_PKEY_rset_*() check return codes.
1999-11-23 18:50:28 +00:00
Dr. Stephen Henson
52664f5081 Transparent support for PKCS#8 private keys in RSA/DSA.
New universal public key format.

Fix CRL+cert load problem in by_file.c

Make verify report errors when loading files or dirs
1999-11-21 22:28:31 +00:00
Dr. Stephen Henson
a716d72734 Support for otherName in GeneralName. 1999-11-19 02:19:58 +00:00
Dr. Stephen Henson
a0ad17bb6c Fix to the -revoke option in ca. It was leaking memory, crashing and just
plain not working :-(

Also fix some memory leaks in the new X509_NAME code.

Fix so new app_rand code doesn't crash 'x509' and move #include so it compiles
under Win32.
1999-11-08 13:58:08 +00:00
Dr. Stephen Henson
74400f7348 Continued multibyte character support.
Add a bunch of functions to simplify the creation of X509_NAME structures.

Change the X509_NAME_entry_add stuff in req/ca so it no longer uses
X509_NAME_entry_count(): passing -1 has the same effect.
1999-10-27 00:15:11 +00:00
Bodo Möller
b6b1f0d0aa Update Borland C++ builder support.
Submitted by: Janez Jere <jj@void.si>
1999-10-25 21:38:43 +00:00
Bodo Möller
798757762a Improve support for running everything as a monolithic application.
Submitted by: Lennart Bång, Bodo Möller
1999-10-25 19:36:01 +00:00
Dr. Stephen Henson
f769ce3ea4 More multibyte character support.
Functions to get keys from EVP_PKEY structures.
1999-10-25 02:00:09 +00:00
Dr. Stephen Henson
462f79ec44 New function ASN1_mbstring_copy() to handle ASN1 string copying. Ultimately
this will be used to clear up the horrible DN mess.
1999-10-21 13:20:49 +00:00
Dr. Stephen Henson
08e9c1af6c Replace the macros in asn1.h with function equivalents. Also make UTF8Strings
tolerated in certificates.
1999-10-20 01:50:23 +00:00
Bodo Möller
39b30b6ab7 "make update" 1999-09-27 15:12:30 +00:00
Bodo Möller
5671876d1d "make update" 1999-09-10 15:34:55 +00:00
Dr. Stephen Henson
aef838fc95 New UTF8 utility functions to parse/generate UTF8 strings. 1999-09-04 17:19:55 +00:00
Bodo Möller
1e4149350c Handle "#if 0" correctly (I hope) 1999-09-03 13:30:47 +00:00
Dr. Stephen Henson
8ce97163a2 Add new 'spkac' utility and several SPKAC utility functions. 1999-09-03 01:08:34 +00:00
Ulf Möller
43ca6c02dc make update. 1999-08-24 17:45:16 +00:00
Ulf Möller
27ad06a627 Compile pkcs7 and des apps. 1999-08-13 18:04:04 +00:00
Bodo Möller
99cc4f075c Remove -DWINDOWS in debug configuration.
Submitted by: Erik Johannisson <erik@johannisson.se>
1999-08-12 10:03:05 +00:00
Bodo Möller
019a7aba4a Updates.
Prototypes and constant declarations for non-copying reads and writes for
BIO pairs (which is totally untested as of now, so I don't yet commit
the actual source code, but reserve the numbers to avoid conflicts).
1999-08-10 11:36:22 +00:00
Bodo Möller
1a677f7aea DSA_dup_DH. 1999-08-05 11:53:07 +00:00
Dr. Stephen Henson
e9185df40e Change all the -'s to _'s. 1999-08-05 00:11:05 +00:00
Ulf Möller
4320afe3be Avoid path separator problems. 1999-07-29 17:27:29 +00:00
Ulf Möller
4f75a6e574 *** empty log message *** 1999-07-29 14:43:51 +00:00
Bodo Möller
571199434c Always use buildinf.h, which now includes the mk1mfinf.h data.
Using different files caused problems because the dependencies
in the Makefiles produced by mk1mf.pl were for the standard case,
i.e. mentioned buildinf.h and not mk1mfinf.h.
1999-07-29 12:57:23 +00:00
Dr. Stephen Henson
3e3d2ea2fc New function OBJ_obj2txt() 1999-07-27 22:22:58 +00:00
Bodo Möller
7fbd8db184 close files. 1999-07-27 09:13:49 +00:00
Bodo Möller
2e0fc87599 Use correct CFLAG definition for makefile.one builds. 1999-07-27 09:10:36 +00:00
Bodo Möller
488c06579e change CFLAGS to those given in Configure 1999-07-26 12:59:02 +00:00
Bodo Möller
9715f4786d -DPLATFORM and -DCFLAGS command line arguments are no longer used. 1999-07-26 11:56:18 +00:00
Bodo Möller
74678cc2f8 Additional user data argument to pem_password_cb function type
and to lots of PEM_... functions.
Submitted by: Damien Miller <dmiller@ilogic.com.au>
1999-07-21 20:57:16 +00:00
Dr. Stephen Henson
bbdb543844 More NASM support code it still doesn't work but it doesn't work less than it
didn't work before :-)
1999-07-12 18:12:43 +00:00
Bodo Möller
03cd49447f New function RSA_check_key,
openssl rsa -check
1999-07-11 22:00:55 +00:00
Dr. Stephen Henson
f598cd13a3 Various changes to stop VC++ choking under Win32. 1999-07-11 17:09:04 +00:00
Dr. Stephen Henson
ce8b257413 New functions to allow RSA_METHODs to be changed without poking round in
RSA structure internals.
1999-06-29 22:22:42 +00:00
Dr. Stephen Henson
170afce58d New function PKCS7_signatureVerify to allow the signing certificate to
be explicitly stated with PKCS#7 verify.

Also fix for util/mkerr.pl: if the -nostatic option is being used this will be
for an external library so the autogenerated C file should include the
header file as:
#include "any/path/to/header.h"
rather than the internal library form:
#include <openssl/header.h>
1999-06-22 13:33:22 +00:00
Dr. Stephen Henson
dbd665c210 Change the PEM_* function prototypes to use DECLARE_PEM macros and change
util/mkdef.pl to handle this. Also do a 'make update'.
1999-06-22 01:38:31 +00:00
Bodo Möller
f76a8084df Perl variable names are case-sensitive ... 1999-06-21 11:32:25 +00:00
Bodo Möller
a6c1b3a9ac "make update" 1999-06-21 10:04:48 +00:00
Dr. Stephen Henson
8623f693d9 New functions CONF_load_bio() and CONF_load_fp() to load a configuration
file from a bio or fp. Added some more constification to the BN library.
1999-06-20 17:36:11 +00:00
Bodo Möller
9209c9fc1a "make update" 1999-06-18 16:44:29 +00:00
Bodo Möller
5b5dd0c057 "make update" 1999-06-12 01:08:14 +00:00
Dr. Stephen Henson
b7d135b353 Two new functions to write out PKCS#8 private keys. Also fixes for some of
the the PBE code and a new constant PKCS5_DEFAULT_ITER for the default
iteration count if it is passed as zero.
1999-06-10 17:32:52 +00:00
Bodo Möller
7740a1c6ef "make update" (added to top Makefile, and applied). 1999-06-09 16:18:53 +00:00
Ulf Möller
f439123f38 Prevent name conflicts.
Submitted by: Janez Jere <jj@void.si>
1999-06-08 14:50:20 +00:00
Bodo Möller
eabea024e8 Don't make assumptions on what the path looks like. 1999-06-08 10:17:55 +00:00
Bodo Möller
1aad3392e5 Fix for BIO pairs. 1999-06-07 22:51:55 +00:00
Bodo Möller
ce9449cf50 Use the same path to perl in all #! lines in util. 1999-06-07 22:48:50 +00:00
Bodo Möller
6576774b51 mkdir -p is not fully portable (according to Marc Crispin,
NeXTstep creates a directory called -p); now mkdir-p.pl does its job.
1999-06-07 13:33:50 +00:00
Dr. Stephen Henson
69cbf46811 Rewrite PBE handling read to support PKCS#5 v2.0 and update the function
list for Win32.
1999-06-06 13:07:13 +00:00
Bodo Möller
505cdbec5c Update. 1999-06-04 23:14:24 +00:00
Ulf Möller
eaeb1870d4 Define a macro to avoid name conflicts. 1999-06-04 12:42:35 +00:00
Bodo Möller
246ffa4571 more typesafe stacks ... 1999-05-31 22:10:15 +00:00
Bodo Möller
748365eed7 More consistency. 1999-05-31 21:58:18 +00:00
Bodo Möller
21f213edfb Change self-description (mklink.pl is not just faster than the last
released version of mklink.sh -- the latter couldn't even handle
the ../../include/openssl case).
1999-05-20 01:43:28 +00:00
Dr. Stephen Henson
e84240d422 New functions sk_set, sk_value and sk_num to replace existing macros: this is
to minimise the effects on existing code.
1999-05-19 12:45:16 +00:00
Bodo Möller
21419a7413 Update. 1999-05-15 12:20:56 +00:00
Bodo Möller
ad2cb8b4f6 Return 0 for an error, 1 for no error from read_options;
that's what the calling code seems to expect.
1999-05-15 11:46:00 +00:00
Dr. Stephen Henson
1ad2ecb66f The encoding of negative ASN1 INTEGERs and the conversion of BNs to negative
integers was completely broken. Also added a NEG_PUBKEY_BUG compilation option
to compensate for public keys improperly encoded as negative integers.
1999-05-14 18:21:21 +00:00
Ulf Möller
ce457a54ff Oops. Close the file. 1999-05-13 17:24:35 +00:00
Ulf Möller
31ff97b28a mk1mf.pl and mkdef.pl read OPTIONS from toplevel Makefile.
Configure no longer changes files in place.
1999-05-13 10:28:14 +00:00
Dr. Stephen Henson
10243d97fd Various PKCS#7 related fixes,tidies and comments. 1999-05-11 00:52:46 +00:00
Dr. Stephen Henson
c8b4185079 Kill evil casts, fix PKCS#7 and add new X509V3 Function. 1999-05-09 16:39:11 +00:00
Dr. Stephen Henson
a5ab0532ca Various Win32 fixes. Win95 doesn't support MoveFileEx() (which was used for a
Win32 version of rename() ). There isn't a precise rename() equivalent under
Win95: the standard rename() complains if the destination already exists so
replaced with a combination of unlink() and MoveFile().
1999-05-08 22:46:51 +00:00
Ulf Möller
8cf6522820 no-xxx option to exclude ciphers. 1999-05-08 10:42:06 +00:00
Ulf Möller
33f7bc9683 Mingw32. 1999-05-08 10:40:13 +00:00
Ulf Möller
7d5d27b9a3 Generate DLLs with Mingw32. 1999-05-07 22:55:27 +00:00
Ulf Möller
12d7d32f24 Get the Mingw32 makefiles right. 1999-05-07 17:51:29 +00:00
Bodo Möller
559b52ac46 Restored path names that were changed by a previous "Configure" run.
(Rather than changing the files in places, we really should use .in files.)
Submitted by:
Reviewed by:
PR:
1999-05-06 23:46:26 +00:00
Bodo Möller
ce0d9f049a Some comments.
Submitted by:
Reviewed by:
PR:
1999-05-06 23:36:54 +00:00
Ulf Möller
4769633350 Add missing semicolon.
Submitted by: Janez Jere <jj@void.si>
1999-05-06 11:45:47 +00:00
Ulf Möller
31a674d8c9 Support additional Win32 compilers.
Borland C submitted by: Janez Jere <jj@void.si>
1999-05-06 00:46:34 +00:00
Bodo Möller
81c8ee091c Hopefully improved compatibility with earlier versions of Perl5.
Submitted by:
Reviewed by:
PR:
1999-04-30 11:32:41 +00:00
Bodo Möller
dea9babc59 Superseded by mklink.pl.
Submitted by:
Reviewed by:
PR:
1999-04-29 22:06:28 +00:00
Bodo Möller
bf6841f5c1 Typo fixed.
Submitted by:
Reviewed by:
PR:
1999-04-28 23:42:28 +00:00
Bodo Möller
065e106f25 A faster (and more general, and better documented) replacement for mklink.sh.
Submitted by:
Reviewed by:
PR:
1999-04-28 22:07:28 +00:00
Ulf Möller
b5929507e3 Update NO_* macros. 1999-04-27 11:56:15 +00:00
Ulf Möller
a9be3af5ad Remove NOPROTO definitions and error code comments. 1999-04-26 16:43:10 +00:00
Dr. Stephen Henson
47339f6179 Extensively changed the DEF file generator mkdef.pl to use a modified version
of Ulf's prototype parser, also general tidying and fixing of several problems
with the original. Its still a bit of a hack but should work.

This is the last bit of the old code that uses the K&R prototypes: after some
testing they can finally go away...
1999-04-26 00:23:10 +00:00
Dr. Stephen Henson
a1e464f94a Fixes so it will compile again under Win32. 1999-04-25 20:57:09 +00:00
Dr. Stephen Henson
5043fc9fd5 Fix mkerr.pl to find functions returning function pointers (thanks Ulf!)
also add a few missing prototypes.
1999-04-25 11:17:44 +00:00
Bodo Möller
a75b81ad95 Removed traces of cryptall.h, and did a "make depend".
Submitted by:
Reviewed by:
PR:
1999-04-25 09:21:05 +00:00
Ulf Möller
b0b7b1c5ae New Configure option --openssldir to replace ssldir.pl. 1999-04-24 23:01:36 +00:00
Dr. Stephen Henson
7393480047 Change the command line options of mkerr.pl so -static is now default and
a -write option is needed to actually change anything. Second attempt at
getting rid of ERR, ERRC definitions: it might even work this time :-)
1999-04-24 17:28:43 +00:00
Dr. Stephen Henson
6e781e8e07 Delete the unnecessary ERR and ERRC lines in makefiles, add some functionality
to error code script: it can now find untranslatable function codes (usually
because the function is static and not defined in a header: occasionally because
of a typo...) and unreferenced function and reason codes. To see this try:
perl util/mkerr.pl -recurse -debug
Also fixed some typos in crypto/pkcs12 that this found :-)
Also tidy up some error calls that had to be all on one line: the old error
script couldn't find codes unless the call was all on one line.
1999-04-24 13:28:57 +00:00
Ulf Möller
0c6c96d44f ANSIfy, fix typo in error message, and remove redundant statement from
my code.
1999-04-24 11:23:20 +00:00
Dr. Stephen Henson
6d31193858 Complete rewrite of the error code generation script. It now runs as a single
script, translates function codes better and doesn't need the K&R function
prototypes to work (NB. the K&R prototypes can't be wiped just yet: they are
still needed by the DEF generator...). I also ran the script with the -rewrite
option to update all the header and source files.
1999-04-24 00:15:18 +00:00
Bodo Möller
ec577822f9 Change #include filenames from <foo.h> to <openssl.h>.
Submitted by:
Reviewed by:
PR:
1999-04-23 22:13:45 +00:00
Dr. Stephen Henson
f5fedc0497 Various fixes so Win32 compile may work. Convert GeneralNames to use safe stack. 1999-04-20 01:10:33 +00:00
Dr. Stephen Henson
28a98809d1 Add some utilities to support SXNet extension also add support in DEF files
generator to typesafe stacks.
1999-04-14 23:44:41 +00:00
Ulf Möller
a8da89186c Separate DSA functionality from ASN.1 encoding.
New functions DSA_do_sign and DSA_do_verify to provide access to
the raw DSA values.
1999-04-09 16:24:32 +00:00
Ulf Möller
99aab1619f New Makefile variables $(RANLIB) and $(PERL). 1999-04-01 12:34:33 +00:00
Dr. Stephen Henson
bc37a6b81c Remove deleted PKCS#12 functions from pkcs12.h, get rid of object creation
kludge, remove CRs from ssl_ciph.c and update Win32 functions for PKCS#12
code. It might compile under Win32 now ...
1999-03-29 22:18:54 +00:00
Dr. Stephen Henson
ee0508d411 Include pkcs12 program as part of openssl. This completes most of the PKCS#12
integration.
1999-03-29 17:50:26 +00:00
Ralf S. Engelschall
74355a3554 One more 0.9.2b 1999-03-22 15:44:10 +00:00
Ralf S. Engelschall
8b8839ba88 up_ver.pl is now obsolete 1999-03-22 15:01:30 +00:00
Ben Laurie
b4cadc6e13 Fix security hole. 1999-03-22 12:22:14 +00:00
Dr. Stephen Henson
e2e044faa1 Comment out the lines that generated by mk1mf.pl include three separate rules
that are equivalent to $(OUT_D). This was what was causing the 'too many rules'
warning under VC++.
1999-03-17 23:30:39 +00:00
Ralf S. Engelschall
7e37e72a3d Be less restrictive and allow also `perl util/perlpath.pl /path/to/bin/perl'
in addition to `perl util/perlpath.pl /path/to/bin', because this way one can
also use an interpreter named `perl5' (which is usually the name of Perl 5.xxx
on platforms where an Perl 4.x is still installed as `perl').

Submitted by: Matthias Loepfe <Matthias.Loepfe@adnovum.ch>
Reviewed by: Ralf S. Engelschall
1999-03-10 19:57:05 +00:00
Ralf S. Engelschall
637691e6b4 Let util/clean-depend.pl work also with older Perl 5.00x versions.
Submitted by: Matthias Loepfe <Matthias.Loepfe@adnovum.ch>
Reviewed by: Ralf S. Engelschall
1999-03-10 19:51:43 +00:00
Dr. Stephen Henson
83ec54b40d Make CC,CFLAG etc get passed to make links and various Win32 fixes. 1999-03-10 01:37:33 +00:00
Dr. Stephen Henson
0cc395796b Add missing funtions from non ANSI section of header files and add missing
ordinals to libeay.num.
1999-03-08 22:46:56 +00:00
Dr. Stephen Henson
6e0642407d Various fixes to Win32, update ssleay.num, libeay.num, shuffle various #ifdefs
around so more options appear in e_os.h
1999-03-08 18:41:15 +00:00
Ralf S. Engelschall
bb8f3c5879 General source tree makefile cleanups: Made `making xxx in yyy...' display
consistent in the source tree and replaced `/bin/rm' by `rm'.  Additonally
cleaned up the `make links' target: Remove unnecessary semicolons, subsequent
redundant removes, inline point.sh into mklink.sh to speed processing and no
longer clutter the display with confusing stuff. Instead only the actually
done links are displayed.
1999-03-06 12:32:06 +00:00
Dr. Stephen Henson
06c6849124 Fix the Win32 compile environment and add various changes so it will now compile
under Win32 (9X and NT) again. Note: some signed/unsigned changes recently
checked in were killing the Win32 compile.
1999-03-03 02:01:26 +00:00
Dr. Stephen Henson
e527ba09a6 Various changes to make this stuff compile under Win32 and VC++ with and
without -debug option to mk1mf.pl. Change _export to is_export (_export is
a reserved word under VC++). Add yucky function prototype function pointer
casts. Sanitise the included files in crypto/x509v3.

Also changed ssleay.exe target to openssl.exe
1999-02-22 01:26:40 +00:00
Dr. Stephen Henson
aa066b9e6e Add more functionality to issuer alt name and subject alt name. New options
to include email addresses from DN and copy details from issuer certificate.
Include examples in openssl.cnf, update Win32 ordinals.
1999-02-21 01:46:45 +00:00
Dr. Stephen Henson
ee5425d97d Patch so the new crl stuff actually compiles this time :-) Also update the
Win32 ordinals.
1999-02-19 02:26:21 +00:00
Dr. Stephen Henson
5c00879ef0 More Win32 fixes and upsdate INSTALL.W32 documentation. 1999-02-14 00:40:13 +00:00
Dr. Stephen Henson
e2d795cb96 Modify configure script to generate some files that Win32 needs and new
script that does the same as 'make files'.
1999-02-13 23:12:30 +00:00
Dr. Stephen Henson
55a9cc6e47 Make the 'crypto' and 'ssl' options in the perl script mkdef.pl really work,
also add an 'update' option to automatically append any new functions to the
ssleay.num and libeay.num files.
1999-02-11 01:39:30 +00:00
Dr. Stephen Henson
72b35c4a26 Oops! Restore ssleay.num: it got overwritten with libeay.num :-( 1999-02-01 01:25:19 +00:00
Dr. Stephen Henson
f614496cfb Delete bogus V3 prototype and update the *.num files to include ordinals for
the new functions. Update MINFO.
1999-02-01 01:17:53 +00:00
Dr. Stephen Henson
9b3086fe38 Fix various stuff: that VC++ 5.0 chokes on:
1. Add *lots* of missing prototypes for static ssl functions.
2. VC++ doesn't understand the 'LL' suffix for 64 bits constants: change bn.org
3. Add a few missing prototypes in pem.org
Fix mk1mf.pl so it outputs a Makefile that doesn't choke Win95.
Fix mkdef.pl so it doesn't truncate longer names.
1999-01-31 17:30:18 +00:00
Dr. Stephen Henson
679ab7c39e Update STATUS, modify ssl.h so mkdef.pl will pick up prototypes and
add x509v3.h to mkdef.pl list of include files.
1999-01-30 17:35:01 +00:00
Ben Laurie
6f93539970 This time, get it right. 1999-01-19 23:25:22 +00:00
Ben Laurie
8039257dbc Finally lay dependencies to rest (I hope!). 1999-01-19 21:36:31 +00:00
Paul C. Sutton
a472dde430 ssldir.pl did not correctly set the directory in utils/mk1mk.pl when
perl5 was used.
1999-01-01 14:17:55 +00:00
Ralf S. Engelschall
f10a5c2a96 *** empty log message *** 1998-12-23 08:18:47 +00:00
Ralf S. Engelschall
5f32680329 Switch version string to SSLeay/OpenSSL 1998-12-23 07:53:55 +00:00
Ralf S. Engelschall
f1c236f849 Switch to OpenSSL name 1998-12-23 07:38:54 +00:00
Ralf S. Engelschall
c537fb08cd OpenTLS ready 1998-12-22 16:01:06 +00:00