Compare commits

..

169 Commits

Author SHA1 Message Date
Geoff Thorpe
1df586bec2 Add a note about the recent DSO changes in CHANGES. 2000-10-26 20:02:33 +00:00
Richard Levitte
551e5990d2 On HP-UX, at least when shl_* are used, the libraries have the
extension .sl instead of .so.
2000-10-26 18:42:35 +00:00
Richard Levitte
d9efa3616a For the operating systems where it matters, it is sometimes good to
translate library names by only adding ".so" to them without
prepending them with "lib".  Add the flag DSO_FLAG_NAME_TRANSLATION_EXT_ONLY
for that purpose.
2000-10-26 18:30:34 +00:00
Geoff Thorpe
51c8dc37dd This changes the behaviour of the DSO mechanism for determining an
appropriate filename translation on the host system. Apart from this point,
users should also note that there's a slight change in the API functions
too. The DSO now contains its own to-be-converted filename
("dso->filename"), and at the time the DSO loads the "dso->loaded_filename"
value is set to the translated form. As such, this also provides an impicit
way of determining if the DSO is currently loaded or not. Except, perhaps,
VMS .... :-)

The various DSO_METHODs have been updated for this mechanism except VMS
which is deliberately broken for now, Richard is going to look at how to
fit it in (the source comments in there explain "the issue").

Basically, the new callback scheme allows the filename conversion to
(a) be turned off altogether through the use of the
    DSO_FLAG_NO_NAME_TRANSLATION flag,
(b) be handled in the default way using the default DSO_METHOD's converter
(c) overriden per-DSO by setting the override callback
(d) a mix of (b) and (c) - eg. implement an override callback that;
    (i) checks if we're win32 "if(strstr(dso->meth->name, "win32"))..."
        and if so, convert "blah" into "blah32.dll" (the default is
	otherwise to make it "blah.dll").
    (ii) default to the normal behaviour - eg. we're not on win32, so
         finish with (return dso->meth->dso_name_converter(dso,NULL)).
(e) be retried a number of times by writing a new DSO_METHOD where the
    "dso_load()" handler will call the converter repeatedly. Then the
    custom converter could use state information in the DSO to suggest
    different conversions or paths each time it is invoked.
2000-10-26 17:38:59 +00:00
Bodo Möller
28967cf079 rsautl.c requires RSA. 2000-10-26 12:05:57 +00:00
Ulf Möller
a2bbe59401 s_server not s_client 2000-10-23 19:13:35 +00:00
Bodo Möller
421cb50b2d Cert chain verification is useable by now.
Whether Steve is still working on 'proper' verification is up to
him to decide ...
2000-10-23 14:36:18 +00:00
Ulf Möller
0fa504b68d Correction from Tani Hosokawa <unknown@riverstyx.net> 2000-10-23 14:02:02 +00:00
Bodo Möller
705bfcf8e7 internal_verify now does know about extensions 2000-10-23 08:01:41 +00:00
Bodo Möller
4fb40db932 Don't ever set 'seeded' if RAND_status() returned 0
(although maybe this static variable should be abolished totally,
it was introduced before RAND_status existed).
2000-10-23 07:37:03 +00:00
Richard Levitte
9dd0463852 When building shared libraries on HP-UX 10.20 and HP-UX 11.00 (32bit),
ld warns that -Fl "may not be supported in future releases".  We know
that, and are doing things in HP-UX 11 (64bit), so turn off that
warning with +vnocompatwarnings.
2000-10-22 21:37:39 +00:00
Richard Levitte
5cb5715f97 It seems like grep isn't as capable as I thought on some Unix systems.
Use egrep instead.
2000-10-22 16:46:47 +00:00
Richard Levitte
e9a583aa26 Pointer error corrected 2000-10-22 12:47:01 +00:00
Richard Levitte
f3f316f13f If the functions get_dh*() are declared static, they should be defined the same way 2000-10-22 12:45:33 +00:00
Richard Levitte
99b1aaf2ec On some operating systems, MAX is defined. Call ours OSSL_MAX instead 2000-10-22 12:44:12 +00:00
Richard Levitte
53400da75c Document 2000-10-21 22:53:32 +00:00
Richard Levitte
2b59a6ac14 There's no reason why app_RAND_load_file() should return 0 when
RAND_status() hasn't.
Reported by Dale Stimson <dale@accentre.com>.
2000-10-21 22:43:07 +00:00
Richard Levitte
48d89b560c Krister Walfridsson <cato@df.lth.se> tells us sysctl lives in /sbin
since NetBSD 1.5.
2000-10-21 22:18:52 +00:00
Richard Levitte
b5a43800ef FreeBSD-elf can do threads. However, there seems to be confusion if
you should defined _THREAD_SAFE (I found that in an include file, and
that's what everybody tells me) or _THREADSAFE (that's what the gcc
manual says in the FreeBSD-specific section), so I defined both, just
to be safe.
2000-10-21 22:05:03 +00:00
Richard Levitte
0fd44e2ddb Add what's needed to get shared libraries on HP-UX.
N.B.: This has not been tested at all, that's my next step.
2000-10-21 21:24:11 +00:00
Richard Levitte
0a2221f9ad make update 2000-10-21 20:15:46 +00:00
Richard Levitte
567f17cfe0 Document the change to NCONF. 2000-10-21 20:01:34 +00:00
Dr. Stephen Henson
627ec355d8 Fix for bug (?) in assembly language routines for SHA1. This
causes MASM to complain and not produce valid debug info.
Hopefully this wont break anything else...

Also fix typo in e_rd.c
2000-10-20 00:36:45 +00:00
Dr. Stephen Henson
4184a78761 Move expired CA certificate. 2000-10-19 23:16:47 +00:00
Ulf Möller
bbdc9c98a8 give pseudo prototypes instead of macro definitions for better clarity 2000-10-19 22:02:21 +00:00
Ulf Möller
11b62699a1 "DESCRIPTION" is required. 2000-10-19 19:40:35 +00:00
Ulf Möller
14a74a21f0 correction from Lutz 2000-10-19 15:19:41 +00:00
Richard Levitte
c8cda405e7 Keep binary backward compatibility by putting new method function
pointers at the end of the structure.
2000-10-19 08:29:27 +00:00
Richard Levitte
befb3e7a4d Make it possible for methods to load from something other than a BIO,
by providing a function pointer that is given a name instead of a BIO.
For example, this could be used to load configuration data from an
LDAP server.
2000-10-19 08:26:32 +00:00
Richard Levitte
c6f1787bbd NCONF_get_number() has no error checking at all. As a replacement,
NCONF_get_number_e() is defined (_e for "error checking") and is
promoted strongly.  The old NCONF_get_number is kept around for
binary backward compatibility.
2000-10-19 08:03:14 +00:00
Ulf Möller
9bd3bd227f Add short overview, move header files section further down. 2000-10-18 23:08:55 +00:00
Ulf Möller
d0ef53bd2d cosmetic changes 2000-10-18 22:51:34 +00:00
Ulf Möller
8d3f155a66 cosmetic change 2000-10-18 22:01:47 +00:00
Richard Levitte
ef0ab7f94f John Denney <jdenney@ca.mdis.com> reports that we forgot to convert
Free to OPENSSL_free in the SSL demos.
2000-10-18 19:36:27 +00:00
Richard Levitte
bf55ece1c1 Two questions have been asked quite often lately. 2000-10-17 16:16:12 +00:00
Dr. Stephen Henson
51754ec835 Update test server certificate in apps/server.pem (it was expired). 2000-10-16 22:56:10 +00:00
Ben Laurie
1bc5dd3efc Always return a value.
Submitted by:
Reviewed by:
PR:
2000-10-16 13:08:16 +00:00
Richard Levitte
0ded1638ba CRYPTO_get_ex_new_index would never return an error. 2000-10-16 06:01:41 +00:00
Dr. Stephen Henson
71d525c9f6 Fix for typo in certificate directory lookup code. 2000-10-14 23:51:52 +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
82ce0b2308 Even when you don't want to create shared libraries, it's a good idea
to have the full extension information, so residual shared libraries
can be removed so the applications and test programs do not get linked
against them by mistake...
2000-10-13 16:04:20 +00:00
Richard Levitte
a22fb399cb Rework the system to generate shared libraries:
- Make note of the expected extension for the shared libraries and
    if there is a need for symbolic links from for example libcrypto.so.0
    to libcrypto.so.0.9.7.  There is extended info in Configure for
    that.

  - Make as few rebuilds of the shared libraries as possible.

  - Still avoid linking the OpenSSL programs with the shared libraries.

  - When installing, install the shared libraries separately from the
    static ones.
2000-10-13 15:25:06 +00:00
Richard Levitte
8df8f27513 Bump the shared library version (should have been done a while ago). 2000-10-13 15:09:06 +00:00
Richard Levitte
cde70093ac Make the new conf implementatoin bug-compatible with the old one.
Actually, it's a feature that it goes looking at environment
variables.  It's just a pity that it's at the cost of the error
checking...  I'll see if I can come up with a better interface for
this.
2000-10-13 08:30:06 +00:00
Richard Levitte
5f97f508e4 make update 2000-10-13 08:27:00 +00:00
Richard Levitte
553615f500 New docs and new facts in older docs.
Submitted by Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
2000-10-12 09:56:36 +00:00
Dr. Stephen Henson
924046ce75 Make non blocking I/O work for accept BIOs. 2000-10-12 01:50:33 +00:00
Ulf Möller
9e2c0f41d7 fix problems in the selftest 2000-10-11 00:08:15 +00:00
Richard Levitte
5ef67042f9 Do a favor to those who get weird compiles and report if RAND_pseudo_bytes
returns -1...
2000-10-10 15:08:30 +00:00
Richard Levitte
53fe8d5be5 A few small corrections to the SSL documentation.
Submitted by Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
2000-10-10 09:15:47 +00:00
Bodo Möller
8c23788dd1 BIO_sock_init() returns 1 for success and -1 for failure, not 0;
thus the condition '!BIO_sock_init()' doesn't make sense.
2000-10-09 16:40:16 +00:00
Geoff Thorpe
ef76e3dbda DSO_ctrl() changes have removed a couple of DSO_METHOD-specific functions
so I've regenerated the error numbers and strings for the DSO functions.
2000-10-09 01:57:54 +00:00
Richard Levitte
7ba839bfe2 Make sure ranlib is only used on .a libraries. 2000-10-09 00:50:04 +00:00
Richard Levitte
d2dcf4f40d Make sure that shareable libraries are turned off if we don't know how
to make them...
2000-10-09 00:48:30 +00:00
Geoff Thorpe
75a382bd90 None of the DSO_METHOD's were handling anything except generic messages.
These are now processed inside DSO_ctrl() itself.
2000-10-08 22:36:49 +00:00
Geoff Thorpe
5b0a0544f2 Time to get rid of some rather silly code duplication - some DSO_ctrl()
commands are common to all DSO_METHODs, hence handle them at the top.
2000-10-08 22:32:57 +00:00
Richard Levitte
a0ec9cf6d5 Linux on Alpha with gcc knows about shared libraries. 2000-10-08 19:40:07 +00:00
Richard Levitte
e9ebf346c4 Linux on Alpha has the configuration name linux-alpha-gcc, not
linux-alpha.
2000-10-08 19:38:28 +00:00
Dr. Stephen Henson
8ca533e378 More code for X509_print_ex() support. 2000-10-06 11:51:47 +00:00
Dr. Stephen Henson
d0c9858914 Global DirectoryString mask fix.
Add support for X509_NAME_print_ex() in req.

Initial code for cutomizable X509 print routines.
2000-10-04 01:16:32 +00:00
Richard Levitte
356c06c776 More SSL functions documented. Submitted by Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-10-03 22:02:28 +00:00
Richard Levitte
ef71cb6daf Document... 2000-10-01 21:46:43 +00:00
Richard Levitte
2e7e3d6ce9 Remove what was described by someone as "an EAY hack for compiling
SSLeay with Colin Plumb's MD5 implementation instead of his one".
2000-10-01 21:28:07 +00:00
Richard Levitte
a269d312da Include arpa/inet.h, since that's where htons() and friends are
supposed to be defined according to XPG4.2.
Found by Evan <n2xjk@ulster.net> for the MVS platform.
2000-09-29 20:14:57 +00:00
Ulf Möller
a87aa87bcc The des_modes manpage is in section 7. 2000-09-27 21:45:20 +00:00
Richard Levitte
6df3553255 A compiler warning removed. Thanks to the folks at HP! 2000-09-27 13:54:28 +00:00
Bodo Möller
2eaad87f36 Verbose output when installing manual pages so that you see that
something is going on (and what).
2000-09-26 12:23:55 +00:00
Bodo Möller
b7af080fb1 Add BUGS section. 2000-09-26 12:15:53 +00:00
Bodo Möller
3a0afe1eed Note read_ahead-flag related fixes. 2000-09-26 11:39:37 +00:00
Bodo Möller
086a32d754 Set s->read_ahead in SSL_new because SSL_clear no longer modifies it. 2000-09-26 11:38:05 +00:00
Bodo Möller
544ebbceb4 Don't modify s->read_ahead in SSL_clear, which is called from
accept/connect functions; those should not change the
read_ahead setting of the SSL structure.
2000-09-26 11:30:59 +00:00
Bodo Möller
6d0dcbedb1 Fix SSL_CTX_set_read_ahead macro.
Submitted by: Anders Gertz <gertz@epact.se>
2000-09-26 11:25:44 +00:00
Richard Levitte
88aeb646bd Document the change. 2000-09-25 11:12:27 +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
0acc90e5f7 echo=off works on NT, but not on W2K. 2000-09-25 09:30:32 +00:00
Richard Levitte
4e20a4e688 'ranlib' doesn't always run on some systems. That's actually
acceptable, since all that happens if it fails is a library with
an index, which makes linking slower, but still working correctly.
2000-09-25 08:53:15 +00:00
Richard Levitte
9ef9e78520 Make the algorithm implementations depend on the corresponding
selection macros.
2000-09-25 08:49:13 +00:00
Ulf Möller
393e826ec3 typo 2000-09-25 05:55:19 +00:00
Richard Levitte
c5e8580e7b Update the status and version number to 0.9.7-dev. 2000-09-24 17:31:37 +00:00
Richard Levitte
16221173c8 Forgot to change the STATUS file... 2000-09-24 15:42:34 +00:00
Richard Levitte
0e8f2fdfdd Time to build the release. Bump the version info accordingly. 2000-09-24 15:21:30 +00:00
Richard Levitte
fec8c79a7e make update 2000-09-24 14:54:31 +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
Ulf Möller
fda05b2155 spelling 2000-09-23 19:08:16 +00:00
Ulf Möller
8c4ab6d5ae update info to match the README. 2000-09-23 07:38:43 +00:00
Ulf Möller
8fdec3e558 stop perlpod from complaining. 2000-09-23 07:30:28 +00:00
Ulf Möller
69431c2998 more manpage links. 2000-09-23 07:16:17 +00:00
Ulf Möller
90d7fc1de4 tlhelp32.h 2000-09-23 05:46:41 +00:00
Ulf Möller
bb28bcdf98 Workaround for tlhelp32.h: place the missing header file in outinc 2000-09-23 05:19:16 +00:00
Ulf Möller
d49da3aa5b Add some missing info. 2000-09-23 05:17:40 +00:00
Ulf Möller
fc55bf3b20 tlhelp32.h is currently missing in Mingw32 (release 2.95.2 and 2.95.2-1) 2000-09-23 05:04:19 +00:00
Ulf Möller
03dbae0d20 URL to "latest" Mingw release (which is almost a year old :() 2000-09-23 02:06:08 +00:00
Bodo Möller
5a5accdd64 typo 2000-09-22 21:45:49 +00:00
Bodo Möller
f1192b7f2e Avoid protocol rollback. 2000-09-22 21:39:33 +00:00
Dr. Stephen Henson
dbba890cf1 Only use the new informational verify codes if we
specifically ask for them.

Fix typo in docs.
2000-09-22 21:32:08 +00:00
Richard Levitte
3f8b90c345 Catch V_ASN1_NULL. 2000-09-22 13:15:16 +00:00
Richard Levitte
28a63d3e6f Problem on FreeBSD/Alpha fixed. 2000-09-22 06:15:10 +00:00
Richard Levitte
318e09356b Kris Kennaway <kris@FreeBSD.org> tells us that FreeBSD/Alpha shouldn't
use an optimization higher than -O.
2000-09-22 06:06:25 +00:00
Richard Levitte
6b3a4ffe36 More reports 2000-09-21 20:49:47 +00:00
Richard Levitte
7f6e0a4c09 More reports 2000-09-21 20:09:16 +00:00
Dr. Stephen Henson
6cffb201f3 Fix ASN1_TYPE bug. 2000-09-21 18:57:00 +00:00
Richard Levitte
4b0f00b7ce More reports 2000-09-21 17:44:23 +00:00
Richard Levitte
4aa4f333ed Change IMPORTANT to WARNING for greater emphasis. 2000-09-21 17:21:15 +00:00
Richard Levitte
a04cfb72d5 More reports 2000-09-21 17:11:52 +00:00
Richard Levitte
1cbb729fdc Oops, if the target only had USE_TOD, an error message was issued... 2000-09-21 16:01:08 +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
c759ddd676 More reports. 2000-09-21 14:51:45 +00:00
Richard Levitte
9cfab47b18 Tests so far. 2000-09-21 14:26:12 +00:00
Richard Levitte
6e3dfc1f3b Tests so far. 2000-09-21 12:54:41 +00:00
Richard Levitte
ef63568e94 Prepare STATUS for the beta 3 reports. 2000-09-21 10:27:35 +00:00
Richard Levitte
d40898dfab Time to build beta 3. Bump the version numbers accordingly. 2000-09-21 09:08:44 +00:00
Richard Levitte
422e5a4807 make update 2000-09-21 07:16:40 +00:00
Richard Levitte
6397710486 I'm using GNU tar... 2000-09-21 07:15:52 +00:00
Richard Levitte
10bb0dbfec Changes by Jeffrey Altman <jaltman@columbia.edu> to make RAND_poll()
work better in Win32.  Verified by zhu qun-ying <qyzhu@krdl.org.sg>.
2000-09-21 07:02:27 +00:00
Richard Levitte
c19b6c922a Clarifications and new documents.
Submitted by Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE>
2000-09-21 06:46:15 +00:00
Richard Levitte
c5f8bbbc0b Portability patch for HP MPE/iX. Submitted by Mark Bixby <mark_bixby@hp.com> 2000-09-21 05:42:01 +00:00
Richard Levitte
4759abc5f2 New documents. Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-20 16:55:26 +00:00
Richard Levitte
e31e385ce3 Mistakes corrected. Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-20 16:52:05 +00:00
Richard Levitte
b22bda21a1 Add news and a description of the ENGINE part and how it's currently
distributed.
2000-09-20 15:52:26 +00:00
Bodo Möller
b38d84d867 Additions for 0.9.6. 2000-09-20 15:22:02 +00:00
Richard Levitte
50b14a38f5 Reports about a few old systems.
Reported by Bernhard Simon <bs@bsws.zid.tuwien.ac.at>
2000-09-20 15:15:37 +00:00
Richard Levitte
edb0d64367 AIX doesn't like ftime() either. 2000-09-20 15:10:16 +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
9a0c0d3f74 make update 2000-09-20 13:32:54 +00:00
Ulf Möller
7cae5f9fc8 ispell. 2000-09-20 03:42:15 +00:00
Ulf Möller
18edda0f92 Malloc() -> OPENSSL_malloc() etc. 2000-09-20 03:28:54 +00:00
Ulf Möller
89681b183d The RSA patent will have expired when the next version is released... 2000-09-20 03:25:33 +00:00
Ulf Möller
c8973693ab ispell. 2000-09-20 03:24:36 +00:00
Dr. Stephen Henson
4e87e05b25 Add docs for X509_get_ext_d2i() function.
Add some major changes to NEWS...
2000-09-20 00:50:25 +00:00
Bodo Möller
fe03519704 Totally remove the supposedly 'faster' variant in
BN_mod_mul_montgomery, which calls bn_sqr_recursive
without much preparation.

bn_sqr_recursive requires the length of its argument to be
a power of 2, which is not always the case here.
There's no reason for not using BN_sqr -- if a simpler
approach to squaring made sense, then why not change
BN_sqr?  (Using BN_sqr should also speed up DH where g is chosen
such that it becomes small [e.g., 2] when converted
to Montgomery representation.)

Case closed :-)
2000-09-19 23:25:00 +00:00
Richard Levitte
b004872c59 BSDI only supports ftime() through libcompat, which means it's
better not to use it.
2000-09-19 23:14:42 +00:00
Richard Levitte
933f32cc4d Document SSL_library_init() and it's aliases. Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-19 23:12:57 +00:00
Richard Levitte
c6def253b4 Type correction. Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-19 23:11:42 +00:00
Richard Levitte
dd3430a6e9 Extend the docs on setting the cipher list. Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-19 23:10:32 +00:00
Bodo Möller
cb1fbf8e6a Clarification about Montgomery problem 2000-09-19 23:06:14 +00:00
Ulf Möller
51012a0969 Note about contribtions from the US 2000-09-19 20:52:30 +00:00
Bodo Möller
a45bd29535 Document BN_mod_mul_montgomery bug;
make disabled code slightly more correct (this does not solve
the problem though).
2000-09-19 18:02:15 +00:00
Dr. Stephen Henson
688fbf5475 Fix a typo in apps/pkcs12.c which was using the wrong part of
ASN1_TYPE (though they are both ASN1_STRING so it didn't cause
any problems).

Make 'siglen' an int in apps/dgst.c so we can check the return
value of BIO_read() etc.
2000-09-19 17:51:11 +00:00
Bodo Möller
f4364e0730 Disable buggy code variant in BN_mod_mul_montgomery that was enabled
in 0.9.6-beta1 and 0.9.6-beta2 and caused the BN_mont_exp_mont_word()
failure (bug report "openssh 2.2.0p1 fails with openssl 0.9.6-beta1").
2000-09-19 17:21:52 +00:00
Richard Levitte
fae8762630 It seems like all HP-UX are successes as soon as the -ldl vs. -ldld
quirk is fixed.
2000-09-19 16:14:47 +00:00
Richard Levitte
28178bcf24 FreeBSD only supports ftime() through libcompat, which means it's
better not to use it.
2000-09-19 16:13:38 +00:00
Richard Levitte
cec7fe4da6 A few more HP-UX reports. Reported by Kevin Steves <stevesk@sweden.hp.com> 2000-09-19 15:55:43 +00:00
Richard Levitte
c15602f48e Reorder the Blowfish documentation so the low-level routines do not get so prominent, and make sure to say out loud what they expect. 2000-09-19 06:15:33 +00:00
Dr. Stephen Henson
3b2cbbcb9a Clarify the BIO_seek() mess and related issues.
Buffering BIO docs.
2000-09-18 23:05:33 +00:00
Ulf Möller
c69c47b9fe ispell 2000-09-18 22:58:02 +00:00
Ulf Möller
5d1a5ddb65 Note the BN_mod_exp_word bug. (Markus Friedl provided a test program.) 2000-09-18 22:03:37 +00:00
Richard Levitte
f97cc10372 A couple more reports. 2000-09-18 16:53:05 +00:00
Richard Levitte
a3829b8650 ftime() is not supported on SGI.
Reported by Steve Robb <steve@eu.c2.net>
2000-09-18 16:52:05 +00:00
Richard Levitte
615513ba52 New documentation about things related to SSL_CIPHER. Submitted by Lutz Jaenicke <Lutz.Jaenicke@aet.TU-Cottbus.DE> 2000-09-18 16:42:30 +00:00
Richard Levitte
2bd8aaefa4 HP-UX 64-bit has dlfcn, so let's use that instead of the old dl. 2000-09-18 16:34:41 +00:00
Richard Levitte
252d333fc1 A few more reports 2000-09-18 16:17:41 +00:00
Richard Levitte
2aa4e2e2d4 No engine stuff in the main trunk. 2000-09-18 16:07:20 +00:00
Richard Levitte
c6cda0bdb7 A few more reports 2000-09-18 13:35:05 +00:00
Dr. Stephen Henson
730e37edb6 Work around for Netscape PKCS#7 signedData bug. 2000-09-18 12:30:57 +00:00
Richard Levitte
4b6e6ab91c A few more reports 2000-09-18 11:55:12 +00:00
Richard Levitte
24842e0586 Going through performance statistics sometimes generates an exception,
so disable that part.
Reported by Jeffrey Altman <jaltman@columbia.edu>
2000-09-18 11:51:07 +00:00
Richard Levitte
159cf04e86 cyclecount is only used when __GNUC__ isn't defined. 2000-09-18 11:44:40 +00:00
Richard Levitte
676432d4e1 Disable the net statistics gathering code, since different compilers
disagree on the proper syntax and type names.
2000-09-18 11:24:32 +00:00
Richard Levitte
1e72b77994 HP-UX didn't go through 2000-09-18 09:36:25 +00:00
Richard Levitte
1cf3bbaea6 Typo in the added hpux targets. -ldl should be -ldld. 2000-09-18 09:34:05 +00:00
Richard Levitte
d448429e52 The test status as it has been reported so far 2000-09-18 09:21:01 +00:00
Richard Levitte
4534fb1c86 Unless we cast, thorough compilers will complain 2000-09-18 08:40:55 +00:00
Richard Levitte
362f2b69ff Jeffrey Altman reminds us to initialize some variables and ercommends the use of LOadLibrary instead of GetModuleHandle 2000-09-18 01:48:38 +00:00
Richard Levitte
3c184d8180 Declare the availability of beta 2 in STATUS. 2000-09-17 22:36:25 +00:00
Richard Levitte
a440d6636f A new beta is being released. Change the version numbers
accordingly.
2000-09-17 20:19:44 +00:00
Richard Levitte
91e8cc6216 make update 2000-09-17 20:18:06 +00:00
283 changed files with 11541 additions and 9104 deletions

147
CHANGES
View File

@@ -2,10 +2,153 @@
OpenSSL CHANGES OpenSSL CHANGES
_______________ _______________
Changes between 0.9.5a and 0.9.6 [xx XXX 2000] Changes between 0.9.6 and 0.9.7 [xx XXX 2000]
*) Rework the filename-translation in the DSO code. It is now possible to
have far greater control over how a "name" is turned into a filename
depending on the operating environment and any oddities about the
different shared library filenames on each system.
[Geoff Thorpe]
*) Support threads on FreeBSD-elf in Configure.
[Richard Levitte]
*) Add the possibility to create shared libraries on HP-UX
[Richard Levitte]
*) Fix for SHA1 assembly problem with MASM: it produces
warnings about corrupt line number information when assembling
with debugging information. This is caused by the overlapping
of two sections.
[Bernd Matthes <mainbug@celocom.de>, Steve Henson]
*) NCONF changes.
NCONF_get_number() has no error checking at all. As a replacement,
NCONF_get_number_e() is defined (_e for "error checking") and is
promoted strongly. The old NCONF_get_number is kept around for
binary backward compatibility.
Make it possible for methods to load from something other than a BIO,
by providing a function pointer that is given a name instead of a BIO.
For example, this could be used to load configuration data from an
LDAP server.
[Richard Levitte]
*) Fix typo in get_cert_by_subject() in by_dir.c
[Jean-Marc Desperrier <jean-marc.desperrier@certplus.com>]
*) Rework the system to generate shared libraries:
- Make note of the expected extension for the shared libraries and
if there is a need for symbolic links from for example libcrypto.so.0
to libcrypto.so.0.9.7. There is extended info in Configure for
that.
- Make as few rebuilds of the shared libraries as possible.
- Still avoid linking the OpenSSL programs with the shared libraries.
- When installing, install the shared libraries separately from the
static ones.
[Richard Levitte]
*) Fix for non blocking accept BIOs. Added new I/O special reason
BIO_RR_ACCEPT to cover this case. Previously use of accept BIOs
with non blocking I/O was not possible because no retry code was
implemented. Also added new SSL code SSL_WANT_ACCEPT to cover
this case.
[Steve Henson]
*) Added the beginnings of Rijndael support.
[Ben Laurie]
*) Fix for bug in DirectoryString mask setting. Add support for
X509_NAME_print_ex() in 'req' and X509_print_ex() function
to allow certificate printing to more controllable, additional
'certopt' option to 'x509' to allow new printing options to be
set.
[Steve Henson]
*) Clean old EAY MD5 hack from e_os.h.
[Richard Levitte]
*) Fix SSL_CTX_set_read_ahead macro to actually use its argument.
Copy SSL_CTX's read_ahead flag to SSL object directly in SSL_new
and not in SSL_clear because the latter is also used by the
accept/connect functions; previously, the settings made by
SSL_set_read_ahead would be lost during the handshake.
[Bodo Moeller; problems reported by Anders Gertz <gertz@epact.se>]
*) Correct util/mkdef.pl to be selective about disabled algorithms.
Previously, it would create entries for disableed algorithms no
matter what.
[Richard Levitte]
Changes between 0.9.5a and 0.9.6 [24 Sep 2000]
*) In ssl23_get_client_hello, generate an error message when faced
with an initial SSL 3.0/TLS record that is too small to contain the
first two bytes of the ClientHello message, i.e. client_version.
(Note that this is a pathologic case that probably has never happened
in real life.) The previous approach was to use the version number
from the record header as a substitute; but our protocol choice
should not depend on that one because it is not authenticated
by the Finished messages.
[Bodo Moeller]
*) More robust randomness gathering functions for Windows.
[Jeffrey Altman <jaltman@columbia.edu>]
*) For compatibility reasons if the flag X509_V_FLAG_ISSUER_CHECK is
not set then we don't setup the error code for issuer check errors
to avoid possibly overwriting other errors which the callback does
handle. If an application does set the flag then we assume it knows
what it is doing and can handle the new informational codes
appropriately.
[Steve Henson]
*) Fix for a nasty bug in ASN1_TYPE handling. ASN1_TYPE is used for
a general "ANY" type, as such it should be able to decode anything
including tagged types. However it didn't check the class so it would
wrongly interpret tagged types in the same way as their universal
counterpart and unknown types were just rejected. Changed so that the
tagged and unknown types are handled in the same way as a SEQUENCE:
that is the encoding is stored intact. There is also a new type
"V_ASN1_OTHER" which is used when the class is not universal, in this
case we have no idea what the actual type is so we just lump them all
together.
[Steve Henson]
*) 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. BIO_f_linebuffer() is
the answer.
Currently, it's a VMS-only method, because that's where it has
been tested well enough.
[Richard Levitte]
*) Remove 'optimized' squaring variant in BN_mod_mul_montgomery,
it can return incorrect results.
(Note: The buggy variant was not enabled in OpenSSL 0.9.5a,
but it was in 0.9.6-beta[12].)
[Bodo Moeller]
*) Disable the check for content being present when verifying detached
signatures in pk7_smime.c. Some versions of Netscape (wrongly)
include zero length content when signing messages.
[Steve Henson]
*) New BIO_shutdown_wr macro, which invokes the BIO_C_SHUTDOWN_WR *) New BIO_shutdown_wr macro, which invokes the BIO_C_SHUTDOWN_WR
BIO_ctrl (for BIO pairs). BIO_ctrl (for BIO pairs).
[Bodo M<>ller]
*) Add DSO method for VMS. *) Add DSO method for VMS.
[Richard Levitte] [Richard Levitte]
@@ -239,7 +382,7 @@
[Steve Henson] [Steve Henson]
*) Changes needed for Tandem NSK. *) Changes needed for Tandem NSK.
[Scott Uroff scott@xypro.com] [Scott Uroff <scott@xypro.com>]
*) Fix SSL 2.0 rollback checking: Due to an off-by-one error in *) Fix SSL 2.0 rollback checking: Due to an off-by-one error in
RSA_padding_check_SSLv23(), special padding was never detected RSA_padding_check_SSLv23(), special padding was never detected

159
Configure
View File

@@ -10,7 +10,7 @@ use strict;
# see INSTALL for instructions. # see INSTALL for instructions.
my $usage="Usage: Configure [no-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [no-hw-xxx|no-hw] [rsaref] [no-threads] [no-asm] [no-dso] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] os/compiler[:flags]\n"; my $usage="Usage: Configure [no-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [rsaref] [no-threads] [no-asm] [no-dso] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] os/compiler[:flags]\n";
# Options: # Options:
# #
@@ -23,20 +23,11 @@ my $usage="Usage: Configure [no-<cipher> ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-
# default). This needn't be set in advance, you can # default). This needn't be set in advance, you can
# just as well use "make INSTALL_PREFIX=/whatever install". # just as well use "make INSTALL_PREFIX=/whatever install".
# #
# no-hw-xxx do not compile support for specific crypto hardware.
# Generic OpenSSL-style methods relating to this support
# are always compiled but return NULL if the hardware
# support isn't compiled.
# no-hw do not compile support for any crypto hardware.
# rsaref use RSAref # rsaref use RSAref
# [no-]threads [don't] try to create a library that is suitable for # [no-]threads [don't] try to create a library that is suitable for
# multithreaded applications (default is "threads" if we # multithreaded applications (default is "threads" if we
# know how to do it) # know how to do it)
# [no-]shared [don't] try to create shared libraries when supported. # [no-]shared [don't] try to create shared libraries when supported.
# IT IS NOT RECOMMENDED TO USE "shared"! Since this is a
# development branch, the positions of the ENGINE symbols
# in the transfer vector are constantly moving, so binary
# backward compatibility can't be guaranteed in any way.
# no-asm do not use assembler # no-asm do not use assembler
# no-dso do not compile in any native shared-library methods. This # no-dso do not compile in any native shared-library methods. This
# will ensure that all methods just return NULL. # will ensure that all methods just return NULL.
@@ -136,32 +127,32 @@ my %table=(
# surrounds it with #APP #NO_APP comment pair which (at least Solaris # surrounds it with #APP #NO_APP comment pair which (at least Solaris
# 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic" # 7_x86) /usr/ccs/bin/as fails to assemble with "Illegal mnemonic"
# error message. # error message.
"solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:solaris-shared:-fPIC", "solaris-x86-gcc","gcc:-O3 -fomit-frame-pointer -m486 -Wall -DL_ENDIAN -DNO_INLINE_ASM::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_sol_asm}:dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### SPARC Solaris with GNU C setups #### SPARC Solaris with GNU C setups
"solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-fPIC", "solaris-sparcv7-gcc","gcc:-O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC", "solaris-sparcv8-gcc","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-fPIC", "solaris-sparcv9-gcc","gcc:-mcpu=ultrasparc -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8 # gcc pre-2.8 doesn't understand -mcpu=ultrasparc, so fall down to -mv8
# but keep the assembler modules. # but keep the assembler modules.
"solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:solaris-shared:-fPIC", "solaris-sparcv9-gcc27","gcc:-mv8 -O3 -fomit-frame-pointer -Wall -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus-gcc27.o:::asm/md5-sparcv8plus-gcc27.o::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### ####
"debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC", "debug-solaris-sparcv8-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mv8 -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:solaris-shared:-fPIC", "debug-solaris-sparcv9-gcc","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -O -g -mcpu=ultrasparc -Wall -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:asm/sparcv8plus.o:::::::::dlfcn:solaris-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### SPARC Solaris with Sun C setups #### SPARC Solaris with Sun C setups
# DO NOT use /xO[34] on sparc with SC3.0. It is broken, and will not pass the tests # DO NOT use /xO[34] on sparc with SC3.0. It is broken, and will not pass the tests
"solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC", "solaris-sparc-sc3","cc:-fast -O -Xa -DB_ENDIAN::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2. # SC4.0 doesn't pass 'make test', upgrade to SC5.0 or SC4.2.
# SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8 # SC4.2 is ok, better than gcc even on bn as long as you tell it -xarch=v8
# SC5.0 note: Compiler common patch 107357-01 or later is required! # SC5.0 note: Compiler common patch 107357-01 or later is required!
"solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC", "solaris-sparcv7-cc","cc:-xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC", "solaris-sparcv8-cc","cc:-xarch=v8 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC", "solaris-sparcv9-cc","cc:-xtarget=ultra -xarch=v8plus -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC", "solaris64-sparcv9-cc","cc:-xtarget=ultra -xarch=v9 -xO5 -xstrconst -xdepend -Xa -DB_ENDIAN -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR::::asm/md5-sparcv9.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### ####
"debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC", "debug-solaris-sparcv8-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xarch=v8 -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8.o:::::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC", "debug-solaris-sparcv9-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG_ALL -xtarget=ultra -xarch=v8plus -g -O -xstrconst -Xa -DB_ENDIAN -DBN_DIV2W -DULTRASPARC::-D_REENTRANT:-lsocket -lnsl -ldl:BN_LLONG RC4_CHAR RC4_CHUNK_LL DES_PTR DES_RISC1 DES_UNROLL BF_PTR:asm/sparcv8plus.o:::asm/md5-sparcv8plus.o::::::dlfcn:solaris-shared:-KPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### SPARC Linux setups #### SPARC Linux setups
"linux-sparcv7","gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::", "linux-sparcv7","gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::",
@@ -223,41 +214,41 @@ my %table=(
# #
#!#"hpux-parisc-cc","cc:-Ae +O3 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", #!#"hpux-parisc-cc","cc:-Ae +O3 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl",
# Since there is mention of this in shlib/hpux10-cc.sh # Since there is mention of this in shlib/hpux10-cc.sh
"hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-parisc-cc-o4","cc:-Ae +O4 +ESlit -z -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-parisc-gcc","gcc:-O3 -DB_ENDIAN -DBN_DIV2W:::-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl", "hpux64-parisc-cc","cc:-Ae +DD64 +O3 +ESlit -z -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dlfcn:hpux64-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# More attempts at unified 10.X and 11.X targets for HP C compiler. # More attempts at unified 10.X and 11.X targets for HP C compiler.
# #
# Chris Ruemmler <ruemmler@cup.hp.com> # Chris Ruemmler <ruemmler@cup.hp.com>
# Kevin Steves <ks@hp.se> # Kevin Steves <ks@hp.se>
"hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT:-ldl:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl", "hpux-parisc-cc","cc:+O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2.o:::::::::dl", "hpux-parisc2-cc","cc:+DA2.0 +DS2.0 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2.o:::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dl", "hpux64-parisc2-cc","cc:+DD64 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT:asm/pa-risc2W.o:::::::::dlfcn:hpux64-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux-parisc1_1-cc","cc:+DA1.1 +DS1.1 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldl:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl", "hpux-parisc1_1-cc","cc:+DA1.1 +DS1.1 +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY::-D_REENTRANT:-ldld:MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# HPUX 9.X config. # HPUX 9.X config.
# Don't use the bundled cc. It is broken. Use HP ANSI C if possible, or # Don't use the bundled cc. It is broken. Use HP ANSI C if possible, or
# egcs. gcc 2.8.1 is also broken. # egcs. gcc 2.8.1 is also broken.
"hpux-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# If hpux-cc fails (e.g. during "make test"), try the next one; otherwise, # If hpux-cc fails (e.g. during "make test"), try the next one; otherwise,
# please report your OS and compiler version to the openssl-bugs@openssl.org # please report your OS and compiler version to the openssl-bugs@openssl.org
# mailing list. # mailing list.
"hpux-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# If hpux-gcc fails, try this one: # If hpux-gcc fails, try this one:
"hpux-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# HPUX 10.X config. Supports threads. # HPUX 10.X config. Supports threads.
"hpux10-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux10-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG): # If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG):
"hpux10-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux10-brokencc", "cc:-DB_ENDIAN -DBN_DIV2W -Ae +ESlit +O2 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"hpux10-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux10-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# If hpux10-gcc fails, try this one: # If hpux10-gcc fails, try this one:
"hpux10-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl", "hpux10-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::-D_REENTRANT:-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# HPUX 11.X from www.globus.org. # HPUX 11.X from www.globus.org.
# Only works on PA-RISC 2.0 cpus, and not optimized. Why? # Only works on PA-RISC 2.0 cpus, and not optimized. Why?
@@ -265,13 +256,16 @@ my %table=(
#"hpux11-64bit-cc","cc:+DA2.0W -g -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT :::", #"hpux11-64bit-cc","cc:+DA2.0W -g -D_HPUX_SOURCE -Aa -Ae +ESlit::-D_REENTRANT::SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC1 DES_INT :::",
# Use unified settings above instead. # Use unified settings above instead.
#### HP MPE/iX http://jazz.external.hp.com/src/openssl/
"MPE/iX-gcc", "gcc:-D_ENDIAN -DBN_DIV2W -O3 -DMPE -D_POSIX_SOURCE -D_SOCKET_SOURCE -I/SYSLOG/PUB::(unknown):-L/SYSLOG/PUB -lsyslog -lsocket -lcurses:BN_LLONG DES_PTR DES_UNROLL DES_RISC1:::",
# Dec Alpha, OSF/1 - the alpha164-cc is the flags for a 21164A with # Dec Alpha, OSF/1 - the alpha164-cc is the flags for a 21164A with
# the new compiler # the new compiler
# For gcc, the following gave a %50 speedup on a 164 over the 'DES_INT' version # For gcc, the following gave a %50 speedup on a 164 over the 'DES_INT' version
"alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:asm/alpha.o:::::::::dlfcn:true64-shared", "alpha-gcc","gcc:-O3::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_RISC1:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
"alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared", "alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
"alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared", "alpha164-cc", "cc:-std1 -tune host -fast -readonly_strings::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK:asm/alpha.o:::::::::dlfcn:true64-shared::.so",
"FreeBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2:::", "FreeBSD-alpha","gcc:-DTERMIOS -O -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
#### Alpha Linux with GNU C and Compaq C setups #### Alpha Linux with GNU C and Compaq C setups
# Special notes: # Special notes:
@@ -286,8 +280,8 @@ my %table=(
# #
# <appro@fy.chalmers.se> # <appro@fy.chalmers.se>
# #
"linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o:::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha+bwx-gcc","gcc:-O3 -DL_ENDIAN -DTERMIO::-D_REENTRANT:-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:asm/alpha.o:::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
"linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::", "linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:asm/alpha.o::",
@@ -296,7 +290,7 @@ my %table=(
# The intel boxes :-), It would be worth seeing if bsdi-gcc can use the # The intel boxes :-), It would be worth seeing if bsdi-gcc can use the
# bn86-elf.o file file since it is hand tweaked assembler. # bn86-elf.o file file since it is hand tweaked assembler.
"linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC", "linux-elf", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn", "debug-linux-elf","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-lefence -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
"debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn", "debug-linux-elf-noefence","gcc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DL_ENDIAN -DTERMIO -g -m486 -Wall::-D_REENTRANT:-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn",
"linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}", "linux-aout", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
@@ -304,13 +298,13 @@ my %table=(
"linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::", "linux-ppc", "gcc:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
"linux-m68k", "gcc:-DB_ENDIAN -DTERMIO -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::", "linux-m68k", "gcc:-DB_ENDIAN -DTERMIO -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::",
"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::SIXTY_FOUR_BIT_LONG::", "linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::(unknown)::SIXTY_FOUR_BIT_LONG::",
"NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::", "NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"NetBSD-m68", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:::", "NetBSD-m68", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"NetBSD-x86", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:", "NetBSD-x86", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"FreeBSD-elf", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}", "FreeBSD-elf", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::-pthread -D_REENTRANT -D_THREAD_SAFE -D_THREADSAFE::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"FreeBSD", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}", "FreeBSD", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}",
"bsdi-gcc", "gcc:-O3 -ffast-math -DL_ENDIAN -DPERL5 -m486::(unknown)::RSA_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_bsdi_asm}", "bsdi-gcc", "gcc:-O3 -ffast-math -DL_ENDIAN -DPERL5 -m486::(unknown)::RSA_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_bsdi_asm}",
"bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}", "bsdi-elf-gcc", "gcc:-DPERL5 -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"nextstep", "cc:-O -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", "nextstep", "cc:-O -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
"nextstep3.3", "cc:-O3 -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::", "nextstep3.3", "cc:-O3 -Wall:<libc.h>:(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:::",
# NCR MP-RAS UNIX ver 02.03.01 # NCR MP-RAS UNIX ver 02.03.01
@@ -320,7 +314,7 @@ my %table=(
"qnx4", "cc:-DL_ENDIAN -DTERMIO::(unknown)::${x86_gcc_des} ${x86_gcc_opts}:", "qnx4", "cc:-DL_ENDIAN -DTERMIO::(unknown)::${x86_gcc_des} ${x86_gcc_opts}:",
# Linux on ARM # Linux on ARM
"linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC", "linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
# UnixWare 2.0 # UnixWare 2.0
"unixware-2.0","cc:-O -DFILIO_H::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::", "unixware-2.0","cc:-O -DFILIO_H::(unknown):-lsocket -lnsl:${x86_gcc_des} ${x86_gcc_opts}:::",
@@ -403,10 +397,10 @@ my %table=(
##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown)::::::", ##"ultrix","cc:-O2 -DNOPROTO -DNOCONST -DL_ENDIAN::(unknown)::::::",
# Some OpenBSD from Bob Beck <beck@obtuse.com> # Some OpenBSD from Bob Beck <beck@obtuse.com>
"OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:::", "OpenBSD-alpha","gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"OpenBSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn", "OpenBSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -m486::(unknown)::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"OpenBSD", "gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::BN_LLONG RC2_CHAR RC4_INDEX DES_UNROLL:::", "OpenBSD", "gcc:-DTERMIOS -O3 -fomit-frame-pointer::(unknown)::BN_LLONG RC2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
"OpenBSD-mips","gcc:-O2 -DL_ENDIAN::(unknown):BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR::::", "OpenBSD-mips","gcc:-O2 -DL_ENDIAN::(unknown):BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::::::::::dlfcn:bsd-gcc-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)",
##### MacOS X (a.k.a. Rhapsody) setup ##### MacOS X (a.k.a. Rhapsody) setup
"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::", "rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown)::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:::",
@@ -496,18 +490,6 @@ PROCESS_ARGS:
$flags .= "-DNO_ASM "; $flags .= "-DNO_ASM ";
$openssl_other_defines .= "#define NO_ASM\n"; $openssl_other_defines .= "#define NO_ASM\n";
} }
elsif (/^no-hw-(.+)$/)
{
my $hw=$1;
$hw =~ tr/[a-z]/[A-Z]/;
$flags .= "-DNO_HW_$hw ";
$openssl_other_defines .= "#define NO_HW_$hw\n";
}
elsif (/^no-hw$/)
{
$flags .= "-DNO_HW ";
$openssl_other_defines .= "#define NO_HW\n";
}
elsif (/^no-dso$/) elsif (/^no-dso$/)
{ $no_dso=1; } { $no_dso=1; }
elsif (/^no-threads$/) elsif (/^no-threads$/)
@@ -650,8 +632,8 @@ $openssldir=$prefix . "/" . $openssldir if $openssldir !~ /^\//;
print "IsWindows=$IsWindows\n"; print "IsWindows=$IsWindows\n";
(my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj, (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,my $bn_obj,my $des_obj,my $bf_obj,
$md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)= $md5_obj,$sha1_obj,my $cast_obj,my $rc4_obj,$rmd160_obj,my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,my $shared_extension)=
split(/\s*:\s*/,$table{$target} . ":" x 22 , -1); split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
$cflags="$flags$cflags" if ($flags ne ""); $cflags="$flags$cflags" if ($flags ne "");
# The DSO code currently always implements all functions so that no # The DSO code currently always implements all functions so that no
@@ -726,17 +708,22 @@ if ($threads)
} }
# You will find shlib_mark1 and shlib_mark2 explained in Makefile.org # You will find shlib_mark1 and shlib_mark2 explained in Makefile.org
my $shared_mark1 = ""; my $shared_mark = "";
my $shared_mark2 = ""; if ($shared_target ne "")
if ($shared_cflag ne "") {
if ($shared_cflag ne "")
{ {
$cflags = "$shared_cflag $cflags"; $cflags = "$shared_cflag $cflags";
}
if (!$no_shared) if (!$no_shared)
{ {
$shared_mark1 = ".shlib-clean."; #$shared_mark = "\$(SHARED_LIBS)";
$shared_mark2 = ".shlib.";
} }
} }
else
{
$no_shared = 1;
}
#my ($bn1)=split(/\s+/,$bn_obj); #my ($bn1)=split(/\s+/,$bn_obj);
#$bn1 = "" unless defined $bn1; #$bn1 = "" unless defined $bn1;
@@ -818,6 +805,7 @@ while (<IN>)
s/^SHLIB_VERSION_HISTORY=.*/SHLIB_VERSION_HISTORY=$shlib_version_history/; s/^SHLIB_VERSION_HISTORY=.*/SHLIB_VERSION_HISTORY=$shlib_version_history/;
s/^SHLIB_MAJOR=.*/SHLIB_MAJOR=$shlib_major/; s/^SHLIB_MAJOR=.*/SHLIB_MAJOR=$shlib_major/;
s/^SHLIB_MINOR=.*/SHLIB_MINOR=$shlib_minor/; s/^SHLIB_MINOR=.*/SHLIB_MINOR=$shlib_minor/;
s/^SHLIB_EXT=.*/SHLIB_EXT=$shared_extension/;
s/^INSTALLTOP=.*$/INSTALLTOP=$prefix/; s/^INSTALLTOP=.*$/INSTALLTOP=$prefix/;
s/^OPENSSLDIR=.*$/OPENSSLDIR=$openssldir/; s/^OPENSSLDIR=.*$/OPENSSLDIR=$openssldir/;
s/^INSTALL_PREFIX=.*$/INSTALL_PREFIX=$install_prefix/; s/^INSTALL_PREFIX=.*$/INSTALL_PREFIX=$install_prefix/;
@@ -841,9 +829,18 @@ while (<IN>)
s/^RANLIB=.*/RANLIB= $ranlib/; s/^RANLIB=.*/RANLIB= $ranlib/;
s/^PERL=.*/PERL= $perl/; s/^PERL=.*/PERL= $perl/;
s/^SHLIB_TARGET=.*/SHLIB_TARGET=$shared_target/; s/^SHLIB_TARGET=.*/SHLIB_TARGET=$shared_target/;
s/^SHLIB_MARK1=.*/SHLIB_MARK1=$shared_mark1/; s/^SHLIB_MARK=.*/SHLIB_MARK=$shared_mark/;
s/^SHLIB_MARK2=.*/SHLIB_MARK2=$shared_mark2/; s/^SHARED_LIBS=.*/SHARED_LIBS=\$(SHARED_CRYPTO) \$(SHARED_SSL)/ if (!$no_shared);
s/^LIBS=.*/LIBS=libcrypto\.so\* libssl\.so\*/ if (!$no_shared); if ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*$/)
{
my $sotmp = $1;
s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp/
}
elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/)
{
my $sotmp = $1;
s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/;
}
print OUT $_."\n"; print OUT $_."\n";
} }
close(IN); close(IN);
@@ -1130,8 +1127,9 @@ sub print_table_entry
(my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops, (my $cc,my $cflags,my $unistd,my $thread_cflag,my $lflags,my $bn_ops,
my $bn_obj,my $des_obj,my $bf_obj, my $bn_obj,my $des_obj,my $bf_obj,
my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj, my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj,
my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag)= my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,
split(/\s*:\s*/,$table{$target} . ":" x 22 , -1); my $shared_extension)=
split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
print <<EOF print <<EOF
@@ -1154,5 +1152,6 @@ sub print_table_entry
\$dso_scheme = $dso_scheme \$dso_scheme = $dso_scheme
\$shared_target= $shared_target \$shared_target= $shared_target
\$shared_cflag = $shared_cflag \$shared_cflag = $shared_cflag
\$shared_extension = $shared_extension
EOF EOF
} }

34
FAQ
View File

@@ -27,12 +27,14 @@ OpenSSL - Frequently Asked Questions
* Why does the OpenSSL test fail with "bc: 1 no implemented"? * Why does the OpenSSL test fail with "bc: 1 no implemented"?
* Why does the OpenSSL compilation fail on Alpha True64 Unix? * Why does the OpenSSL compilation fail on Alpha True64 Unix?
* Why does the OpenSSL compilation fail with "ar: command not found"? * Why does the OpenSSL compilation fail with "ar: command not found"?
* Why does the OpenSSL compilation fail on Win32 with VC++?
* Why aren't tools like 'autoconf' and 'libtool' used?
* Which is the current version of OpenSSL? * Which is the current version of OpenSSL?
The current version is available from <URL: http://www.openssl.org>. The current version is available from <URL: http://www.openssl.org>.
OpenSSL 0.9.5a was released on April 1st, 2000. OpenSSL 0.9.6 was released on September 24th, 2000.
In addition to the current stable release, you can also access daily In addition to the current stable release, you can also access daily
snapshots of the OpenSSL development version at <URL: snapshots of the OpenSSL development version at <URL:
@@ -135,7 +137,7 @@ installing the SUNski package from Sun patch 105710-01 (Sparc) which
adds a /dev/random device and make sure it gets used, usually through adds a /dev/random device and make sure it gets used, usually through
$RANDFILE. There are probably similar patches for the other Solaris $RANDFILE. There are probably similar patches for the other Solaris
versions. However, be warned that /dev/random is usually a blocking versions. However, be warned that /dev/random is usually a blocking
device, which may have som effects on OpenSSL. device, which may have some effects on OpenSSL.
* Why does the linker complain about undefined symbols? * Why does the linker complain about undefined symbols?
@@ -194,7 +196,7 @@ unsigned char *buf, *p;
int len; int len;
len = i2d_PKCS7(p7, NULL); len = i2d_PKCS7(p7, NULL);
buf = OPENSSL_Malloc(len); /* or Malloc, error checking omitted */ buf = OPENSSL_malloc(len); /* or Malloc, error checking omitted */
p = buf; p = buf;
i2d_PKCS7(p7, &p); i2d_PKCS7(p7, &p);
@@ -430,3 +432,29 @@ and then redo the compilation. What you should really do is make sure
'/usr/ccs/bin' is permanently in your $PATH, for example through your '/usr/ccs/bin' is permanently in your $PATH, for example through your
'.profile' (again, assuming you use a sh-compatible shell). '.profile' (again, assuming you use a sh-compatible shell).
* Why does the OpenSSL compilation fail on Win32 with VC++?
Sometimes, you may get reports from VC++ command line (cl) that it
can't find standard include files like stdio.h and other weirdnesses.
One possible cause is that the environment isn't correctly set up.
To solve that problem, one should run VCVARS32.BAT which is found in
the 'bin' subdirectory of the VC++ installation directory (somewhere
under 'Program Files'). This needs to be done prior to running NMAKE,
and the changes are only valid for the current DOS session.
* Why aren't tools like 'autoconf' and 'libtool' used?
autoconf is a nice tool, but is unfortunately very Unix-centric.
Although one can come up with solution to have ports keep in track,
there's also some work needed for that, and can be quite painful at
times. If there was a 'autoconf'-like tool that generated perl
scripts or something similarly general, it would probably be used
in OpenSSL much earlier.
libtool has repeatadly been reported by some members of the OpenSSL
development and others to be a pain to use. So far, those in the
development team who have said anything about this have expressed
a wish to avoid libtool for that reason.

View File

@@ -57,10 +57,7 @@
shared In addition to the usual static libraries, create shared shared In addition to the usual static libraries, create shared
libraries on platforms where it's supported. See "Note on libraries on platforms where it's supported. See "Note on
shared libraries" below. THIS IS NOT RECOMMENDED! Since shared libraries" below.
this is a development branch, the positions of the ENGINE
symbols in the transfer vector are constantly moving, so
binary backward compatibility can't be guaranteed in any way.
no-asm Do not use assembler code. no-asm Do not use assembler code.

View File

@@ -108,8 +108,8 @@
* Compiler installation: * Compiler installation:
Mingw32 is available from <ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/ Mingw32 is available from <ftp://ftp.xraylith.wisc.edu/pub/khan/
mingw32/egcs-1.1.2/egcs-1.1.2-mingw32.zip>. GNU make is at gnu-win32/mingw32/gcc-2.95.2/gcc-2.95.2-msvcrt.exe>. GNU make is at
<ftp://agnes.dida.physik.uni-essen.de/home/janjaap/mingw32/binaries/ <ftp://agnes.dida.physik.uni-essen.de/home/janjaap/mingw32/binaries/
make-3.76.1.zip>. Install both of them in C:\egcs-1.1.2 and run make-3.76.1.zip>. Install both of them in C:\egcs-1.1.2 and run
C:\egcs-1.1.2\mingw32.bat to set the PATH. C:\egcs-1.1.2\mingw32.bat to set the PATH.

View File

@@ -9,6 +9,7 @@ SHLIB_VERSION_NUMBER=
SHLIB_VERSION_HISTORY= SHLIB_VERSION_HISTORY=
SHLIB_MAJOR= SHLIB_MAJOR=
SHLIB_MINOR= SHLIB_MINOR=
SHLIB_EXT=
PLATFORM=dist PLATFORM=dist
OPTIONS= OPTIONS=
CONFIGURE_ARGS= CONFIGURE_ARGS=
@@ -62,7 +63,7 @@ AR=ar r
RANLIB= ranlib RANLIB= ranlib
PERL= perl PERL= perl
TAR= tar TAR= tar
TARFLAGS= --norecurse TARFLAGS= --no-recursion
# Set BN_ASM to bn_asm.o if you want to use the C version # Set BN_ASM to bn_asm.o if you want to use the C version
BN_ASM= bn_asm.o BN_ASM= bn_asm.o
@@ -149,21 +150,18 @@ RMD160_ASM_OBJ= asm/rm86-out.o
#RMD160_ASM_OBJ= asm/rm86-out.o # a.out, FreeBSD #RMD160_ASM_OBJ= asm/rm86-out.o # a.out, FreeBSD
#RMD160_ASM_OBJ= asm/rm86bsdi.o # bsdi #RMD160_ASM_OBJ= asm/rm86bsdi.o # bsdi
# To do special treatment, use "directory names" starting with a period.
# When we're prepared to use shared libraries in the programs we link here # When we're prepared to use shared libraries in the programs we link here
# we might have SHLIB_MARK1 get the value ".shlib." and SHLIB_MARK2 be empty, # we might set SHLIB_MARK to '$(SHARED_LIBS)'.
# or have that configurable. SHLIB_MARK=
SHLIB_MARK1=.shlib-clean.
SHLIB_MARK2=.shlib.
DIRS= crypto ssl rsaref $(SHLIB_MARK1) apps test tools $(SHLIB_MARK2) DIRS= crypto ssl rsaref $(SHLIB_MARK) apps test tools
SHLIBDIRS= crypto ssl SHLIBDIRS= crypto ssl
# dirs in crypto to build # dirs in crypto to build
SDIRS= \ SDIRS= \
md2 md4 md5 sha mdc2 hmac ripemd \ md2 md4 md5 sha mdc2 hmac ripemd \
des rc2 rc4 rc5 idea bf cast \ des rc2 rc4 rc5 idea bf cast \
bn rsa dsa dh dso engine \ bn rsa dsa dh dso rijndael \
buffer bio stack lhash rand err objects \ buffer bio stack lhash rand err objects \
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp
@@ -180,7 +178,10 @@ ONEDIRS=out tmp
EDIRS= times doc bugs util include certs ms shlib mt demos perl sf dep VMS EDIRS= times doc bugs util include certs ms shlib mt demos perl sf dep VMS
WDIRS= windows WDIRS= windows
LIBS= libcrypto.a libssl.a LIBS= libcrypto.a libssl.a
SHARED_LIBS=libcrypto.so libssl.so SHARED_CRYPTO=libcrypto$(SHLIB_EXT)
SHARED_SSL=libssl$(SHLIB_EXT)
SHARED_LIBS=
SHARED_LIBS_LINK_EXTS=
GENERAL= Makefile GENERAL= Makefile
BASENAME= openssl BASENAME= openssl
@@ -190,88 +191,77 @@ WTARFILE= $(NAME)-win.tar
EXHEADER= e_os.h e_os2.h EXHEADER= e_os.h e_os2.h
HEADER= e_os.h HEADER= e_os.h
all: Makefile.ssl # When we're prepared to use shared libraries in the programs we link here
@need_shlib=true; \ # we might remove 'clean-shared' from the targets to perform at this stage
for i in $(DIRS) ;\
do \ all: clean-shared Makefile.ssl sub_all
if [ "$$i" = ".shlib-clean." ]; then \
if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) clean-shared; \
fi; \
elif [ "$$i" = ".shlib." ]; then \
if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) $(SHARED_LIBS); \
fi; \
need_shlib=false; \
else \
(cd $$i && echo "making all in $$i..." && \
$(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' SDIRS='${SDIRS}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \
fi; \
done; \
if $$need_shlib && [ "$(SHLIB_MARK1)" != "" -o "$(SHLIB_MARK1)" != "" ]; then \
$(MAKE) $(SHARED_LIBS); \
fi
sub_all: sub_all:
@need_shlib=true; \ @for i in $(DIRS); \
for i in $(DIRS) ;\
do \ do \
if [ "$$i" = ".shlib-clean." ]; then \ if [ -d "$$i" ]; then \
if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) clean-shared; \
fi; \
elif [ "$$i" = ".shlib." ]; then \
if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) $(SHARED_LIBS); \
fi; \
need_shlib=false; \
else \
(cd $$i && echo "making all in $$i..." && \ (cd $$i && echo "making all in $$i..." && \
$(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \ $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' all ) || exit 1; \
else \
$(MAKE) $$i; \
fi; \ fi; \
done; \ done; \
if $$need_shlib && [ "$(SHLIB_MARK1)" != "" -o "$(SHLIB_MARK1)" != "" ]; then \ if echo "$(DIRS)" | \
egrep '(^| )(crypto|ssl)( |$$)' > /dev/null 2>&1 && \
[ -n "$(SHARED_LIBS)" ]; then \
$(MAKE) $(SHARED_LIBS); \ $(MAKE) $(SHARED_LIBS); \
fi fi
libcrypto.so: libcrypto.a libcrypto$(SHLIB_EXT): libcrypto.a
@if [ "$(SHLIB_TARGET)" != "" ]; then \ @if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) SHLIBDIRS=crypto $(SHLIB_TARGET); \ $(MAKE) SHLIBDIRS=crypto build-shared; \
else \ else \
echo "There's no support for shared libraries on this platform" >&2; \ echo "There's no support for shared libraries on this platform" >&2; \
fi fi
libssl.so: libcrypto.so libssl.a libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a
@if [ "$(SHLIB_TARGET)" != "" ]; then \ @if [ "$(SHLIB_TARGET)" != "" ]; then \
$(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' $(SHLIB_TARGET); \ $(MAKE) SHLIBDIRS=ssl SHLIBDEPS='-L. -lcrypto' build-shared; \
else \ else \
echo "There's no support for shared libraries on this platform" >&2; \ echo "There's no support for shared libraries on this platform" >&2; \
fi fi
clean-shared: clean-shared:
for i in ${SHLIBDIRS}; do \ @for i in $(SHLIBDIRS); do \
rm -f lib$$i.so \ if [ -n "$(SHARED_LIBS_LINK_EXTS)" ]; then \
lib$$i.so.${SHLIB_MAJOR} \ tmp="$(SHARED_LIBS_LINK_EXTS)"; \
lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \ for j in $${tmp:-x}; do \
( set -x; rm -f lib$$i$$j ); \
done; \
fi; \
( set -x; rm -f lib$$i$(SHLIB_EXT) ); \
done done
linux-shared: link-shared:
@for i in $(SHLIBDIRS); do \
prev=lib$$i$(SHLIB_EXT); \
if [ -n "$(SHARED_LIBS_LINK_EXTS)" ]; then \
tmp="$(SHARED_LIBS_LINK_EXTS)"; \
for j in $${tmp:-x}; do \
( set -x; ln -s -f $$prev lib$$i$$j ); \
prev=lib$$i$$j; \
done; \
fi; \
done
build-shared: clean-shared do_$(SHLIB_TARGET) link-shared
do_bsd-gcc-shared: linux-shared
do_linux-shared:
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \ libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
rm -f lib$$i.so \
lib$$i.so.${SHLIB_MAJOR} \
lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ ( set -x; ${CC} -shared -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \ -Wl,-S,-soname=lib$$i.so.${SHLIB_MAJOR} \
-Wl,--whole-archive lib$$i.a \ -Wl,--whole-archive lib$$i.a \
-Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \ -Wl,--no-whole-archive $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -L. -l$$i"; \ libs="$$libs -L. -l$$i"; \
( set -x; \
ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
lib$$i.so.${SHLIB_MAJOR}; \
ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so ); \
done done
# This assumes that GNU utilities are *not* used # This assumes that GNU utilities are *not* used
true64-shared: do_true64-shared:
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \ libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
( set -x; ${CC} -shared -no_archive -o lib$$i.so \ ( set -x; ${CC} -shared -no_archive -o lib$$i.so \
-set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \ -set_version "${SHLIB_VERSION_HISTORY}${SHLIB_VERSION_NUMBER}" \
@@ -280,18 +270,31 @@ true64-shared:
done done
# This assumes that GNU utilities are *not* used # This assumes that GNU utilities are *not* used
solaris-shared: do_solaris-shared:
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \ libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
rm -f lib$$i.so \
lib$$i.so.${SHLIB_MAJOR} \
lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
( set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ ( set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-h lib$$i.so.${SHLIB_MAJOR} \ -h lib$$i.so.${SHLIB_MAJOR} \
-z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \ -z allextract lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -L. -l$$i"; \ libs="$$libs -L. -l$$i"; \
ln -s lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ done
lib$$i.so.${SHLIB_MAJOR}; \
ln -s lib$$i.so.${SHLIB_MAJOR} lib$$i.so; \ # This assumes that GNU utilities are *not* used
do_hpux-shared:
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
( set -x; /usr/ccs/bin/ld +vnocompatwarnings \
-b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
-Fl lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -L. -l$$i"; \
done
# This assumes that GNU utilities are *not* used
do_hpux64-shared:
libs='${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
( set -x; /usr/ccs/bin/ld -b -z -o lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+h lib$$i.sl.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+forceload lib$$i.a $$libs ${EX_LIBS} -lc ) || exit 1; \
libs="$$libs -L. -l$$i"; \
done done
Makefile.ssl: Makefile.org Makefile.ssl: Makefile.org
@@ -306,7 +309,7 @@ clean:
rm -f shlib/*.o *.o core a.out fluff *.map rehash.time testlog make.log cctest cctest.c rm -f shlib/*.o *.o core a.out fluff *.map rehash.time testlog make.log cctest cctest.c
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making clean in $$i..." && \ (cd $$i && echo "making clean in $$i..." && \
$(MAKE) SDIRS='${SDIRS}' clean ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' clean ) || exit 1; \
rm -f $(LIBS); \ rm -f $(LIBS); \
@@ -327,7 +330,7 @@ files:
$(PERL) $(TOP)/util/files.pl Makefile.ssl > $(TOP)/MINFO $(PERL) $(TOP)/util/files.pl Makefile.ssl > $(TOP)/MINFO
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making 'files' in $$i..." && \ (cd $$i && echo "making 'files' in $$i..." && \
$(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' files ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' files ) || exit 1; \
fi; \ fi; \
@@ -338,7 +341,7 @@ links:
@$(PERL) $(TOP)/util/mkdir-p.pl include/openssl @$(PERL) $(TOP)/util/mkdir-p.pl include/openssl
@$(PERL) $(TOP)/util/mklink.pl include/openssl $(EXHEADER) @$(PERL) $(TOP)/util/mklink.pl include/openssl $(EXHEADER)
@for i in $(DIRS); do \ @for i in $(DIRS); do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making links in $$i..." && \ (cd $$i && echo "making links in $$i..." && \
$(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PERL='${PERL}' links ) || exit 1; \ $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PERL='${PERL}' links ) || exit 1; \
fi; \ fi; \
@@ -348,7 +351,7 @@ dclean:
rm -f *.bak rm -f *.bak
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making dclean in $$i..." && \ (cd $$i && echo "making dclean in $$i..." && \
$(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' dclean ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' PERL='${PERL}' dclean ) || exit 1; \
fi; \ fi; \
@@ -372,7 +375,7 @@ report:
depend: depend:
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making dependencies $$i..." && \ (cd $$i && echo "making dependencies $$i..." && \
$(MAKE) SDIRS='${SDIRS}' DEPFLAG='${DEPFLAG}' depend ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' DEPFLAG='${DEPFLAG}' depend ) || exit 1; \
fi; \ fi; \
@@ -381,7 +384,7 @@ depend:
lint: lint:
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making lint $$i..." && \ (cd $$i && echo "making lint $$i..." && \
$(MAKE) SDIRS='${SDIRS}' lint ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' lint ) || exit 1; \
fi; \ fi; \
@@ -390,7 +393,7 @@ lint:
tags: tags:
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i && echo "making tags $$i..." && \ (cd $$i && echo "making tags $$i..." && \
$(MAKE) SDIRS='${SDIRS}' tags ) || exit 1; \ $(MAKE) SDIRS='${SDIRS}' tags ) || exit 1; \
fi; \ fi; \
@@ -452,7 +455,7 @@ install: all install_docs
done; done;
@for i in $(DIRS) ;\ @for i in $(DIRS) ;\
do \ do \
if echo "$$i" | grep -v '^\.'; then \ if [ -d "$$i" ]; then \
(cd $$i; echo "installing $$i..."; \ (cd $$i; echo "installing $$i..."; \
$(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALL_PREFIX='${INSTALL_PREFIX}' INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' EX_LIBS='${EX_LIBS}' SDIRS='${SDIRS}' RANLIB='${RANLIB}' install ); \ $(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALL_PREFIX='${INSTALL_PREFIX}' INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' EX_LIBS='${EX_LIBS}' SDIRS='${SDIRS}' RANLIB='${RANLIB}' install ); \
fi; \ fi; \
@@ -466,6 +469,20 @@ install: all install_docs
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \ chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
fi \ fi \
done done
@if [ -n "$(SHARED_LIBS)" ]; then \
tmp="$(SHARED_LIBS)"; \
for i in $${tmp:-x}; \
do \
if [ -f "$$i" ]; then \
( echo installing $$i; \
cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
fi \
done; \
( here="`pwd`"; \
cd $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
make -f $$here/Makefile link-shared ); \
fi
install_docs: install_docs:
@$(PERL) $(TOP)/util/mkdir-p.pl \ @$(PERL) $(TOP)/util/mkdir-p.pl \
@@ -473,30 +490,23 @@ install_docs:
$(INSTALL_PREFIX)$(MANDIR)/man3 \ $(INSTALL_PREFIX)$(MANDIR)/man3 \
$(INSTALL_PREFIX)$(MANDIR)/man5 \ $(INSTALL_PREFIX)$(MANDIR)/man5 \
$(INSTALL_PREFIX)$(MANDIR)/man7 $(INSTALL_PREFIX)$(MANDIR)/man7
@echo installing man 1 and man 5
@for i in doc/apps/*.pod; do \ @for i in doc/apps/*.pod; do \
fn=`basename $$i .pod`; \ fn=`basename $$i .pod`; \
sec=`[ "$$fn" = "config" ] && echo 5 || echo 1`; \ sec=`[ "$$fn" = "config" ] && echo 5 || echo 1`; \
echo "installing man$$sec/`basename $$i .pod`.$$sec"; \
(cd `dirname $$i`; \ (cd `dirname $$i`; \
$(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \ $(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \
--release=$(VERSION) `basename $$i`) \ --release=$(VERSION) `basename $$i`) \
> $(INSTALL_PREFIX)$(MANDIR)/man$$sec/`basename $$i .pod`.$$sec; \ > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/`basename $$i .pod`.$$sec; \
done done
@echo installing man 3 and man 7
@for i in doc/crypto/*.pod doc/ssl/*.pod; do \ @for i in doc/crypto/*.pod doc/ssl/*.pod; do \
fn=`basename $$i .pod`; \ fn=`basename $$i .pod`; \
sec=`[ "$$fn" = "des_modes" ] && echo 7 || echo 3`; \ sec=`[ "$$fn" = "des_modes" ] && echo 7 || echo 3`; \
echo "installing man$$sec/`basename $$i .pod`.$$sec"; \
(cd `dirname $$i`; \ (cd `dirname $$i`; \
$(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \ $(PERL) ../../util/pod2man.pl --section=$$sec --center=OpenSSL \
--release=$(VERSION) `basename $$i`) \ --release=$(VERSION) `basename $$i`) \
> $(INSTALL_PREFIX)$(MANDIR)/man$$sec/`basename $$i .pod`.$$sec; \ > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/`basename $$i .pod`.$$sec; \
done done
shlib: all
if [ ! -d shlib_dir ] ; then mkdir shlib_dir ; else rm -f shlib_dir/* ; fi
cd shlib_dir ; ar -x ../libcrypto.a && $(CC) -shared ./*.o -Wl,-soname -Wl,libcrypto.so.0.9 \
-o ./libcrypto.so.0.9.4 && rm *.o
cd shlib_dir ; ar -x ../libssl.a && $(CC) -shared ./*.o -Wl,-soname -Wl,libssl.so.0.9 \
-o ./libssl.so.0.9.4 && rm *.o
# DO NOT DELETE THIS LINE -- make depend depends on it. # DO NOT DELETE THIS LINE -- make depend depends on it.

15
NEWS
View File

@@ -5,6 +5,21 @@
This file gives a brief overview of the major changes between each OpenSSL This file gives a brief overview of the major changes between each OpenSSL
release. For more details please read the CHANGES file. release. For more details please read the CHANGES file.
Major changes between OpenSSL 0.9.5a and OpenSSL 0.9.6:
o Some documentation for BIO and SSL libraries.
o Enhanced chain verification using key identifiers.
o New sign and verify options to 'dgst' application.
o Support for DER and PEM encoded messages in 'smime' application.
o New 'rsautl' application, low level RSA utility.
o MD4 now included.
o Bugfix for SSL rollback padding check.
o Support for external crypto devices [1].
o Enhanced EVP interface.
[1] The support for external crypto devices is currently a separate
distribution. See the file README.ENGINE.
Major changes between OpenSSL 0.9.5 and OpenSSL 0.9.5a: Major changes between OpenSSL 0.9.5 and OpenSSL 0.9.5a:
o Bug fixes for Win32, SuSE Linux, NeXTSTEP and FreeBSD 2.2.8 o Bug fixes for Win32, SuSE Linux, NeXTSTEP and FreeBSD 2.2.8

5
README
View File

@@ -1,5 +1,5 @@
OpenSSL 0.9.6-beta2 [engine] 17 Sep 2000 OpenSSL 0.9.7-dev 24 Sep 2000
Copyright (c) 1998-2000 The OpenSSL Project Copyright (c) 1998-2000 The OpenSSL Project
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
@@ -163,6 +163,9 @@
the string "[PATCH]" in the subject. Please be sure to include a the string "[PATCH]" in the subject. Please be sure to include a
textual explanation of what your patch does. textual explanation of what your patch does.
Note: For legal reasons, contributions from the US can be accepted only
if a copy of the patch is sent to crypt@bxa.doc.gov
The preferred format for changes is "diff -u" output. You might The preferred format for changes is "diff -u" output. You might
generate it like this: generate it like this:

63
README.ENGINE Normal file
View File

@@ -0,0 +1,63 @@
ENGINE
======
With OpenSSL 0.9.6, a new component has been added to support external
crypto devices, for example accelerator cards. The component is called
ENGINE, and has still a pretty experimental status and almost no
documentation. It's designed to be faily easily extensible by the
calling programs.
There's currently built-in support for the following crypto devices:
o CryptoSwift
o Compaq Atalla
o nCipher CHIL
A number of things are still needed and are being worked on:
o An openssl utility command to handle or at least check available
engines.
o A better way of handling the methods that are handled by the
engines.
o Documentation!
What already exists is fairly stable as far as it has been tested, but
the test base has been a bit small most of the time.
Because of this experimental status and what's lacking, the ENGINE
component is not yet part of the default OpenSSL distribution. However,
we have made a separate kit for those who want to try this out, to be
found in the same places as the default OpenSSL distribution, but with
"-engine-" being part of the kit file name. For example, version 0.9.6
is distributed in the following two files:
openssl-0.9.6.tar.gz
openssl-engine-0.9.6.tar.gz
NOTES
=====
openssl-engine-0.9.6.tar.gz does not depend on openssl-0.9.6.tar, you do
not need to download both.
openssl-engine-0.9.6.tar.gz is usable even if you don't have an external
crypto device. The internal OpenSSL functions are contained in the
engine "openssl", and will be used by default.
No external crypto device is chosen unless you say so. You have actively
tell the openssl utility commands to use it through a new command line
switch called "-engine". And if you want to use the ENGINE library to
do something similar, you must also explicitely choose an external crypto
device, or the built-in crypto routines will be used, just as in the
default OpenSSL distribution.
PROBLEMS
========
It seems like the ENGINE part doesn't work too well with Cryptoswift on
Win32. A quick test done right before the release showed that trying
"openssl speed -engine cswift" generated errors. If the DSO gets enabled,
an attempt is made to write at memory address 0x00000002.

42
STATUS
View File

@@ -1,42 +1,11 @@
OpenSSL STATUS Last modified at OpenSSL STATUS Last modified at
______________ $Date: 2000/09/17 15:56:27 $ ______________ $Date: 2000/10/23 14:36:18 $
DEVELOPMENT STATE DEVELOPMENT STATE
o OpenSSL 0.9.6: Under development (in release cycle)... o OpenSSL 0.9.7: Under development...
Proposed release date September 24, 2000 o OpenSSL 0.9.6: Released on September 24th, 2000
0.9.6-beta1 is available:
OpenBSD-x86 2.7 - failed
ftime not supported [FIXED]
hpux-parisc-cc 10.20 - passed
hpux-parisc-gcc 10.20 - passed
hpux-parisc-gcc 11.00 - passed
hpux-gcc - passed
hpux-brokengcc - failed
BN_sqr fails in test
linux-elf - passed
linux-sparcv7 - passed
linux-ppc - passed
Solaris [engine] - failed
speed cswift gives odd errors [FIXED]
solaris-sparcv8-gcc - passed
solaris-sparcv9-gcc - passed
solaris-sparcv9-cc - passed
solaris64-sparcv9-cc - passed
sco5-gcc - passed
sco5-cc - passed
FreeBSD - passed
Win32 VC++ - failed
PCURSORINFO not defined unless Win2000 [FIXED]
RAND_poll() problem on Win2000 [FIXED]
DSO method always DSO_METHOD_null [FIXED]
CygWin32 - test failed
MingW32 - failed
thelp32.h
aix-gcc (AIX 4.3.2) - passed
VMS/Alpha - failed
Some things were missing [FIXED]
o OpenSSL 0.9.5a: Released on April 1st, 2000 o OpenSSL 0.9.5a: Released on April 1st, 2000
o OpenSSL 0.9.5: Released on February 28th, 2000 o OpenSSL 0.9.5: Released on February 28th, 2000
o OpenSSL 0.9.4: Released on August 09th, 1999 o OpenSSL 0.9.4: Released on August 09th, 1999
@@ -56,7 +25,7 @@
o Steve is currently working on (in no particular order): o Steve is currently working on (in no particular order):
ASN1 code redesign, butchery, replacement. ASN1 code redesign, butchery, replacement.
EVP cipher enhancement. EVP cipher enhancement.
Proper (or at least usable) certificate chain verification. /* Proper (or at least usable) certificate chain verification. */
Private key, certificate and CRL API and implementation. Private key, certificate and CRL API and implementation.
Developing and bugfixing PKCS#7 (S/MIME code). Developing and bugfixing PKCS#7 (S/MIME code).
Various X509 issues: character sets, certificate request extensions. Various X509 issues: character sets, certificate request extensions.
@@ -76,9 +45,6 @@
OPEN ISSUES OPEN ISSUES
o internal_verify doesn't know about X509.v3 (basicConstraints
CA flag ...)
o The Makefile hierarchy and build mechanism is still not a round thing: o The Makefile hierarchy and build mechanism is still not a round thing:
1. The config vs. Configure scripts 1. The config vs. Configure scripts

277
TABLE

File diff suppressed because it is too large Load Diff

View File

@@ -158,6 +158,7 @@ app_rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
app_rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h app_rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
app_rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h app_rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h
app_rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h app_rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
app_rand.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
app_rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h app_rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
app_rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h app_rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h
app_rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h app_rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -178,7 +179,8 @@ apps.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
apps.o: ../include/openssl/pem.h ../include/openssl/pem2.h apps.o: ../include/openssl/pem.h ../include/openssl/pem2.h
apps.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h apps.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
apps.o: ../include/openssl/rc2.h ../include/openssl/rc4.h apps.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
apps.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h apps.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
apps.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
apps.o: ../include/openssl/rsa.h ../include/openssl/safestack.h apps.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
apps.o: ../include/openssl/sha.h ../include/openssl/stack.h apps.o: ../include/openssl/sha.h ../include/openssl/stack.h
apps.o: ../include/openssl/symhacks.h ../include/openssl/x509.h apps.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -199,6 +201,7 @@ asn1pars.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
asn1pars.o: ../include/openssl/pem.h ../include/openssl/pem2.h asn1pars.o: ../include/openssl/pem.h ../include/openssl/pem2.h
asn1pars.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h asn1pars.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
asn1pars.o: ../include/openssl/rc4.h ../include/openssl/rc5.h asn1pars.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
asn1pars.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
asn1pars.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h asn1pars.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
asn1pars.o: ../include/openssl/safestack.h ../include/openssl/sha.h asn1pars.o: ../include/openssl/safestack.h ../include/openssl/sha.h
asn1pars.o: ../include/openssl/stack.h ../include/openssl/symhacks.h asn1pars.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -209,17 +212,17 @@ ca.o: ../include/openssl/buffer.h ../include/openssl/cast.h
ca.o: ../include/openssl/conf.h ../include/openssl/crypto.h ca.o: ../include/openssl/conf.h ../include/openssl/crypto.h
ca.o: ../include/openssl/des.h ../include/openssl/dh.h ../include/openssl/dsa.h ca.o: ../include/openssl/des.h ../include/openssl/dh.h ../include/openssl/dsa.h
ca.o: ../include/openssl/e_os.h ../include/openssl/e_os.h ca.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
ca.o: ../include/openssl/e_os2.h ../include/openssl/engine.h ca.o: ../include/openssl/e_os2.h ../include/openssl/err.h
ca.o: ../include/openssl/err.h ../include/openssl/evp.h ca.o: ../include/openssl/evp.h ../include/openssl/idea.h
ca.o: ../include/openssl/idea.h ../include/openssl/lhash.h ca.o: ../include/openssl/lhash.h ../include/openssl/md2.h
ca.o: ../include/openssl/md2.h ../include/openssl/md4.h ca.o: ../include/openssl/md4.h ../include/openssl/md5.h
ca.o: ../include/openssl/md5.h ../include/openssl/mdc2.h ca.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
ca.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h ca.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
ca.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h ca.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
ca.o: ../include/openssl/pem.h ../include/openssl/pem2.h ca.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
ca.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
ca.o: ../include/openssl/rc2.h ../include/openssl/rc4.h ca.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
ca.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h ca.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
ca.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
ca.o: ../include/openssl/rsa.h ../include/openssl/safestack.h ca.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
ca.o: ../include/openssl/sha.h ../include/openssl/stack.h ca.o: ../include/openssl/sha.h ../include/openssl/stack.h
ca.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h ca.o: ../include/openssl/symhacks.h ../include/openssl/txt_db.h
@@ -241,7 +244,8 @@ ciphers.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
ciphers.o: ../include/openssl/opensslv.h ../include/openssl/pem.h ciphers.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
ciphers.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h ciphers.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
ciphers.o: ../include/openssl/rc2.h ../include/openssl/rc4.h ciphers.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
ciphers.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h ciphers.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
ciphers.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
ciphers.o: ../include/openssl/rsa.h ../include/openssl/safestack.h ciphers.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
ciphers.o: ../include/openssl/sha.h ../include/openssl/ssl.h ciphers.o: ../include/openssl/sha.h ../include/openssl/ssl.h
ciphers.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h ciphers.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -264,6 +268,7 @@ crl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
crl.o: ../include/openssl/pem.h ../include/openssl/pem2.h crl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
crl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h crl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
crl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h crl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
crl.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
crl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h crl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
crl.o: ../include/openssl/safestack.h ../include/openssl/sha.h crl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
crl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h crl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -285,6 +290,7 @@ crl2p7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
crl2p7.o: ../include/openssl/pem.h ../include/openssl/pem2.h crl2p7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
crl2p7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h crl2p7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
crl2p7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h crl2p7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
crl2p7.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
crl2p7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h crl2p7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
crl2p7.o: ../include/openssl/safestack.h ../include/openssl/sha.h crl2p7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
crl2p7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h crl2p7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -296,16 +302,16 @@ dgst.o: ../include/openssl/conf.h ../include/openssl/crypto.h
dgst.o: ../include/openssl/des.h ../include/openssl/dh.h dgst.o: ../include/openssl/des.h ../include/openssl/dh.h
dgst.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dgst.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
dgst.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dgst.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
dgst.o: ../include/openssl/engine.h ../include/openssl/err.h dgst.o: ../include/openssl/err.h ../include/openssl/evp.h
dgst.o: ../include/openssl/evp.h ../include/openssl/idea.h dgst.o: ../include/openssl/idea.h ../include/openssl/lhash.h
dgst.o: ../include/openssl/lhash.h ../include/openssl/md2.h dgst.o: ../include/openssl/md2.h ../include/openssl/md4.h
dgst.o: ../include/openssl/md4.h ../include/openssl/md5.h dgst.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
dgst.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h dgst.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
dgst.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h dgst.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
dgst.o: ../include/openssl/opensslv.h ../include/openssl/pem.h dgst.o: ../include/openssl/pem.h ../include/openssl/pem2.h
dgst.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h dgst.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
dgst.o: ../include/openssl/rand.h ../include/openssl/rc2.h
dgst.o: ../include/openssl/rc4.h ../include/openssl/rc5.h dgst.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
dgst.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
dgst.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h dgst.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
dgst.o: ../include/openssl/safestack.h ../include/openssl/sha.h dgst.o: ../include/openssl/safestack.h ../include/openssl/sha.h
dgst.o: ../include/openssl/stack.h ../include/openssl/symhacks.h dgst.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -316,17 +322,17 @@ dh.o: ../include/openssl/buffer.h ../include/openssl/cast.h
dh.o: ../include/openssl/conf.h ../include/openssl/crypto.h dh.o: ../include/openssl/conf.h ../include/openssl/crypto.h
dh.o: ../include/openssl/des.h ../include/openssl/dh.h ../include/openssl/dsa.h dh.o: ../include/openssl/des.h ../include/openssl/dh.h ../include/openssl/dsa.h
dh.o: ../include/openssl/e_os.h ../include/openssl/e_os.h dh.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
dh.o: ../include/openssl/e_os2.h ../include/openssl/engine.h dh.o: ../include/openssl/e_os2.h ../include/openssl/err.h
dh.o: ../include/openssl/err.h ../include/openssl/evp.h dh.o: ../include/openssl/evp.h ../include/openssl/idea.h
dh.o: ../include/openssl/idea.h ../include/openssl/lhash.h dh.o: ../include/openssl/lhash.h ../include/openssl/md2.h
dh.o: ../include/openssl/md2.h ../include/openssl/md4.h dh.o: ../include/openssl/md4.h ../include/openssl/md5.h
dh.o: ../include/openssl/md5.h ../include/openssl/mdc2.h dh.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
dh.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h dh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
dh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h dh.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
dh.o: ../include/openssl/pem.h ../include/openssl/pem2.h dh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
dh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
dh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h dh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
dh.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h dh.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
dh.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
dh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h dh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
dh.o: ../include/openssl/sha.h ../include/openssl/stack.h dh.o: ../include/openssl/sha.h ../include/openssl/stack.h
dh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h dh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -338,16 +344,16 @@ dsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
dsa.o: ../include/openssl/des.h ../include/openssl/dh.h dsa.o: ../include/openssl/des.h ../include/openssl/dh.h
dsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
dsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
dsa.o: ../include/openssl/engine.h ../include/openssl/err.h dsa.o: ../include/openssl/err.h ../include/openssl/evp.h
dsa.o: ../include/openssl/evp.h ../include/openssl/idea.h dsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
dsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h dsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
dsa.o: ../include/openssl/md4.h ../include/openssl/md5.h dsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
dsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h dsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
dsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h dsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
dsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h dsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
dsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h dsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
dsa.o: ../include/openssl/rand.h ../include/openssl/rc2.h
dsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h dsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
dsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
dsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h dsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
dsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h dsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
dsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h dsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -359,16 +365,16 @@ dsaparam.o: ../include/openssl/conf.h ../include/openssl/crypto.h
dsaparam.o: ../include/openssl/des.h ../include/openssl/dh.h dsaparam.o: ../include/openssl/des.h ../include/openssl/dh.h
dsaparam.o: ../include/openssl/dsa.h ../include/openssl/e_os.h dsaparam.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
dsaparam.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h dsaparam.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
dsaparam.o: ../include/openssl/engine.h ../include/openssl/err.h dsaparam.o: ../include/openssl/err.h ../include/openssl/evp.h
dsaparam.o: ../include/openssl/evp.h ../include/openssl/idea.h dsaparam.o: ../include/openssl/idea.h ../include/openssl/lhash.h
dsaparam.o: ../include/openssl/lhash.h ../include/openssl/md2.h dsaparam.o: ../include/openssl/md2.h ../include/openssl/md4.h
dsaparam.o: ../include/openssl/md4.h ../include/openssl/md5.h dsaparam.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
dsaparam.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h dsaparam.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
dsaparam.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h dsaparam.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
dsaparam.o: ../include/openssl/opensslv.h ../include/openssl/pem.h dsaparam.o: ../include/openssl/pem.h ../include/openssl/pem2.h
dsaparam.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h dsaparam.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
dsaparam.o: ../include/openssl/rand.h ../include/openssl/rc2.h
dsaparam.o: ../include/openssl/rc4.h ../include/openssl/rc5.h dsaparam.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
dsaparam.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
dsaparam.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h dsaparam.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
dsaparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h dsaparam.o: ../include/openssl/safestack.h ../include/openssl/sha.h
dsaparam.o: ../include/openssl/stack.h ../include/openssl/symhacks.h dsaparam.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -380,20 +386,21 @@ enc.o: ../include/openssl/conf.h ../include/openssl/crypto.h
enc.o: ../include/openssl/des.h ../include/openssl/dh.h enc.o: ../include/openssl/des.h ../include/openssl/dh.h
enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h enc.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
enc.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h enc.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
enc.o: ../include/openssl/engine.h ../include/openssl/err.h enc.o: ../include/openssl/err.h ../include/openssl/evp.h
enc.o: ../include/openssl/evp.h ../include/openssl/idea.h enc.o: ../include/openssl/idea.h ../include/openssl/lhash.h
enc.o: ../include/openssl/lhash.h ../include/openssl/md2.h enc.o: ../include/openssl/md2.h ../include/openssl/md4.h
enc.o: ../include/openssl/md4.h ../include/openssl/md5.h enc.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
enc.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h enc.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
enc.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h enc.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
enc.o: ../include/openssl/opensslv.h ../include/openssl/pem.h enc.o: ../include/openssl/pem.h ../include/openssl/pem2.h
enc.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h enc.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
enc.o: ../include/openssl/rand.h ../include/openssl/rc2.h enc.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
enc.o: ../include/openssl/rc4.h ../include/openssl/rc5.h enc.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
enc.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h enc.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
enc.o: ../include/openssl/safestack.h ../include/openssl/sha.h enc.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
enc.o: ../include/openssl/stack.h ../include/openssl/symhacks.h enc.o: ../include/openssl/sha.h ../include/openssl/stack.h
enc.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h enc.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
enc.o: ../include/openssl/x509_vfy.h apps.h
errstr.o: ../include/openssl/asn1.h ../include/openssl/bio.h errstr.o: ../include/openssl/asn1.h ../include/openssl/bio.h
errstr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h errstr.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
errstr.o: ../include/openssl/buffer.h ../include/openssl/cast.h errstr.o: ../include/openssl/buffer.h ../include/openssl/cast.h
@@ -410,7 +417,8 @@ errstr.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
errstr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h errstr.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
errstr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h errstr.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
errstr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h errstr.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
errstr.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h errstr.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
errstr.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
errstr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h errstr.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
errstr.o: ../include/openssl/sha.h ../include/openssl/ssl.h errstr.o: ../include/openssl/sha.h ../include/openssl/ssl.h
errstr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h errstr.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -424,20 +432,21 @@ gendh.o: ../include/openssl/conf.h ../include/openssl/crypto.h
gendh.o: ../include/openssl/des.h ../include/openssl/dh.h gendh.o: ../include/openssl/des.h ../include/openssl/dh.h
gendh.o: ../include/openssl/dsa.h ../include/openssl/e_os.h gendh.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
gendh.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h gendh.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
gendh.o: ../include/openssl/engine.h ../include/openssl/err.h gendh.o: ../include/openssl/err.h ../include/openssl/evp.h
gendh.o: ../include/openssl/evp.h ../include/openssl/idea.h gendh.o: ../include/openssl/idea.h ../include/openssl/lhash.h
gendh.o: ../include/openssl/lhash.h ../include/openssl/md2.h gendh.o: ../include/openssl/md2.h ../include/openssl/md4.h
gendh.o: ../include/openssl/md4.h ../include/openssl/md5.h gendh.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
gendh.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h gendh.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
gendh.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h gendh.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
gendh.o: ../include/openssl/opensslv.h ../include/openssl/pem.h gendh.o: ../include/openssl/pem.h ../include/openssl/pem2.h
gendh.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h gendh.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
gendh.o: ../include/openssl/rand.h ../include/openssl/rc2.h gendh.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
gendh.o: ../include/openssl/rc4.h ../include/openssl/rc5.h gendh.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
gendh.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h gendh.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
gendh.o: ../include/openssl/safestack.h ../include/openssl/sha.h gendh.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
gendh.o: ../include/openssl/stack.h ../include/openssl/symhacks.h gendh.o: ../include/openssl/sha.h ../include/openssl/stack.h
gendh.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h gendh.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
gendh.o: ../include/openssl/x509_vfy.h apps.h
gendsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h gendsa.o: ../include/openssl/asn1.h ../include/openssl/bio.h
gendsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h gendsa.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
gendsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h gendsa.o: ../include/openssl/buffer.h ../include/openssl/cast.h
@@ -445,16 +454,16 @@ gendsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
gendsa.o: ../include/openssl/des.h ../include/openssl/dh.h gendsa.o: ../include/openssl/des.h ../include/openssl/dh.h
gendsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h gendsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
gendsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h gendsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
gendsa.o: ../include/openssl/engine.h ../include/openssl/err.h gendsa.o: ../include/openssl/err.h ../include/openssl/evp.h
gendsa.o: ../include/openssl/evp.h ../include/openssl/idea.h gendsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
gendsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h gendsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
gendsa.o: ../include/openssl/md4.h ../include/openssl/md5.h gendsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
gendsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h gendsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
gendsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h gendsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
gendsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h gendsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
gendsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h gendsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
gendsa.o: ../include/openssl/rand.h ../include/openssl/rc2.h
gendsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h gendsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
gendsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
gendsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h gendsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
gendsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h gendsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
gendsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h gendsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -466,16 +475,16 @@ genrsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
genrsa.o: ../include/openssl/des.h ../include/openssl/dh.h genrsa.o: ../include/openssl/des.h ../include/openssl/dh.h
genrsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h genrsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
genrsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h genrsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
genrsa.o: ../include/openssl/engine.h ../include/openssl/err.h genrsa.o: ../include/openssl/err.h ../include/openssl/evp.h
genrsa.o: ../include/openssl/evp.h ../include/openssl/idea.h genrsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
genrsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h genrsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
genrsa.o: ../include/openssl/md4.h ../include/openssl/md5.h genrsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
genrsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h genrsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
genrsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h genrsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
genrsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h genrsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
genrsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h genrsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
genrsa.o: ../include/openssl/rand.h ../include/openssl/rc2.h
genrsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h genrsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
genrsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
genrsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h genrsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
genrsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h genrsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
genrsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h genrsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -496,6 +505,7 @@ nseq.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
nseq.o: ../include/openssl/pem.h ../include/openssl/pem2.h nseq.o: ../include/openssl/pem.h ../include/openssl/pem2.h
nseq.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h nseq.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
nseq.o: ../include/openssl/rc4.h ../include/openssl/rc5.h nseq.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
nseq.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
nseq.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h nseq.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
nseq.o: ../include/openssl/safestack.h ../include/openssl/sha.h nseq.o: ../include/openssl/safestack.h ../include/openssl/sha.h
nseq.o: ../include/openssl/stack.h ../include/openssl/symhacks.h nseq.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -516,7 +526,8 @@ openssl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
openssl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h openssl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
openssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h openssl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
openssl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h openssl.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
openssl.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h openssl.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
openssl.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
openssl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h openssl.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
openssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h openssl.o: ../include/openssl/sha.h ../include/openssl/ssl.h
openssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h openssl.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -539,7 +550,8 @@ passwd.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
passwd.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h passwd.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
passwd.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h passwd.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
passwd.o: ../include/openssl/rc2.h ../include/openssl/rc4.h passwd.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
passwd.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h passwd.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
passwd.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
passwd.o: ../include/openssl/rsa.h ../include/openssl/safestack.h passwd.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
passwd.o: ../include/openssl/sha.h ../include/openssl/stack.h passwd.o: ../include/openssl/sha.h ../include/openssl/stack.h
passwd.o: ../include/openssl/symhacks.h ../include/openssl/x509.h passwd.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -551,17 +563,17 @@ pkcs12.o: ../include/openssl/conf.h ../include/openssl/crypto.h
pkcs12.o: ../include/openssl/des.h ../include/openssl/dh.h pkcs12.o: ../include/openssl/des.h ../include/openssl/dh.h
pkcs12.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs12.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
pkcs12.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs12.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
pkcs12.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs12.o: ../include/openssl/err.h ../include/openssl/evp.h
pkcs12.o: ../include/openssl/evp.h ../include/openssl/idea.h pkcs12.o: ../include/openssl/idea.h ../include/openssl/lhash.h
pkcs12.o: ../include/openssl/lhash.h ../include/openssl/md2.h pkcs12.o: ../include/openssl/md2.h ../include/openssl/md4.h
pkcs12.o: ../include/openssl/md4.h ../include/openssl/md5.h pkcs12.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
pkcs12.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h pkcs12.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
pkcs12.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h pkcs12.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
pkcs12.o: ../include/openssl/opensslv.h ../include/openssl/pem.h pkcs12.o: ../include/openssl/pem.h ../include/openssl/pem2.h
pkcs12.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h pkcs12.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
pkcs12.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
pkcs12.o: ../include/openssl/rc2.h ../include/openssl/rc4.h pkcs12.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
pkcs12.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h pkcs12.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
pkcs12.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
pkcs12.o: ../include/openssl/rsa.h ../include/openssl/safestack.h pkcs12.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
pkcs12.o: ../include/openssl/sha.h ../include/openssl/stack.h pkcs12.o: ../include/openssl/sha.h ../include/openssl/stack.h
pkcs12.o: ../include/openssl/symhacks.h ../include/openssl/x509.h pkcs12.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -573,16 +585,16 @@ pkcs7.o: ../include/openssl/conf.h ../include/openssl/crypto.h
pkcs7.o: ../include/openssl/des.h ../include/openssl/dh.h pkcs7.o: ../include/openssl/des.h ../include/openssl/dh.h
pkcs7.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs7.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
pkcs7.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs7.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
pkcs7.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs7.o: ../include/openssl/err.h ../include/openssl/evp.h
pkcs7.o: ../include/openssl/evp.h ../include/openssl/idea.h pkcs7.o: ../include/openssl/idea.h ../include/openssl/lhash.h
pkcs7.o: ../include/openssl/lhash.h ../include/openssl/md2.h pkcs7.o: ../include/openssl/md2.h ../include/openssl/md4.h
pkcs7.o: ../include/openssl/md4.h ../include/openssl/md5.h pkcs7.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
pkcs7.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h pkcs7.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
pkcs7.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h pkcs7.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
pkcs7.o: ../include/openssl/opensslv.h ../include/openssl/pem.h pkcs7.o: ../include/openssl/pem.h ../include/openssl/pem2.h
pkcs7.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h pkcs7.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
pkcs7.o: ../include/openssl/rand.h ../include/openssl/rc2.h
pkcs7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h pkcs7.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
pkcs7.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
pkcs7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h pkcs7.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
pkcs7.o: ../include/openssl/safestack.h ../include/openssl/sha.h pkcs7.o: ../include/openssl/safestack.h ../include/openssl/sha.h
pkcs7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h pkcs7.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -594,17 +606,17 @@ pkcs8.o: ../include/openssl/conf.h ../include/openssl/crypto.h
pkcs8.o: ../include/openssl/des.h ../include/openssl/dh.h pkcs8.o: ../include/openssl/des.h ../include/openssl/dh.h
pkcs8.o: ../include/openssl/dsa.h ../include/openssl/e_os.h pkcs8.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
pkcs8.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h pkcs8.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
pkcs8.o: ../include/openssl/engine.h ../include/openssl/err.h pkcs8.o: ../include/openssl/err.h ../include/openssl/evp.h
pkcs8.o: ../include/openssl/evp.h ../include/openssl/idea.h pkcs8.o: ../include/openssl/idea.h ../include/openssl/lhash.h
pkcs8.o: ../include/openssl/lhash.h ../include/openssl/md2.h pkcs8.o: ../include/openssl/md2.h ../include/openssl/md4.h
pkcs8.o: ../include/openssl/md4.h ../include/openssl/md5.h pkcs8.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
pkcs8.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h pkcs8.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
pkcs8.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h pkcs8.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
pkcs8.o: ../include/openssl/opensslv.h ../include/openssl/pem.h pkcs8.o: ../include/openssl/pem.h ../include/openssl/pem2.h
pkcs8.o: ../include/openssl/pem2.h ../include/openssl/pkcs12.h pkcs8.o: ../include/openssl/pkcs12.h ../include/openssl/pkcs7.h
pkcs8.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
pkcs8.o: ../include/openssl/rc2.h ../include/openssl/rc4.h pkcs8.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
pkcs8.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h pkcs8.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
pkcs8.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
pkcs8.o: ../include/openssl/rsa.h ../include/openssl/safestack.h pkcs8.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
pkcs8.o: ../include/openssl/sha.h ../include/openssl/stack.h pkcs8.o: ../include/openssl/sha.h ../include/openssl/stack.h
pkcs8.o: ../include/openssl/symhacks.h ../include/openssl/x509.h pkcs8.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -616,19 +628,20 @@ rand.o: ../include/openssl/conf.h ../include/openssl/crypto.h
rand.o: ../include/openssl/des.h ../include/openssl/dh.h rand.o: ../include/openssl/des.h ../include/openssl/dh.h
rand.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rand.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
rand.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rand.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
rand.o: ../include/openssl/engine.h ../include/openssl/err.h rand.o: ../include/openssl/err.h ../include/openssl/evp.h
rand.o: ../include/openssl/evp.h ../include/openssl/idea.h rand.o: ../include/openssl/idea.h ../include/openssl/lhash.h
rand.o: ../include/openssl/lhash.h ../include/openssl/md2.h rand.o: ../include/openssl/md2.h ../include/openssl/md4.h
rand.o: ../include/openssl/md4.h ../include/openssl/md5.h rand.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
rand.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h rand.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
rand.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h rand.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
rand.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h rand.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
rand.o: ../include/openssl/rand.h ../include/openssl/rc2.h rand.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
rand.o: ../include/openssl/rc4.h ../include/openssl/rc5.h rand.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
rand.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h rand.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
rand.o: ../include/openssl/safestack.h ../include/openssl/sha.h rand.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
rand.o: ../include/openssl/stack.h ../include/openssl/symhacks.h rand.o: ../include/openssl/sha.h ../include/openssl/stack.h
rand.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h apps.h rand.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
rand.o: ../include/openssl/x509_vfy.h apps.h
req.o: ../include/openssl/asn1.h ../include/openssl/bio.h req.o: ../include/openssl/asn1.h ../include/openssl/bio.h
req.o: ../include/openssl/blowfish.h ../include/openssl/bn.h req.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
req.o: ../include/openssl/buffer.h ../include/openssl/cast.h req.o: ../include/openssl/buffer.h ../include/openssl/cast.h
@@ -636,16 +649,16 @@ req.o: ../include/openssl/conf.h ../include/openssl/crypto.h
req.o: ../include/openssl/des.h ../include/openssl/dh.h req.o: ../include/openssl/des.h ../include/openssl/dh.h
req.o: ../include/openssl/dsa.h ../include/openssl/e_os.h req.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
req.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h req.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
req.o: ../include/openssl/engine.h ../include/openssl/err.h req.o: ../include/openssl/err.h ../include/openssl/evp.h
req.o: ../include/openssl/evp.h ../include/openssl/idea.h req.o: ../include/openssl/idea.h ../include/openssl/lhash.h
req.o: ../include/openssl/lhash.h ../include/openssl/md2.h req.o: ../include/openssl/md2.h ../include/openssl/md4.h
req.o: ../include/openssl/md4.h ../include/openssl/md5.h req.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
req.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h req.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
req.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h req.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
req.o: ../include/openssl/opensslv.h ../include/openssl/pem.h req.o: ../include/openssl/pem.h ../include/openssl/pem2.h
req.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h req.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
req.o: ../include/openssl/rand.h ../include/openssl/rc2.h
req.o: ../include/openssl/rc4.h ../include/openssl/rc5.h req.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
req.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
req.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h req.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
req.o: ../include/openssl/safestack.h ../include/openssl/sha.h req.o: ../include/openssl/safestack.h ../include/openssl/sha.h
req.o: ../include/openssl/stack.h ../include/openssl/symhacks.h req.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -658,16 +671,16 @@ rsa.o: ../include/openssl/conf.h ../include/openssl/crypto.h
rsa.o: ../include/openssl/des.h ../include/openssl/dh.h rsa.o: ../include/openssl/des.h ../include/openssl/dh.h
rsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rsa.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
rsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rsa.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
rsa.o: ../include/openssl/engine.h ../include/openssl/err.h rsa.o: ../include/openssl/err.h ../include/openssl/evp.h
rsa.o: ../include/openssl/evp.h ../include/openssl/idea.h rsa.o: ../include/openssl/idea.h ../include/openssl/lhash.h
rsa.o: ../include/openssl/lhash.h ../include/openssl/md2.h rsa.o: ../include/openssl/md2.h ../include/openssl/md4.h
rsa.o: ../include/openssl/md4.h ../include/openssl/md5.h rsa.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
rsa.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h rsa.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
rsa.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h rsa.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
rsa.o: ../include/openssl/opensslv.h ../include/openssl/pem.h rsa.o: ../include/openssl/pem.h ../include/openssl/pem2.h
rsa.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h rsa.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
rsa.o: ../include/openssl/rand.h ../include/openssl/rc2.h
rsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h rsa.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
rsa.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
rsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h rsa.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h rsa.o: ../include/openssl/safestack.h ../include/openssl/sha.h
rsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h rsa.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -679,16 +692,16 @@ rsautl.o: ../include/openssl/conf.h ../include/openssl/crypto.h
rsautl.o: ../include/openssl/des.h ../include/openssl/dh.h rsautl.o: ../include/openssl/des.h ../include/openssl/dh.h
rsautl.o: ../include/openssl/dsa.h ../include/openssl/e_os.h rsautl.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
rsautl.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h rsautl.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
rsautl.o: ../include/openssl/engine.h ../include/openssl/err.h rsautl.o: ../include/openssl/err.h ../include/openssl/evp.h
rsautl.o: ../include/openssl/evp.h ../include/openssl/idea.h rsautl.o: ../include/openssl/idea.h ../include/openssl/lhash.h
rsautl.o: ../include/openssl/lhash.h ../include/openssl/md2.h rsautl.o: ../include/openssl/md2.h ../include/openssl/md4.h
rsautl.o: ../include/openssl/md4.h ../include/openssl/md5.h rsautl.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
rsautl.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h rsautl.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
rsautl.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h rsautl.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
rsautl.o: ../include/openssl/opensslv.h ../include/openssl/pem.h rsautl.o: ../include/openssl/pem.h ../include/openssl/pem2.h
rsautl.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h rsautl.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
rsautl.o: ../include/openssl/rand.h ../include/openssl/rc2.h
rsautl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h rsautl.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
rsautl.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
rsautl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h rsautl.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
rsautl.o: ../include/openssl/safestack.h ../include/openssl/sha.h rsautl.o: ../include/openssl/safestack.h ../include/openssl/sha.h
rsautl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h rsautl.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -709,7 +722,8 @@ s_cb.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
s_cb.o: ../include/openssl/opensslv.h ../include/openssl/pem.h s_cb.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
s_cb.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h s_cb.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
s_cb.o: ../include/openssl/rc2.h ../include/openssl/rc4.h s_cb.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
s_cb.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h s_cb.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
s_cb.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
s_cb.o: ../include/openssl/rsa.h ../include/openssl/safestack.h s_cb.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
s_cb.o: ../include/openssl/sha.h ../include/openssl/ssl.h s_cb.o: ../include/openssl/sha.h ../include/openssl/ssl.h
s_cb.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h s_cb.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -723,17 +737,17 @@ s_client.o: ../include/openssl/comp.h ../include/openssl/conf.h
s_client.o: ../include/openssl/crypto.h ../include/openssl/des.h s_client.o: ../include/openssl/crypto.h ../include/openssl/des.h
s_client.o: ../include/openssl/dh.h ../include/openssl/dsa.h s_client.o: ../include/openssl/dh.h ../include/openssl/dsa.h
s_client.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_client.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
s_client.o: ../include/openssl/e_os2.h ../include/openssl/engine.h s_client.o: ../include/openssl/e_os2.h ../include/openssl/err.h
s_client.o: ../include/openssl/err.h ../include/openssl/evp.h s_client.o: ../include/openssl/evp.h ../include/openssl/idea.h
s_client.o: ../include/openssl/idea.h ../include/openssl/lhash.h s_client.o: ../include/openssl/lhash.h ../include/openssl/md2.h
s_client.o: ../include/openssl/md2.h ../include/openssl/md4.h s_client.o: ../include/openssl/md4.h ../include/openssl/md5.h
s_client.o: ../include/openssl/md5.h ../include/openssl/mdc2.h s_client.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
s_client.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h s_client.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
s_client.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h s_client.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
s_client.o: ../include/openssl/pem.h ../include/openssl/pem2.h s_client.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
s_client.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
s_client.o: ../include/openssl/rc2.h ../include/openssl/rc4.h s_client.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
s_client.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h s_client.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
s_client.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
s_client.o: ../include/openssl/rsa.h ../include/openssl/safestack.h s_client.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
s_client.o: ../include/openssl/sha.h ../include/openssl/ssl.h s_client.o: ../include/openssl/sha.h ../include/openssl/ssl.h
s_client.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h s_client.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -748,17 +762,17 @@ s_server.o: ../include/openssl/comp.h ../include/openssl/conf.h
s_server.o: ../include/openssl/crypto.h ../include/openssl/des.h s_server.o: ../include/openssl/crypto.h ../include/openssl/des.h
s_server.o: ../include/openssl/dh.h ../include/openssl/dsa.h s_server.o: ../include/openssl/dh.h ../include/openssl/dsa.h
s_server.o: ../include/openssl/e_os.h ../include/openssl/e_os.h s_server.o: ../include/openssl/e_os.h ../include/openssl/e_os.h
s_server.o: ../include/openssl/e_os2.h ../include/openssl/engine.h s_server.o: ../include/openssl/e_os2.h ../include/openssl/err.h
s_server.o: ../include/openssl/err.h ../include/openssl/evp.h s_server.o: ../include/openssl/evp.h ../include/openssl/idea.h
s_server.o: ../include/openssl/idea.h ../include/openssl/lhash.h s_server.o: ../include/openssl/lhash.h ../include/openssl/md2.h
s_server.o: ../include/openssl/md2.h ../include/openssl/md4.h s_server.o: ../include/openssl/md4.h ../include/openssl/md5.h
s_server.o: ../include/openssl/md5.h ../include/openssl/mdc2.h s_server.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
s_server.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h s_server.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
s_server.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h s_server.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
s_server.o: ../include/openssl/pem.h ../include/openssl/pem2.h s_server.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
s_server.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h
s_server.o: ../include/openssl/rc2.h ../include/openssl/rc4.h s_server.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
s_server.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h s_server.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
s_server.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
s_server.o: ../include/openssl/rsa.h ../include/openssl/safestack.h s_server.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
s_server.o: ../include/openssl/sha.h ../include/openssl/ssl.h s_server.o: ../include/openssl/sha.h ../include/openssl/ssl.h
s_server.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h s_server.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -782,6 +796,7 @@ s_socket.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
s_socket.o: ../include/openssl/pem.h ../include/openssl/pem2.h s_socket.o: ../include/openssl/pem.h ../include/openssl/pem2.h
s_socket.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h s_socket.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
s_socket.o: ../include/openssl/rc4.h ../include/openssl/rc5.h s_socket.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
s_socket.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
s_socket.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h s_socket.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
s_socket.o: ../include/openssl/safestack.h ../include/openssl/sha.h s_socket.o: ../include/openssl/safestack.h ../include/openssl/sha.h
s_socket.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h s_socket.o: ../include/openssl/ssl.h ../include/openssl/ssl2.h
@@ -805,7 +820,8 @@ s_time.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
s_time.o: ../include/openssl/opensslv.h ../include/openssl/pem.h s_time.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
s_time.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h s_time.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
s_time.o: ../include/openssl/rc2.h ../include/openssl/rc4.h s_time.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
s_time.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h s_time.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
s_time.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
s_time.o: ../include/openssl/rsa.h ../include/openssl/safestack.h s_time.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
s_time.o: ../include/openssl/sha.h ../include/openssl/ssl.h s_time.o: ../include/openssl/sha.h ../include/openssl/ssl.h
s_time.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h s_time.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -829,7 +845,8 @@ sess_id.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
sess_id.o: ../include/openssl/opensslv.h ../include/openssl/pem.h sess_id.o: ../include/openssl/opensslv.h ../include/openssl/pem.h
sess_id.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h sess_id.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h
sess_id.o: ../include/openssl/rc2.h ../include/openssl/rc4.h sess_id.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
sess_id.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h sess_id.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
sess_id.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
sess_id.o: ../include/openssl/rsa.h ../include/openssl/safestack.h sess_id.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
sess_id.o: ../include/openssl/sha.h ../include/openssl/ssl.h sess_id.o: ../include/openssl/sha.h ../include/openssl/ssl.h
sess_id.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h sess_id.o: ../include/openssl/ssl2.h ../include/openssl/ssl23.h
@@ -843,16 +860,16 @@ smime.o: ../include/openssl/conf.h ../include/openssl/crypto.h
smime.o: ../include/openssl/des.h ../include/openssl/dh.h smime.o: ../include/openssl/des.h ../include/openssl/dh.h
smime.o: ../include/openssl/dsa.h ../include/openssl/e_os.h smime.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
smime.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h smime.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
smime.o: ../include/openssl/engine.h ../include/openssl/err.h smime.o: ../include/openssl/err.h ../include/openssl/evp.h
smime.o: ../include/openssl/evp.h ../include/openssl/idea.h smime.o: ../include/openssl/idea.h ../include/openssl/lhash.h
smime.o: ../include/openssl/lhash.h ../include/openssl/md2.h smime.o: ../include/openssl/md2.h ../include/openssl/md4.h
smime.o: ../include/openssl/md4.h ../include/openssl/md5.h smime.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
smime.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h smime.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
smime.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h smime.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
smime.o: ../include/openssl/opensslv.h ../include/openssl/pem.h smime.o: ../include/openssl/pem.h ../include/openssl/pem2.h
smime.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h smime.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
smime.o: ../include/openssl/rand.h ../include/openssl/rc2.h
smime.o: ../include/openssl/rc4.h ../include/openssl/rc5.h smime.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
smime.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
smime.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h smime.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
smime.o: ../include/openssl/safestack.h ../include/openssl/sha.h smime.o: ../include/openssl/safestack.h ../include/openssl/sha.h
smime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h smime.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -864,20 +881,21 @@ speed.o: ../include/openssl/conf.h ../include/openssl/crypto.h
speed.o: ../include/openssl/des.h ../include/openssl/dh.h speed.o: ../include/openssl/des.h ../include/openssl/dh.h
speed.o: ../include/openssl/dsa.h ../include/openssl/e_os.h speed.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
speed.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h speed.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
speed.o: ../include/openssl/engine.h ../include/openssl/err.h speed.o: ../include/openssl/err.h ../include/openssl/evp.h
speed.o: ../include/openssl/evp.h ../include/openssl/hmac.h speed.o: ../include/openssl/hmac.h ../include/openssl/idea.h
speed.o: ../include/openssl/idea.h ../include/openssl/lhash.h speed.o: ../include/openssl/lhash.h ../include/openssl/md2.h
speed.o: ../include/openssl/md2.h ../include/openssl/md4.h speed.o: ../include/openssl/md4.h ../include/openssl/md5.h
speed.o: ../include/openssl/md5.h ../include/openssl/mdc2.h speed.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
speed.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h speed.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
speed.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h speed.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
speed.o: ../include/openssl/pkcs7.h ../include/openssl/rand.h speed.o: ../include/openssl/rand.h ../include/openssl/rc2.h
speed.o: ../include/openssl/rc2.h ../include/openssl/rc4.h speed.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
speed.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h speed.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
speed.o: ../include/openssl/rsa.h ../include/openssl/safestack.h speed.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
speed.o: ../include/openssl/sha.h ../include/openssl/stack.h speed.o: ../include/openssl/safestack.h ../include/openssl/sha.h
speed.o: ../include/openssl/symhacks.h ../include/openssl/x509.h speed.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
speed.o: ../include/openssl/x509_vfy.h ./testdsa.h ./testrsa.h apps.h speed.o: ../include/openssl/x509.h ../include/openssl/x509_vfy.h ./testdsa.h
speed.o: ./testrsa.h apps.h
spkac.o: ../include/openssl/asn1.h ../include/openssl/bio.h spkac.o: ../include/openssl/asn1.h ../include/openssl/bio.h
spkac.o: ../include/openssl/blowfish.h ../include/openssl/bn.h spkac.o: ../include/openssl/blowfish.h ../include/openssl/bn.h
spkac.o: ../include/openssl/buffer.h ../include/openssl/cast.h spkac.o: ../include/openssl/buffer.h ../include/openssl/cast.h
@@ -885,16 +903,16 @@ spkac.o: ../include/openssl/conf.h ../include/openssl/crypto.h
spkac.o: ../include/openssl/des.h ../include/openssl/dh.h spkac.o: ../include/openssl/des.h ../include/openssl/dh.h
spkac.o: ../include/openssl/dsa.h ../include/openssl/e_os.h spkac.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
spkac.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h spkac.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
spkac.o: ../include/openssl/engine.h ../include/openssl/err.h spkac.o: ../include/openssl/err.h ../include/openssl/evp.h
spkac.o: ../include/openssl/evp.h ../include/openssl/idea.h spkac.o: ../include/openssl/idea.h ../include/openssl/lhash.h
spkac.o: ../include/openssl/lhash.h ../include/openssl/md2.h spkac.o: ../include/openssl/md2.h ../include/openssl/md4.h
spkac.o: ../include/openssl/md4.h ../include/openssl/md5.h spkac.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
spkac.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h spkac.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
spkac.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h spkac.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
spkac.o: ../include/openssl/opensslv.h ../include/openssl/pem.h spkac.o: ../include/openssl/pem.h ../include/openssl/pem2.h
spkac.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h spkac.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
spkac.o: ../include/openssl/rand.h ../include/openssl/rc2.h
spkac.o: ../include/openssl/rc4.h ../include/openssl/rc5.h spkac.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
spkac.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
spkac.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h spkac.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
spkac.o: ../include/openssl/safestack.h ../include/openssl/sha.h spkac.o: ../include/openssl/safestack.h ../include/openssl/sha.h
spkac.o: ../include/openssl/stack.h ../include/openssl/symhacks.h spkac.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -906,16 +924,16 @@ verify.o: ../include/openssl/conf.h ../include/openssl/crypto.h
verify.o: ../include/openssl/des.h ../include/openssl/dh.h verify.o: ../include/openssl/des.h ../include/openssl/dh.h
verify.o: ../include/openssl/dsa.h ../include/openssl/e_os.h verify.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
verify.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h verify.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
verify.o: ../include/openssl/engine.h ../include/openssl/err.h verify.o: ../include/openssl/err.h ../include/openssl/evp.h
verify.o: ../include/openssl/evp.h ../include/openssl/idea.h verify.o: ../include/openssl/idea.h ../include/openssl/lhash.h
verify.o: ../include/openssl/lhash.h ../include/openssl/md2.h verify.o: ../include/openssl/md2.h ../include/openssl/md4.h
verify.o: ../include/openssl/md4.h ../include/openssl/md5.h verify.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
verify.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h verify.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
verify.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h verify.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
verify.o: ../include/openssl/opensslv.h ../include/openssl/pem.h verify.o: ../include/openssl/pem.h ../include/openssl/pem2.h
verify.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h verify.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
verify.o: ../include/openssl/rand.h ../include/openssl/rc2.h
verify.o: ../include/openssl/rc4.h ../include/openssl/rc5.h verify.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
verify.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
verify.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h verify.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
verify.o: ../include/openssl/safestack.h ../include/openssl/sha.h verify.o: ../include/openssl/safestack.h ../include/openssl/sha.h
verify.o: ../include/openssl/stack.h ../include/openssl/symhacks.h verify.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
@@ -935,7 +953,8 @@ version.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h
version.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h version.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h
version.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h version.o: ../include/openssl/opensslv.h ../include/openssl/pkcs7.h
version.o: ../include/openssl/rc2.h ../include/openssl/rc4.h version.o: ../include/openssl/rc2.h ../include/openssl/rc4.h
version.o: ../include/openssl/rc5.h ../include/openssl/ripemd.h version.o: ../include/openssl/rc5.h ../include/openssl/rijndael-alg-fst.h
version.o: ../include/openssl/rijndael.h ../include/openssl/ripemd.h
version.o: ../include/openssl/rsa.h ../include/openssl/safestack.h version.o: ../include/openssl/rsa.h ../include/openssl/safestack.h
version.o: ../include/openssl/sha.h ../include/openssl/stack.h version.o: ../include/openssl/sha.h ../include/openssl/stack.h
version.o: ../include/openssl/symhacks.h ../include/openssl/x509.h version.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
@@ -947,16 +966,16 @@ x509.o: ../include/openssl/conf.h ../include/openssl/crypto.h
x509.o: ../include/openssl/des.h ../include/openssl/dh.h x509.o: ../include/openssl/des.h ../include/openssl/dh.h
x509.o: ../include/openssl/dsa.h ../include/openssl/e_os.h x509.o: ../include/openssl/dsa.h ../include/openssl/e_os.h
x509.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h x509.o: ../include/openssl/e_os.h ../include/openssl/e_os2.h
x509.o: ../include/openssl/engine.h ../include/openssl/err.h x509.o: ../include/openssl/err.h ../include/openssl/evp.h
x509.o: ../include/openssl/evp.h ../include/openssl/idea.h x509.o: ../include/openssl/idea.h ../include/openssl/lhash.h
x509.o: ../include/openssl/lhash.h ../include/openssl/md2.h x509.o: ../include/openssl/md2.h ../include/openssl/md4.h
x509.o: ../include/openssl/md4.h ../include/openssl/md5.h x509.o: ../include/openssl/md5.h ../include/openssl/mdc2.h
x509.o: ../include/openssl/mdc2.h ../include/openssl/obj_mac.h x509.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
x509.o: ../include/openssl/objects.h ../include/openssl/opensslconf.h x509.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
x509.o: ../include/openssl/opensslv.h ../include/openssl/pem.h x509.o: ../include/openssl/pem.h ../include/openssl/pem2.h
x509.o: ../include/openssl/pem2.h ../include/openssl/pkcs7.h x509.o: ../include/openssl/pkcs7.h ../include/openssl/rc2.h
x509.o: ../include/openssl/rand.h ../include/openssl/rc2.h
x509.o: ../include/openssl/rc4.h ../include/openssl/rc5.h x509.o: ../include/openssl/rc4.h ../include/openssl/rc5.h
x509.o: ../include/openssl/rijndael-alg-fst.h ../include/openssl/rijndael.h
x509.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h x509.o: ../include/openssl/ripemd.h ../include/openssl/rsa.h
x509.o: ../include/openssl/safestack.h ../include/openssl/sha.h x509.o: ../include/openssl/safestack.h ../include/openssl/sha.h
x509.o: ../include/openssl/stack.h ../include/openssl/symhacks.h x509.o: ../include/openssl/stack.h ../include/openssl/symhacks.h

View File

@@ -142,7 +142,9 @@ int app_RAND_load_file(const char *file, BIO *bio_e, int dont_warn)
} }
if (file == NULL || !RAND_load_file(file, -1)) if (file == NULL || !RAND_load_file(file, -1))
{ {
if (RAND_status() == 0 && !dont_warn) if (RAND_status() == 0)
{
if (!dont_warn)
{ {
BIO_printf(bio_e,"unable to load 'random state'\n"); BIO_printf(bio_e,"unable to load 'random state'\n");
BIO_printf(bio_e,"This means that the random number generator has not been seeded\n"); BIO_printf(bio_e,"This means that the random number generator has not been seeded\n");
@@ -155,6 +157,7 @@ int app_RAND_load_file(const char *file, BIO *bio_e, int dont_warn)
} }
return 0; return 0;
} }
}
seeded = 1; seeded = 1;
return 1; return 1;
} }

View File

@@ -74,6 +74,14 @@
# include "bss_file.c" # include "bss_file.c"
#endif #endif
typedef struct {
char *name;
unsigned long flag;
unsigned long mask;
} NAME_EX_TBL;
static int set_table_opts(unsigned long *flags, const char *arg, const NAME_EX_TBL *in_tbl);
int app_init(long mesgwin); int app_init(long mesgwin);
#ifdef undef /* never finished - probably never will be :-) */ #ifdef undef /* never finished - probably never will be :-) */
int args_from_file(char *file, int *argc, char **argv[]) int args_from_file(char *file, int *argc, char **argv[])
@@ -170,8 +178,6 @@ int str2fmt(char *s)
|| (strcmp(s,"PKCS12") == 0) || (strcmp(s,"pkcs12") == 0) || (strcmp(s,"PKCS12") == 0) || (strcmp(s,"pkcs12") == 0)
|| (strcmp(s,"P12") == 0) || (strcmp(s,"p12") == 0)) || (strcmp(s,"P12") == 0) || (strcmp(s,"p12") == 0))
return(FORMAT_PKCS12); return(FORMAT_PKCS12);
else if ((*s == 'E') || (*s == 'e'))
return(FORMAT_ENGINE);
else else
return(FORMAT_UNDEF); return(FORMAT_UNDEF);
} }
@@ -696,16 +702,43 @@ end:
return(othercerts); return(othercerts);
} }
typedef struct {
char *name; #define X509V3_EXT_UNKNOWN_MASK (0xfL << 16)
unsigned long flag; /* Return error for unknown extensions */
unsigned long mask; #define X509V3_EXT_DEFAULT 0
} NAME_EX_TBL; /* Print error for unknown extensions */
#define X509V3_EXT_ERROR_UNKNOWN (1L << 16)
/* ASN1 parse unknown extensions */
#define X509V3_EXT_PARSE_UNKNOWN (2L << 16)
/* BIO_dump unknown extensions */
#define X509V3_EXT_DUMP_UNKNOWN (3L << 16)
int set_cert_ex(unsigned long *flags, const char *arg)
{
static const NAME_EX_TBL cert_tbl[] = {
{ "compatible", X509_FLAG_COMPAT, 0xffffffffl},
{ "no_header", X509_FLAG_NO_HEADER, 0},
{ "no_version", X509_FLAG_NO_VERSION, 0},
{ "no_serial", X509_FLAG_NO_SERIAL, 0},
{ "no_signame", X509_FLAG_NO_SIGNAME, 0},
{ "no_validity", X509_FLAG_NO_VALIDITY, 0},
{ "no_subject", X509_FLAG_NO_SUBJECT, 0},
{ "no_pubkey", X509_FLAG_NO_PUBKEY, 0},
{ "no_extensions", X509_FLAG_NO_EXTENSIONS, 0},
{ "no_sigdump", X509_FLAG_NO_SIGDUMP, 0},
{ "no_aux", X509_FLAG_NO_AUX, 0},
{ "ext_default", X509V3_EXT_DEFAULT, X509V3_EXT_UNKNOWN_MASK},
{ "ext_error", X509V3_EXT_ERROR_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
{ "ext_parse", X509V3_EXT_PARSE_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
{ "ext_dump", X509V3_EXT_DUMP_UNKNOWN, X509V3_EXT_UNKNOWN_MASK},
{ NULL, 0, 0}
};
return set_table_opts(flags, arg, cert_tbl);
}
int set_name_ex(unsigned long *flags, const char *arg) int set_name_ex(unsigned long *flags, const char *arg)
{ {
char c; static const NAME_EX_TBL ex_tbl[] = {
const NAME_EX_TBL *ptbl, ex_tbl[] = {
{ "esc_2253", ASN1_STRFLGS_ESC_2253, 0}, { "esc_2253", ASN1_STRFLGS_ESC_2253, 0},
{ "esc_ctrl", ASN1_STRFLGS_ESC_CTRL, 0}, { "esc_ctrl", ASN1_STRFLGS_ESC_CTRL, 0},
{ "esc_msb", ASN1_STRFLGS_ESC_MSB, 0}, { "esc_msb", ASN1_STRFLGS_ESC_MSB, 0},
@@ -733,7 +766,13 @@ int set_name_ex(unsigned long *flags, const char *arg)
{ "multiline", XN_FLAG_MULTILINE, 0xffffffffL}, { "multiline", XN_FLAG_MULTILINE, 0xffffffffL},
{ NULL, 0, 0} { NULL, 0, 0}
}; };
return set_table_opts(flags, arg, ex_tbl);
}
static int set_table_opts(unsigned long *flags, const char *arg, const NAME_EX_TBL *in_tbl)
{
char c;
const NAME_EX_TBL *ptbl;
c = arg[0]; c = arg[0];
if(c == '-') { if(c == '-') {
@@ -744,7 +783,7 @@ int set_name_ex(unsigned long *flags, const char *arg)
arg++; arg++;
} else c = 1; } else c = 1;
for(ptbl = ex_tbl; ptbl->name; ptbl++) { for(ptbl = in_tbl; ptbl->name; ptbl++) {
if(!strcmp(arg, ptbl->name)) { if(!strcmp(arg, ptbl->name)) {
*flags &= ~ptbl->mask; *flags &= ~ptbl->mask;
if(c) *flags |= ptbl->flag; if(c) *flags |= ptbl->flag;

View File

@@ -147,6 +147,7 @@ int chopup_args(ARGS *arg,char *buf, int *argc, char **argv[]);
int dump_cert_text(BIO *out, X509 *x); int dump_cert_text(BIO *out, X509 *x);
void print_name(BIO *out, char *title, X509_NAME *nm, unsigned long lflags); void print_name(BIO *out, char *title, X509_NAME *nm, unsigned long lflags);
#endif #endif
int set_cert_ex(unsigned long *flags, const char *arg);
int set_name_ex(unsigned long *flags, const char *arg); int set_name_ex(unsigned long *flags, const char *arg);
int app_passwd(BIO *err, char *arg1, char *arg2, char **pass1, char **pass2); int app_passwd(BIO *err, char *arg1, char *arg2, char **pass1, char **pass2);
int add_oid_section(BIO *err, LHASH *conf); int add_oid_section(BIO *err, LHASH *conf);
@@ -162,8 +163,6 @@ STACK_OF(X509) *load_certs(BIO *err, char *file, int format);
#define FORMAT_NETSCAPE 4 #define FORMAT_NETSCAPE 4
#define FORMAT_PKCS12 5 #define FORMAT_PKCS12 5
#define FORMAT_SMIME 6 #define FORMAT_SMIME 6
/* Since this is currently inofficial, let's give it a high number */
#define FORMAT_ENGINE 127
#define NETSCAPE_CERT_HDR "certificate" #define NETSCAPE_CERT_HDR "certificate"

View File

@@ -206,6 +206,12 @@ bad:
goto end; goto end;
} }
BIO_set_fp(out,stdout,BIO_NOCLOSE|BIO_FP_TEXT); BIO_set_fp(out,stdout,BIO_NOCLOSE|BIO_FP_TEXT);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
if (oidfile != NULL) if (oidfile != NULL)
{ {
@@ -315,7 +321,7 @@ bad:
end: end:
BIO_free(derout); BIO_free(derout);
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (b64 != NULL) BIO_free(b64); if (b64 != NULL) BIO_free(b64);
if (ret != 0) if (ret != 0)
ERR_print_errors(bio_err); ERR_print_errors(bio_err);

View File

@@ -1 +1 @@
05 07

View File

@@ -74,7 +74,6 @@
#include <openssl/x509v3.h> #include <openssl/x509v3.h>
#include <openssl/objects.h> #include <openssl/objects.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#ifndef W_OK #ifndef W_OK
# ifdef VMS # ifdef VMS
@@ -168,7 +167,6 @@ static char *ca_usage[]={
" -revoke file - Revoke a certificate (given in file)\n", " -revoke file - Revoke a certificate (given in file)\n",
" -extensions .. - Extension section (override value in config file)\n", " -extensions .. - Extension section (override value in config file)\n",
" -crlexts .. - CRL extension section (override value in config file)\n", " -crlexts .. - CRL extension section (override value in config file)\n",
" -engine e - use engine e, possibly a hardware device.\n",
NULL NULL
}; };
@@ -218,7 +216,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
char *key=NULL,*passargin=NULL; char *key=NULL,*passargin=NULL;
int total=0; int total=0;
int total_done=0; int total_done=0;
@@ -271,7 +268,6 @@ int MAIN(int argc, char **argv)
#define BSIZE 256 #define BSIZE 256
MS_STATIC char buf[3][BSIZE]; MS_STATIC char buf[3][BSIZE];
char *randfile=NULL; char *randfile=NULL;
char *engine = NULL;
#ifdef EFENCE #ifdef EFENCE
EF_PROTECT_FREE=1; EF_PROTECT_FREE=1;
@@ -423,11 +419,6 @@ EF_ALIGNMENT=0;
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
crl_ext= *(++argv); crl_ext= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else else
{ {
bad: bad:
@@ -448,24 +439,6 @@ bad:
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto err;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto err;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
/*****************************************************************/ /*****************************************************************/
if (configfile == NULL) configfile = getenv("OPENSSL_CONF"); if (configfile == NULL) configfile = getenv("OPENSSL_CONF");
if (configfile == NULL) configfile = getenv("SSLEAY_CONF"); if (configfile == NULL) configfile = getenv("SSLEAY_CONF");
@@ -717,6 +690,12 @@ bad:
if (verbose) if (verbose)
{ {
BIO_set_fp(out,stdout,BIO_NOCLOSE|BIO_FP_TEXT); /* cannot fail */ BIO_set_fp(out,stdout,BIO_NOCLOSE|BIO_FP_TEXT); /* cannot fail */
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
TXT_DB_write(out,db); TXT_DB_write(out,db);
BIO_printf(bio_err,"%d entries loaded from the database\n", BIO_printf(bio_err,"%d entries loaded from the database\n",
db->data->num); db->data->num);
@@ -751,7 +730,15 @@ bad:
} }
} }
else else
{
BIO_set_fp(Sout,stdout,BIO_NOCLOSE|BIO_FP_TEXT); BIO_set_fp(Sout,stdout,BIO_NOCLOSE|BIO_FP_TEXT);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
Sout = BIO_push(tmpbio, Sout);
}
#endif
}
} }
if (req) if (req)
@@ -1047,7 +1034,7 @@ bad:
#endif #endif
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
in=NULL; in=NULL;
out=NULL; out=NULL;
if (rename(serialfile,buf[2]) < 0) if (rename(serialfile,buf[2]) < 0)
@@ -1264,9 +1251,9 @@ bad:
ret=0; ret=0;
err: err:
BIO_free(hex); BIO_free(hex);
BIO_free(Cout); BIO_free_all(Cout);
BIO_free(Sout); BIO_free_all(Sout);
BIO_free(out); BIO_free_all(out);
BIO_free(in); BIO_free(in);
sk_X509_pop_free(cert_sk,X509_free); sk_X509_pop_free(cert_sk,X509_free);
@@ -1381,7 +1368,7 @@ static int save_serial(char *serialfile, BIGNUM *serial)
BIO_puts(out,"\n"); BIO_puts(out,"\n");
ret=1; ret=1;
err: err:
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (ai != NULL) ASN1_INTEGER_free(ai); if (ai != NULL) ASN1_INTEGER_free(ai);
return(ret); return(ret);
} }

View File

@@ -108,6 +108,12 @@ int MAIN(int argc, char **argv)
if (bio_err == NULL) if (bio_err == NULL)
bio_err=BIO_new_fp(stderr,BIO_NOCLOSE); bio_err=BIO_new_fp(stderr,BIO_NOCLOSE);
STDout=BIO_new_fp(stdout,BIO_NOCLOSE); STDout=BIO_new_fp(stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
STDout = BIO_push(tmpbio, STDout);
}
#endif
argc--; argc--;
argv++; argv++;
@@ -195,7 +201,7 @@ err:
end: end:
if (ctx != NULL) SSL_CTX_free(ctx); if (ctx != NULL) SSL_CTX_free(ctx);
if (ssl != NULL) SSL_free(ssl); if (ssl != NULL) SSL_free(ssl);
if (STDout != NULL) BIO_free(STDout); if (STDout != NULL) BIO_free_all(STDout);
EXIT(ret); EXIT(ret);
} }

View File

@@ -122,7 +122,15 @@ int MAIN(int argc, char **argv)
if (bio_out == NULL) if (bio_out == NULL)
if ((bio_out=BIO_new(BIO_s_file())) != NULL) if ((bio_out=BIO_new(BIO_s_file())) != NULL)
{
BIO_set_fp(bio_out,stdout,BIO_NOCLOSE); BIO_set_fp(bio_out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
bio_out = BIO_push(tmpbio, bio_out);
}
#endif
}
informat=FORMAT_PEM; informat=FORMAT_PEM;
outformat=FORMAT_PEM; outformat=FORMAT_PEM;
@@ -314,7 +322,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -340,8 +356,8 @@ bad:
if (!i) { BIO_printf(bio_err,"unable to write CRL\n"); goto end; } if (!i) { BIO_printf(bio_err,"unable to write CRL\n"); goto end; }
ret=0; ret=0;
end: end:
BIO_free(out); BIO_free_all(out);
BIO_free(bio_out); BIO_free_all(bio_out);
bio_out=NULL; bio_out=NULL;
X509_CRL_free(x); X509_CRL_free(x);
if(store) { if(store) {

View File

@@ -239,7 +239,15 @@ bad:
sk_free(certflst); sk_free(certflst);
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -266,7 +274,7 @@ bad:
ret=0; ret=0;
end: end:
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (p7 != NULL) PKCS7_free(p7); if (p7 != NULL) PKCS7_free(p7);
if (crl != NULL) X509_CRL_free(crl); if (crl != NULL) X509_CRL_free(crl);

View File

@@ -66,7 +66,6 @@
#include <openssl/objects.h> #include <openssl/objects.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef BUFSIZE #undef BUFSIZE
#define BUFSIZE 1024*8 #define BUFSIZE 1024*8
@@ -75,13 +74,12 @@
#define PROG dgst_main #define PROG dgst_main
void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout, void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout,
EVP_PKEY *key, unsigned char *sigin, unsigned int siglen); EVP_PKEY *key, unsigned char *sigin, int siglen);
int MAIN(int, char **); int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
unsigned char *buf=NULL; unsigned char *buf=NULL;
int i,err=0; int i,err=0;
const EVP_MD *md=NULL,*m; const EVP_MD *md=NULL,*m;
@@ -98,8 +96,7 @@ int MAIN(int argc, char **argv)
char out_bin = -1, want_pub = 0, do_verify = 0; char out_bin = -1, want_pub = 0, do_verify = 0;
EVP_PKEY *sigkey = NULL; EVP_PKEY *sigkey = NULL;
unsigned char *sigbuf = NULL; unsigned char *sigbuf = NULL;
unsigned int siglen = 0; int siglen = 0;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -157,11 +154,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) break; if (--argc < 1) break;
sigfile=*(++argv); sigfile=*(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) break;
engine= *(++argv);
}
else if (strcmp(*argv,"-hex") == 0) else if (strcmp(*argv,"-hex") == 0)
out_bin = 0; out_bin = 0;
else if (strcmp(*argv,"-binary") == 0) else if (strcmp(*argv,"-binary") == 0)
@@ -198,7 +190,6 @@ int MAIN(int argc, char **argv)
BIO_printf(bio_err,"-prverify file verify a signature using private key in file\n"); BIO_printf(bio_err,"-prverify file verify a signature using private key in file\n");
BIO_printf(bio_err,"-signature file signature to verify\n"); BIO_printf(bio_err,"-signature file signature to verify\n");
BIO_printf(bio_err,"-binary output in binary form\n"); BIO_printf(bio_err,"-binary output in binary form\n");
BIO_printf(bio_err,"-engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err,"-%3s to use the %s message digest algorithm (default)\n", BIO_printf(bio_err,"-%3s to use the %s message digest algorithm (default)\n",
LN_md5,LN_md5); LN_md5,LN_md5);
@@ -218,24 +209,6 @@ int MAIN(int argc, char **argv)
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
in=BIO_new(BIO_s_file()); in=BIO_new(BIO_s_file());
bmd=BIO_new(BIO_f_md()); bmd=BIO_new(BIO_f_md());
if (debug) if (debug)
@@ -263,7 +236,15 @@ int MAIN(int argc, char **argv)
if(out_bin) if(out_bin)
out = BIO_new_file(outfile, "wb"); out = BIO_new_file(outfile, "wb");
else out = BIO_new_file(outfile, "w"); else out = BIO_new_file(outfile, "w");
} else out = BIO_new_fp(stdout, BIO_NOCLOSE); } else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if(!out) { if(!out) {
BIO_printf(bio_err, "Error opening output file %s\n", BIO_printf(bio_err, "Error opening output file %s\n",
@@ -307,7 +288,7 @@ int MAIN(int argc, char **argv)
} }
siglen = BIO_read(sigbio, sigbuf, siglen); siglen = BIO_read(sigbio, sigbuf, siglen);
BIO_free(sigbio); BIO_free(sigbio);
if(siglen == 0) { if(siglen <= 0) {
BIO_printf(bio_err, "Error reading signature file %s\n", BIO_printf(bio_err, "Error reading signature file %s\n",
sigfile); sigfile);
ERR_print_errors(bio_err); ERR_print_errors(bio_err);
@@ -350,7 +331,7 @@ end:
OPENSSL_free(buf); OPENSSL_free(buf);
} }
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
BIO_free(out); BIO_free_all(out);
EVP_PKEY_free(sigkey); EVP_PKEY_free(sigkey);
if(sigbuf) OPENSSL_free(sigbuf); if(sigbuf) OPENSSL_free(sigbuf);
if (bmd != NULL) BIO_free(bmd); if (bmd != NULL) BIO_free(bmd);
@@ -358,7 +339,7 @@ end:
} }
void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout, void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout,
EVP_PKEY *key, unsigned char *sigin, unsigned int siglen) EVP_PKEY *key, unsigned char *sigin, int siglen)
{ {
int len; int len;
int i; int i;
@@ -372,7 +353,7 @@ void do_fp(BIO *out, unsigned char *buf, BIO *bp, int sep, char binout,
{ {
EVP_MD_CTX *ctx; EVP_MD_CTX *ctx;
BIO_get_md_ctx(bp, &ctx); BIO_get_md_ctx(bp, &ctx);
i = EVP_VerifyFinal(ctx, sigin, siglen, key); i = EVP_VerifyFinal(ctx, sigin, (unsigned int)siglen, key);
if(i > 0) BIO_printf(out, "Verified OK\n"); if(i > 0) BIO_printf(out, "Verified OK\n");
else if(i == 0) BIO_printf(out, "Verification Failure\n"); else if(i == 0) BIO_printf(out, "Verification Failure\n");
else else

View File

@@ -69,7 +69,6 @@
#include <openssl/dh.h> #include <openssl/dh.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG dh_main #define PROG dh_main
@@ -88,12 +87,11 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
DH *dh=NULL; DH *dh=NULL;
int i,badops=0,text=0; int i,badops=0,text=0;
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
int informat,outformat,check=0,noout=0,C=0,ret=1; int informat,outformat,check=0,noout=0,C=0,ret=1;
char *infile,*outfile,*prog,*engine; char *infile,*outfile,*prog;
apps_startup(); apps_startup();
@@ -101,7 +99,6 @@ int MAIN(int argc, char **argv)
if ((bio_err=BIO_new(BIO_s_file())) != NULL) if ((bio_err=BIO_new(BIO_s_file())) != NULL)
BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT); BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT);
engine=NULL;
infile=NULL; infile=NULL;
outfile=NULL; outfile=NULL;
informat=FORMAT_PEM; informat=FORMAT_PEM;
@@ -132,11 +129,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
outfile= *(++argv); outfile= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-check") == 0) else if (strcmp(*argv,"-check") == 0)
check=1; check=1;
else if (strcmp(*argv,"-text") == 0) else if (strcmp(*argv,"-text") == 0)
@@ -168,30 +160,11 @@ bad:
BIO_printf(bio_err," -text print a text form of the DH parameters\n"); BIO_printf(bio_err," -text print a text form of the DH parameters\n");
BIO_printf(bio_err," -C Output C code\n"); BIO_printf(bio_err," -C Output C code\n");
BIO_printf(bio_err," -noout no output\n"); BIO_printf(bio_err," -noout no output\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
goto end; goto end;
} }
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
in=BIO_new(BIO_s_file()); in=BIO_new(BIO_s_file());
out=BIO_new(BIO_s_file()); out=BIO_new(BIO_s_file());
if ((in == NULL) || (out == NULL)) if ((in == NULL) || (out == NULL))
@@ -211,7 +184,15 @@ bad:
} }
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -336,7 +317,7 @@ bad:
ret=0; ret=0;
end: end:
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (dh != NULL) DH_free(dh); if (dh != NULL) DH_free(dh);
EXIT(ret); EXIT(ret);
} }

View File

@@ -121,7 +121,6 @@
#include <openssl/dh.h> #include <openssl/dh.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#ifndef NO_DSA #ifndef NO_DSA
#include <openssl/dsa.h> #include <openssl/dsa.h>
@@ -149,7 +148,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
DH *dh=NULL; DH *dh=NULL;
int i,badops=0,text=0; int i,badops=0,text=0;
#ifndef NO_DSA #ifndef NO_DSA
@@ -158,7 +156,7 @@ int MAIN(int argc, char **argv)
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
int informat,outformat,check=0,noout=0,C=0,ret=1; int informat,outformat,check=0,noout=0,C=0,ret=1;
char *infile,*outfile,*prog; char *infile,*outfile,*prog;
char *inrand=NULL,*engine=NULL; char *inrand=NULL;
int num = 0, g = 0; int num = 0, g = 0;
apps_startup(); apps_startup();
@@ -197,11 +195,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
outfile= *(++argv); outfile= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-check") == 0) else if (strcmp(*argv,"-check") == 0)
check=1; check=1;
else if (strcmp(*argv,"-text") == 0) else if (strcmp(*argv,"-text") == 0)
@@ -247,7 +240,6 @@ bad:
BIO_printf(bio_err," -2 generate parameters using 2 as the generator value\n"); BIO_printf(bio_err," -2 generate parameters using 2 as the generator value\n");
BIO_printf(bio_err," -5 generate parameters using 5 as the generator value\n"); BIO_printf(bio_err," -5 generate parameters using 5 as the generator value\n");
BIO_printf(bio_err," numbits number of bits in to generate (default 512)\n"); BIO_printf(bio_err," numbits number of bits in to generate (default 512)\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err," - load the file (or the files in the directory) into\n"); BIO_printf(bio_err," - load the file (or the files in the directory) into\n");
BIO_printf(bio_err," the random number generator\n"); BIO_printf(bio_err," the random number generator\n");
@@ -257,24 +249,6 @@ bad:
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if (g && !num) if (g && !num)
num = DEFBITS; num = DEFBITS;
@@ -417,7 +391,15 @@ bad:
goto end; goto end;
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -522,7 +504,7 @@ bad:
ret=0; ret=0;
end: end:
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (dh != NULL) DH_free(dh); if (dh != NULL) DH_free(dh);
EXIT(ret); EXIT(ret);
} }

View File

@@ -68,7 +68,6 @@
#include <openssl/evp.h> #include <openssl/evp.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG dsa_main #define PROG dsa_main
@@ -88,7 +87,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int ret=1; int ret=1;
DSA *dsa=NULL; DSA *dsa=NULL;
int i,badops=0; int i,badops=0;
@@ -96,7 +94,7 @@ int MAIN(int argc, char **argv)
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
int informat,outformat,text=0,noout=0; int informat,outformat,text=0,noout=0;
int pubin = 0, pubout = 0; int pubin = 0, pubout = 0;
char *infile,*outfile,*prog,*engine; char *infile,*outfile,*prog;
char *passargin = NULL, *passargout = NULL; char *passargin = NULL, *passargout = NULL;
char *passin = NULL, *passout = NULL; char *passin = NULL, *passout = NULL;
int modulus=0; int modulus=0;
@@ -107,7 +105,6 @@ int MAIN(int argc, char **argv)
if ((bio_err=BIO_new(BIO_s_file())) != NULL) if ((bio_err=BIO_new(BIO_s_file())) != NULL)
BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT); BIO_set_fp(bio_err,stderr,BIO_NOCLOSE|BIO_FP_TEXT);
engine=NULL;
infile=NULL; infile=NULL;
outfile=NULL; outfile=NULL;
informat=FORMAT_PEM; informat=FORMAT_PEM;
@@ -148,11 +145,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
passargout= *(++argv); passargout= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-noout") == 0) else if (strcmp(*argv,"-noout") == 0)
noout=1; noout=1;
else if (strcmp(*argv,"-text") == 0) else if (strcmp(*argv,"-text") == 0)
@@ -184,7 +176,6 @@ bad:
BIO_printf(bio_err," -passin arg input file pass phrase source\n"); BIO_printf(bio_err," -passin arg input file pass phrase source\n");
BIO_printf(bio_err," -out arg output file\n"); BIO_printf(bio_err," -out arg output file\n");
BIO_printf(bio_err," -passout arg output file pass phrase source\n"); BIO_printf(bio_err," -passout arg output file pass phrase source\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -des encrypt PEM output with cbc des\n"); BIO_printf(bio_err," -des encrypt PEM output with cbc des\n");
BIO_printf(bio_err," -des3 encrypt PEM output with ede cbc des using 168 bit key\n"); BIO_printf(bio_err," -des3 encrypt PEM output with ede cbc des using 168 bit key\n");
#ifndef NO_IDEA #ifndef NO_IDEA
@@ -198,24 +189,6 @@ bad:
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) { if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) {
BIO_printf(bio_err, "Error getting passwords\n"); BIO_printf(bio_err, "Error getting passwords\n");
goto end; goto end;
@@ -260,7 +233,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -308,7 +289,7 @@ bad:
ret=0; ret=0;
end: end:
if(in != NULL) BIO_free(in); if(in != NULL) BIO_free(in);
if(out != NULL) BIO_free(out); if(out != NULL) BIO_free_all(out);
if(dsa != NULL) DSA_free(dsa); if(dsa != NULL) DSA_free(dsa);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);

View File

@@ -69,7 +69,6 @@
#include <openssl/dsa.h> #include <openssl/dsa.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG dsaparam_main #define PROG dsaparam_main
@@ -91,12 +90,11 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
DSA *dsa=NULL; DSA *dsa=NULL;
int i,badops=0,text=0; int i,badops=0,text=0;
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
int informat,outformat,noout=0,C=0,ret=1; int informat,outformat,noout=0,C=0,ret=1;
char *infile,*outfile,*prog,*inrand=NULL,*engine=NULL; char *infile,*outfile,*prog,*inrand=NULL;
int numbits= -1,num,genkey=0; int numbits= -1,num,genkey=0;
int need_rand=0; int need_rand=0;
@@ -207,7 +205,15 @@ bad:
} }
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -349,7 +355,7 @@ bad:
ret=0; ret=0;
end: end:
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (dsa != NULL) DSA_free(dsa); if (dsa != NULL) DSA_free(dsa);
EXIT(ret); EXIT(ret);
} }

View File

@@ -70,7 +70,6 @@
#include <openssl/md5.h> #include <openssl/md5.h>
#endif #endif
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
int set_hex(char *in,unsigned char *out,int size); int set_hex(char *in,unsigned char *out,int size);
#undef SIZE #undef SIZE
@@ -85,7 +84,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
static const char magic[]="Salted__"; static const char magic[]="Salted__";
char mbuf[8]; /* should be 1 smaller than magic */ char mbuf[8]; /* should be 1 smaller than magic */
char *strbuf=NULL; char *strbuf=NULL;
@@ -103,7 +101,6 @@ int MAIN(int argc, char **argv)
BIO *in=NULL,*out=NULL,*b64=NULL,*benc=NULL,*rbio=NULL,*wbio=NULL; BIO *in=NULL,*out=NULL,*b64=NULL,*benc=NULL,*rbio=NULL,*wbio=NULL;
#define PROG_NAME_SIZE 16 #define PROG_NAME_SIZE 16
char pname[PROG_NAME_SIZE]; char pname[PROG_NAME_SIZE];
char *engine = NULL;
apps_startup(); apps_startup();
@@ -144,11 +141,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
passarg= *(++argv); passarg= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-d") == 0) else if (strcmp(*argv,"-d") == 0)
enc=0; enc=0;
else if (strcmp(*argv,"-p") == 0) else if (strcmp(*argv,"-p") == 0)
@@ -249,7 +241,6 @@ bad:
BIO_printf(bio_err,"%-14s key/iv in hex is the next argument\n","-K/-iv"); BIO_printf(bio_err,"%-14s key/iv in hex is the next argument\n","-K/-iv");
BIO_printf(bio_err,"%-14s print the iv/key (then exit if -P)\n","-[pP]"); BIO_printf(bio_err,"%-14s print the iv/key (then exit if -P)\n","-[pP]");
BIO_printf(bio_err,"%-14s buffer size\n","-bufsize <n>"); BIO_printf(bio_err,"%-14s buffer size\n","-bufsize <n>");
BIO_printf(bio_err,"%-14s use engine e, possibly a hardware device.\n","-engine e");
BIO_printf(bio_err,"Cipher Types\n"); BIO_printf(bio_err,"Cipher Types\n");
BIO_printf(bio_err,"des : 56 bit key DES encryption\n"); BIO_printf(bio_err,"des : 56 bit key DES encryption\n");
@@ -317,30 +308,17 @@ bad:
LN_rc5_cfb64, LN_rc5_ofb64); LN_rc5_cfb64, LN_rc5_ofb64);
BIO_printf(bio_err," -%-4s (%s)\n","rc5", LN_rc5_cbc); BIO_printf(bio_err," -%-4s (%s)\n","rc5", LN_rc5_cbc);
#endif #endif
#ifndef NO_RIJNDAEL
BIO_printf(bio_err," -%-12s -%-12s -%-12s -%-12s\n",
LN_rijndael_ecb_k128_b128,"","","","");
#endif
goto end; goto end;
} }
argc--; argc--;
argv++; argv++;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if (bufsize != NULL) if (bufsize != NULL)
{ {
unsigned long n; unsigned long n;
@@ -443,7 +421,15 @@ bad:
if (outf == NULL) if (outf == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outf) <= 0) if (BIO_write_filename(out,outf) <= 0)
@@ -611,7 +597,7 @@ end:
if (strbuf != NULL) OPENSSL_free(strbuf); if (strbuf != NULL) OPENSSL_free(strbuf);
if (buff != NULL) OPENSSL_free(buff); if (buff != NULL) OPENSSL_free(buff);
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (benc != NULL) BIO_free(benc); if (benc != NULL) BIO_free(benc);
if (b64 != NULL) BIO_free(b64); if (b64 != NULL) BIO_free(b64);
if(pass) OPENSSL_free(pass); if(pass) OPENSSL_free(pass);

View File

@@ -91,12 +91,18 @@ int MAIN(int argc, char **argv)
out=BIO_new(BIO_s_file()); out=BIO_new(BIO_s_file());
if ((out != NULL) && BIO_set_fp(out,stdout,BIO_NOCLOSE)) if ((out != NULL) && BIO_set_fp(out,stdout,BIO_NOCLOSE))
{ {
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
lh_node_stats_bio((LHASH *)ERR_get_string_table(),out); lh_node_stats_bio((LHASH *)ERR_get_string_table(),out);
lh_stats_bio((LHASH *)ERR_get_string_table(),out); lh_stats_bio((LHASH *)ERR_get_string_table(),out);
lh_node_usage_stats_bio((LHASH *) lh_node_usage_stats_bio((LHASH *)
ERR_get_string_table(),out); ERR_get_string_table(),out);
} }
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
argc--; argc--;
argv++; argv++;
} }

View File

@@ -70,7 +70,6 @@
#include <openssl/dh.h> #include <openssl/dh.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#define DEFBITS 512 #define DEFBITS 512
#undef PROG #undef PROG
@@ -82,13 +81,11 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
DH *dh=NULL; DH *dh=NULL;
int ret=1,num=DEFBITS; int ret=1,num=DEFBITS;
int g=2; int g=2;
char *outfile=NULL; char *outfile=NULL;
char *inrand=NULL; char *inrand=NULL;
char *engine=NULL;
BIO *out=NULL; BIO *out=NULL;
apps_startup(); apps_startup();
@@ -113,11 +110,6 @@ int MAIN(int argc, char **argv)
g=3; */ g=3; */
else if (strcmp(*argv,"-5") == 0) else if (strcmp(*argv,"-5") == 0)
g=5; g=5;
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-rand") == 0) else if (strcmp(*argv,"-rand") == 0)
{ {
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
@@ -133,34 +125,15 @@ int MAIN(int argc, char **argv)
bad: bad:
BIO_printf(bio_err,"usage: gendh [args] [numbits]\n"); BIO_printf(bio_err,"usage: gendh [args] [numbits]\n");
BIO_printf(bio_err," -out file - output the key to 'file\n"); BIO_printf(bio_err," -out file - output the key to 'file\n");
BIO_printf(bio_err," -2 - use 2 as the generator value\n"); BIO_printf(bio_err," -2 use 2 as the generator value\n");
/* BIO_printf(bio_err," -3 - use 3 as the generator value\n"); */ /* BIO_printf(bio_err," -3 use 3 as the generator value\n"); */
BIO_printf(bio_err," -5 - use 5 as the generator value\n"); BIO_printf(bio_err," -5 use 5 as the generator value\n");
BIO_printf(bio_err," -engine e - use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err," - load the file (or the files in the directory) into\n"); BIO_printf(bio_err," - load the file (or the files in the directory) into\n");
BIO_printf(bio_err," the random number generator\n"); BIO_printf(bio_err," the random number generator\n");
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
out=BIO_new(BIO_s_file()); out=BIO_new(BIO_s_file());
if (out == NULL) if (out == NULL)
{ {
@@ -169,7 +142,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -201,7 +182,7 @@ bad:
end: end:
if (ret != 0) if (ret != 0)
ERR_print_errors(bio_err); ERR_print_errors(bio_err);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (dh != NULL) DH_free(dh); if (dh != NULL) DH_free(dh);
EXIT(ret); EXIT(ret);
} }

View File

@@ -68,7 +68,6 @@
#include <openssl/dsa.h> #include <openssl/dsa.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#define DEFBITS 512 #define DEFBITS 512
#undef PROG #undef PROG
@@ -78,7 +77,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
DSA *dsa=NULL; DSA *dsa=NULL;
int ret=1; int ret=1;
char *outfile=NULL; char *outfile=NULL;
@@ -86,7 +84,6 @@ int MAIN(int argc, char **argv)
char *passargout = NULL, *passout = NULL; char *passargout = NULL, *passout = NULL;
BIO *out=NULL,*in=NULL; BIO *out=NULL,*in=NULL;
EVP_CIPHER *enc=NULL; EVP_CIPHER *enc=NULL;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -109,11 +106,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
passargout= *(++argv); passargout= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-rand") == 0) else if (strcmp(*argv,"-rand") == 0)
{ {
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
@@ -153,7 +145,6 @@ bad:
#ifndef NO_IDEA #ifndef NO_IDEA
BIO_printf(bio_err," -idea - encrypt the generated key with IDEA in cbc mode\n"); BIO_printf(bio_err," -idea - encrypt the generated key with IDEA in cbc mode\n");
#endif #endif
BIO_printf(bio_err," -engine e - use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err," - load the file (or the files in the directory) into\n"); BIO_printf(bio_err," - load the file (or the files in the directory) into\n");
BIO_printf(bio_err," the random number generator\n"); BIO_printf(bio_err," the random number generator\n");
@@ -162,24 +153,6 @@ bad:
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(!app_passwd(bio_err, NULL, passargout, NULL, &passout)) { if(!app_passwd(bio_err, NULL, passargout, NULL, &passout)) {
BIO_printf(bio_err, "Error getting password\n"); BIO_printf(bio_err, "Error getting password\n");
goto end; goto end;
@@ -205,7 +178,15 @@ bad:
if (out == NULL) goto end; if (out == NULL) goto end;
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -236,7 +217,7 @@ end:
if (ret != 0) if (ret != 0)
ERR_print_errors(bio_err); ERR_print_errors(bio_err);
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (dsa != NULL) DSA_free(dsa); if (dsa != NULL) DSA_free(dsa);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);
EXIT(ret); EXIT(ret);

View File

@@ -69,7 +69,6 @@
#include <openssl/evp.h> #include <openssl/evp.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#define DEFBITS 512 #define DEFBITS 512
#undef PROG #undef PROG
@@ -81,7 +80,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int ret=1; int ret=1;
RSA *rsa=NULL; RSA *rsa=NULL;
int i,num=DEFBITS; int i,num=DEFBITS;
@@ -90,7 +88,6 @@ int MAIN(int argc, char **argv)
unsigned long f4=RSA_F4; unsigned long f4=RSA_F4;
char *outfile=NULL; char *outfile=NULL;
char *passargout = NULL, *passout = NULL; char *passargout = NULL, *passout = NULL;
char *engine=NULL;
char *inrand=NULL; char *inrand=NULL;
BIO *out=NULL; BIO *out=NULL;
@@ -119,11 +116,6 @@ int MAIN(int argc, char **argv)
f4=3; f4=3;
else if (strcmp(*argv,"-F4") == 0 || strcmp(*argv,"-f4") == 0) else if (strcmp(*argv,"-F4") == 0 || strcmp(*argv,"-f4") == 0)
f4=RSA_F4; f4=RSA_F4;
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-rand") == 0) else if (strcmp(*argv,"-rand") == 0)
{ {
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
@@ -162,7 +154,6 @@ bad:
BIO_printf(bio_err," -passout arg output file pass phrase source\n"); BIO_printf(bio_err," -passout arg output file pass phrase source\n");
BIO_printf(bio_err," -f4 use F4 (0x10001) for the E value\n"); BIO_printf(bio_err," -f4 use F4 (0x10001) for the E value\n");
BIO_printf(bio_err," -3 use 3 for the E value\n"); BIO_printf(bio_err," -3 use 3 for the E value\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err," -rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err," load the file (or the files in the directory) into\n"); BIO_printf(bio_err," load the file (or the files in the directory) into\n");
BIO_printf(bio_err," the random number generator\n"); BIO_printf(bio_err," the random number generator\n");
@@ -176,26 +167,16 @@ bad:
goto err; goto err;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto err;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto err;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -205,8 +186,7 @@ bad:
} }
} }
if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL if (!app_RAND_load_file(NULL, bio_err, 1) && inrand == NULL)
&& !RAND_status())
{ {
BIO_printf(bio_err,"warning, not much extra random data, consider using the -rand option\n"); BIO_printf(bio_err,"warning, not much extra random data, consider using the -rand option\n");
} }
@@ -240,7 +220,7 @@ bad:
ret=0; ret=0;
err: err:
if (rsa != NULL) RSA_free(rsa); if (rsa != NULL) RSA_free(rsa);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);
if (ret != 0) if (ret != 0)
ERR_print_errors(bio_err); ERR_print_errors(bio_err);

View File

@@ -119,8 +119,15 @@ int MAIN(int argc, char **argv)
"Can't open output file %s\n", outfile); "Can't open output file %s\n", outfile);
goto end; goto end;
} }
} else out = BIO_new_fp(stdout, BIO_NOCLOSE); } else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if (toseq) { if (toseq) {
seq = NETSCAPE_CERT_SEQUENCE_new(); seq = NETSCAPE_CERT_SEQUENCE_new();
seq->certs = sk_X509_new_null(); seq->certs = sk_X509_new_null();
@@ -152,7 +159,7 @@ int MAIN(int argc, char **argv)
ret = 0; ret = 0;
end: end:
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
NETSCAPE_CERT_SEQUENCE_free(seq); NETSCAPE_CERT_SEQUENCE_free(seq);
EXIT(ret); EXIT(ret);

View File

@@ -238,13 +238,19 @@ static int do_cmd(LHASH *prog, int argc, char *argv[])
else if ((strncmp(argv[0],"no-",3)) == 0) else if ((strncmp(argv[0],"no-",3)) == 0)
{ {
BIO *bio_stdout = BIO_new_fp(stdout,BIO_NOCLOSE); BIO *bio_stdout = BIO_new_fp(stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
bio_stdout = BIO_push(tmpbio, bio_stdout);
}
#endif
f.name=argv[0]+3; f.name=argv[0]+3;
ret = (lh_retrieve(prog,&f) != NULL); ret = (lh_retrieve(prog,&f) != NULL);
if (!ret) if (!ret)
BIO_printf(bio_stdout, "%s\n", argv[0]); BIO_printf(bio_stdout, "%s\n", argv[0]);
else else
BIO_printf(bio_stdout, "%s\n", argv[0]+3); BIO_printf(bio_stdout, "%s\n", argv[0]+3);
BIO_free(bio_stdout); BIO_free_all(bio_stdout);
goto end; goto end;
} }
else if ((strcmp(argv[0],"quit") == 0) || else if ((strcmp(argv[0],"quit") == 0) ||
@@ -269,11 +275,17 @@ static int do_cmd(LHASH *prog, int argc, char *argv[])
else /* strcmp(argv[0],LIST_CIPHER_COMMANDS) == 0 */ else /* strcmp(argv[0],LIST_CIPHER_COMMANDS) == 0 */
list_type = FUNC_TYPE_CIPHER; list_type = FUNC_TYPE_CIPHER;
bio_stdout = BIO_new_fp(stdout,BIO_NOCLOSE); bio_stdout = BIO_new_fp(stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
bio_stdout = BIO_push(tmpbio, bio_stdout);
}
#endif
for (fp=functions; fp->name != NULL; fp++) for (fp=functions; fp->name != NULL; fp++)
if (fp->type == list_type) if (fp->type == list_type)
BIO_printf(bio_stdout, "%s\n", fp->name); BIO_printf(bio_stdout, "%s\n", fp->name);
BIO_free(bio_stdout); BIO_free_all(bio_stdout);
ret=0; ret=0;
goto end; goto end;
} }

View File

@@ -81,6 +81,12 @@ int MAIN(int argc, char **argv)
if (out == NULL) if (out == NULL)
goto err; goto err;
BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
badopt = 0, opt_done = 0; badopt = 0, opt_done = 0;
i = 0; i = 0;
@@ -276,7 +282,7 @@ err:
if (in) if (in)
BIO_free(in); BIO_free(in);
if (out) if (out)
BIO_free(out); BIO_free_all(out);
EXIT(ret); EXIT(ret);
} }

View File

@@ -1 +1 @@
01 07

View File

@@ -66,7 +66,6 @@
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/pkcs12.h> #include <openssl/pkcs12.h>
#include <openssl/engine.h>
#define PROG pkcs12_main #define PROG pkcs12_main
@@ -93,7 +92,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
char *infile=NULL, *outfile=NULL, *keyname = NULL; char *infile=NULL, *outfile=NULL, *keyname = NULL;
char *certfile=NULL; char *certfile=NULL;
BIO *in=NULL, *out = NULL, *inkey = NULL, *certsin = NULL; BIO *in=NULL, *out = NULL, *inkey = NULL, *certsin = NULL;
@@ -120,7 +118,6 @@ int MAIN(int argc, char **argv)
char *passin = NULL, *passout = NULL; char *passin = NULL, *passout = NULL;
char *inrand = NULL; char *inrand = NULL;
char *CApath = NULL, *CAfile = NULL; char *CApath = NULL, *CAfile = NULL;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -239,11 +236,6 @@ int MAIN(int argc, char **argv)
args++; args++;
CAfile = *args; CAfile = *args;
} else badarg = 1; } else badarg = 1;
} else if (!strcmp(*args,"-engine")) {
if (args[1]) {
args++;
engine = *args;
} else badarg = 1;
} else badarg = 1; } else badarg = 1;
} else badarg = 1; } else badarg = 1;
@@ -287,27 +279,12 @@ int MAIN(int argc, char **argv)
BIO_printf (bio_err, "-password p set import/export password source\n"); BIO_printf (bio_err, "-password p set import/export password source\n");
BIO_printf (bio_err, "-passin p input file pass phrase source\n"); BIO_printf (bio_err, "-passin p input file pass phrase source\n");
BIO_printf (bio_err, "-passout p output file pass phrase source\n"); BIO_printf (bio_err, "-passout p output file pass phrase source\n");
BIO_printf (bio_err, "-engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err, "-rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err, "-rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err, " load the file (or the files in the directory) into\n"); BIO_printf(bio_err, " load the file (or the files in the directory) into\n");
BIO_printf(bio_err, " the random number generator\n"); BIO_printf(bio_err, " the random number generator\n");
goto end; goto end;
} }
if (engine != NULL) {
if((e = ENGINE_by_id(engine)) == NULL) {
BIO_printf(bio_err,"invalid engine \"%s\"\n", engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(passarg) { if(passarg) {
if(export_cert) passargout = passarg; if(export_cert) passargout = passarg;
else passargin = passarg; else passargin = passarg;
@@ -373,8 +350,15 @@ int MAIN(int argc, char **argv)
CRYPTO_push_info("write files"); CRYPTO_push_info("write files");
#endif #endif
if (!outfile) out = BIO_new_fp(stdout, BIO_NOCLOSE); if (!outfile) {
else out = BIO_new_file(outfile, "wb"); out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
} else out = BIO_new_file(outfile, "wb");
if (!out) { if (!out) {
BIO_printf(bio_err, "Error opening output file %s\n", BIO_printf(bio_err, "Error opening output file %s\n",
outfile ? outfile : "<stdout>"); outfile ? outfile : "<stdout>");
@@ -680,7 +664,7 @@ int MAIN(int argc, char **argv)
CRYPTO_remove_all_info(); CRYPTO_remove_all_info();
#endif #endif
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
if (canames) sk_free(canames); if (canames) sk_free(canames);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);
@@ -903,14 +887,14 @@ int print_attribs (BIO *out, STACK_OF(X509_ATTRIBUTE) *attrlst, char *name)
break; break;
case V_ASN1_OCTET_STRING: case V_ASN1_OCTET_STRING:
hex_prin(out, av->value.bit_string->data, hex_prin(out, av->value.octet_string->data,
av->value.bit_string->length); av->value.octet_string->length);
BIO_printf(out, "\n"); BIO_printf(out, "\n");
break; break;
case V_ASN1_BIT_STRING: case V_ASN1_BIT_STRING:
hex_prin(out, av->value.octet_string->data, hex_prin(out, av->value.bit_string->data,
av->value.octet_string->length); av->value.bit_string->length);
BIO_printf(out, "\n"); BIO_printf(out, "\n");
break; break;

View File

@@ -67,7 +67,6 @@
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pkcs7.h> #include <openssl/pkcs7.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG pkcs7_main #define PROG pkcs7_main
@@ -83,7 +82,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
PKCS7 *p7=NULL; PKCS7 *p7=NULL;
int i,badops=0; int i,badops=0;
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
@@ -91,7 +89,6 @@ int MAIN(int argc, char **argv)
char *infile,*outfile,*prog; char *infile,*outfile,*prog;
int print_certs=0,text=0,noout=0; int print_certs=0,text=0,noout=0;
int ret=0; int ret=0;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -135,11 +132,6 @@ int MAIN(int argc, char **argv)
text=1; text=1;
else if (strcmp(*argv,"-print_certs") == 0) else if (strcmp(*argv,"-print_certs") == 0)
print_certs=1; print_certs=1;
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else else
{ {
BIO_printf(bio_err,"unknown option %s\n",*argv); BIO_printf(bio_err,"unknown option %s\n",*argv);
@@ -162,30 +154,11 @@ bad:
BIO_printf(bio_err," -print_certs print any certs or crl in the input\n"); BIO_printf(bio_err," -print_certs print any certs or crl in the input\n");
BIO_printf(bio_err," -text print full details of certificates\n"); BIO_printf(bio_err," -text print full details of certificates\n");
BIO_printf(bio_err," -noout don't output encoded data\n"); BIO_printf(bio_err," -noout don't output encoded data\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
EXIT(1); EXIT(1);
} }
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
in=BIO_new(BIO_s_file()); in=BIO_new(BIO_s_file());
out=BIO_new(BIO_s_file()); out=BIO_new(BIO_s_file());
if ((in == NULL) || (out == NULL)) if ((in == NULL) || (out == NULL))
@@ -223,7 +196,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -307,6 +288,6 @@ bad:
end: end:
if (p7 != NULL) PKCS7_free(p7); if (p7 != NULL) PKCS7_free(p7);
if (in != NULL) BIO_free(in); if (in != NULL) BIO_free(in);
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
EXIT(ret); EXIT(ret);
} }

View File

@@ -62,7 +62,6 @@
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/evp.h> #include <openssl/evp.h>
#include <openssl/pkcs12.h> #include <openssl/pkcs12.h>
#include <openssl/engine.h>
#include "apps.h" #include "apps.h"
#define PROG pkcs8_main #define PROG pkcs8_main
@@ -71,7 +70,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
char **args, *infile = NULL, *outfile = NULL; char **args, *infile = NULL, *outfile = NULL;
char *passargin = NULL, *passargout = NULL; char *passargin = NULL, *passargout = NULL;
BIO *in = NULL, *out = NULL; BIO *in = NULL, *out = NULL;
@@ -87,13 +85,9 @@ int MAIN(int argc, char **argv)
EVP_PKEY *pkey; EVP_PKEY *pkey;
char pass[50], *passin = NULL, *passout = NULL, *p8pass = NULL; char pass[50], *passin = NULL, *passout = NULL, *p8pass = NULL;
int badarg = 0; int badarg = 0;
char *engine=NULL;
if (bio_err == NULL) bio_err = BIO_new_fp (stderr, BIO_NOCLOSE); if (bio_err == NULL) bio_err = BIO_new_fp (stderr, BIO_NOCLOSE);
informat=FORMAT_PEM; informat=FORMAT_PEM;
outformat=FORMAT_PEM; outformat=FORMAT_PEM;
ERR_load_crypto_strings(); ERR_load_crypto_strings();
OpenSSL_add_all_algorithms(); OpenSSL_add_all_algorithms();
args = argv + 1; args = argv + 1;
@@ -144,11 +138,6 @@ int MAIN(int argc, char **argv)
if (!args[1]) goto bad; if (!args[1]) goto bad;
passargout= *(++args); passargout= *(++args);
} }
else if (strcmp(*args,"-engine") == 0)
{
if (!args[1]) goto bad;
engine= *(++args);
}
else if (!strcmp (*args, "-in")) { else if (!strcmp (*args, "-in")) {
if (args[1]) { if (args[1]) {
args++; args++;
@@ -181,28 +170,9 @@ int MAIN(int argc, char **argv)
BIO_printf(bio_err, "-nocrypt use or expect unencrypted private key\n"); BIO_printf(bio_err, "-nocrypt use or expect unencrypted private key\n");
BIO_printf(bio_err, "-v2 alg use PKCS#5 v2.0 and cipher \"alg\"\n"); BIO_printf(bio_err, "-v2 alg use PKCS#5 v2.0 and cipher \"alg\"\n");
BIO_printf(bio_err, "-v1 obj use PKCS#5 v1.5 and cipher \"alg\"\n"); BIO_printf(bio_err, "-v1 obj use PKCS#5 v1.5 and cipher \"alg\"\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
return (1); return (1);
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
return (1);
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
return (1);
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) { if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) {
BIO_printf(bio_err, "Error getting passwords\n"); BIO_printf(bio_err, "Error getting passwords\n");
return (1); return (1);
@@ -224,8 +194,15 @@ int MAIN(int argc, char **argv)
"Can't open output file %s\n", outfile); "Can't open output file %s\n", outfile);
return (1); return (1);
} }
} else out = BIO_new_fp (stdout, BIO_NOCLOSE); } else {
out = BIO_new_fp (stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if (topk8) { if (topk8) {
if(informat == FORMAT_PEM) if(informat == FORMAT_PEM)
pkey = PEM_read_bio_PrivateKey(in, NULL, NULL, passin); pkey = PEM_read_bio_PrivateKey(in, NULL, NULL, passin);
@@ -283,7 +260,7 @@ int MAIN(int argc, char **argv)
} }
PKCS8_PRIV_KEY_INFO_free (p8inf); PKCS8_PRIV_KEY_INFO_free (p8inf);
EVP_PKEY_free(pkey); EVP_PKEY_free(pkey);
BIO_free(out); BIO_free_all(out);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);
return (0); return (0);
@@ -366,7 +343,7 @@ int MAIN(int argc, char **argv)
} }
EVP_PKEY_free(pkey); EVP_PKEY_free(pkey);
BIO_free(out); BIO_free_all(out);
BIO_free(in); BIO_free(in);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);

View File

@@ -9,7 +9,6 @@
#include <openssl/bio.h> #include <openssl/bio.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG rand_main #define PROG rand_main
@@ -24,7 +23,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int i, r, ret = 1; int i, r, ret = 1;
int badopt; int badopt;
char *outfile = NULL; char *outfile = NULL;
@@ -32,7 +30,6 @@ int MAIN(int argc, char **argv)
int base64 = 0; int base64 = 0;
BIO *out = NULL; BIO *out = NULL;
int num = -1; int num = -1;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -51,13 +48,6 @@ int MAIN(int argc, char **argv)
else else
badopt = 1; badopt = 1;
} }
if (strcmp(argv[i], "-engine") == 0)
{
if ((argv[i+1] != NULL) && (engine == NULL))
engine = argv[++i];
else
badopt = 1;
}
else if (strcmp(argv[i], "-rand") == 0) else if (strcmp(argv[i], "-rand") == 0)
{ {
if ((argv[i+1] != NULL) && (inrand == NULL)) if ((argv[i+1] != NULL) && (inrand == NULL))
@@ -95,30 +85,11 @@ int MAIN(int argc, char **argv)
BIO_printf(bio_err, "Usage: rand [options] num\n"); BIO_printf(bio_err, "Usage: rand [options] num\n");
BIO_printf(bio_err, "where options are\n"); BIO_printf(bio_err, "where options are\n");
BIO_printf(bio_err, "-out file - write to file\n"); BIO_printf(bio_err, "-out file - write to file\n");
BIO_printf(bio_err," -engine e - use engine e, possibly a hardware device.\n");
BIO_printf(bio_err, "-rand file%cfile%c... - seed PRNG from files\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err, "-rand file%cfile%c... - seed PRNG from files\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err, "-base64 - encode output\n"); BIO_printf(bio_err, "-base64 - encode output\n");
goto err; goto err;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto err;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto err;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
app_RAND_load_file(NULL, bio_err, (inrand != NULL)); app_RAND_load_file(NULL, bio_err, (inrand != NULL));
if (inrand != NULL) if (inrand != NULL)
BIO_printf(bio_err,"%ld semi-random bytes loaded\n", BIO_printf(bio_err,"%ld semi-random bytes loaded\n",
@@ -130,7 +101,15 @@ int MAIN(int argc, char **argv)
if (outfile != NULL) if (outfile != NULL)
r = BIO_write_filename(out, outfile); r = BIO_write_filename(out, outfile);
else else
{
r = BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT); r = BIO_set_fp(out, stdout, BIO_NOCLOSE | BIO_FP_TEXT);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if (r <= 0) if (r <= 0)
goto err; goto err;

View File

@@ -73,7 +73,6 @@
#include <openssl/x509v3.h> #include <openssl/x509v3.h>
#include <openssl/objects.h> #include <openssl/objects.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#define SECTION "req" #define SECTION "req"
@@ -141,10 +140,10 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
#ifndef NO_DSA #ifndef NO_DSA
DSA *dsa_params=NULL; DSA *dsa_params=NULL;
#endif #endif
unsigned long nmflag = 0;
int ex=1,x509=0,days=30; int ex=1,x509=0,days=30;
X509 *x509ss=NULL; X509 *x509ss=NULL;
X509_REQ *req=NULL; X509_REQ *req=NULL;
@@ -152,9 +151,8 @@ int MAIN(int argc, char **argv)
int i,badops=0,newreq=0,newkey= -1,pkey_type=0; int i,badops=0,newreq=0,newkey= -1,pkey_type=0;
BIO *in=NULL,*out=NULL; BIO *in=NULL,*out=NULL;
int informat,outformat,verify=0,noout=0,text=0,keyform=FORMAT_PEM; int informat,outformat,verify=0,noout=0,text=0,keyform=FORMAT_PEM;
int nodes=0,kludge=0,newhdr=0; int nodes=0,kludge=0,newhdr=0,subject=0;
char *infile,*outfile,*prog,*keyfile=NULL,*template=NULL,*keyout=NULL; char *infile,*outfile,*prog,*keyfile=NULL,*template=NULL,*keyout=NULL;
char *engine=NULL;
char *extensions = NULL; char *extensions = NULL;
char *req_exts = NULL; char *req_exts = NULL;
EVP_CIPHER *cipher=NULL; EVP_CIPHER *cipher=NULL;
@@ -198,11 +196,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
outformat=str2fmt(*(++argv)); outformat=str2fmt(*(++argv));
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-key") == 0) else if (strcmp(*argv,"-key") == 0)
{ {
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
@@ -330,6 +323,13 @@ int MAIN(int argc, char **argv)
nodes=1; nodes=1;
else if (strcmp(*argv,"-noout") == 0) else if (strcmp(*argv,"-noout") == 0)
noout=1; noout=1;
else if (strcmp(*argv,"-nameopt") == 0)
{
if (--argc < 1) goto bad;
if (!set_name_ex(&nmflag, *(++argv))) goto bad;
}
else if (strcmp(*argv,"-subject") == 0)
subject=1;
else if (strcmp(*argv,"-text") == 0) else if (strcmp(*argv,"-text") == 0)
text=1; text=1;
else if (strcmp(*argv,"-x509") == 0) else if (strcmp(*argv,"-x509") == 0)
@@ -383,7 +383,6 @@ bad:
BIO_printf(bio_err," -verify verify signature on REQ\n"); BIO_printf(bio_err," -verify verify signature on REQ\n");
BIO_printf(bio_err," -modulus RSA modulus\n"); BIO_printf(bio_err," -modulus RSA modulus\n");
BIO_printf(bio_err," -nodes don't encrypt the output key\n"); BIO_printf(bio_err," -nodes don't encrypt the output key\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err," -key file use the private key contained in file\n"); BIO_printf(bio_err," -key file use the private key contained in file\n");
BIO_printf(bio_err," -keyform arg key file format\n"); BIO_printf(bio_err," -keyform arg key file format\n");
BIO_printf(bio_err," -keyout arg file to send the key to\n"); BIO_printf(bio_err," -keyout arg file to send the key to\n");
@@ -531,36 +530,7 @@ bad:
if ((in == NULL) || (out == NULL)) if ((in == NULL) || (out == NULL))
goto end; goto end;
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if (keyfile != NULL) if (keyfile != NULL)
{
if (keyform == FORMAT_ENGINE)
{
if (!e)
{
BIO_printf(bio_err,"no engine specified\n");
goto end;
}
pkey = ENGINE_load_private_key(e, keyfile, NULL);
}
else
{ {
if (BIO_read_filename(in,keyfile) <= 0) if (BIO_read_filename(in,keyfile) <= 0)
{ {
@@ -572,15 +542,13 @@ bad:
pkey=d2i_PrivateKey_bio(in,NULL); pkey=d2i_PrivateKey_bio(in,NULL);
else if (keyform == FORMAT_PEM) else if (keyform == FORMAT_PEM)
{ {
pkey=PEM_read_bio_PrivateKey(in,NULL,NULL, pkey=PEM_read_bio_PrivateKey(in,NULL,NULL,passin);
passin);
} }
else else
{ {
BIO_printf(bio_err,"bad input format specified for X509 request\n"); BIO_printf(bio_err,"bad input format specified for X509 request\n");
goto end; goto end;
} }
}
if (pkey == NULL) if (pkey == NULL)
{ {
@@ -649,6 +617,12 @@ bad:
{ {
BIO_printf(bio_err,"writing new private key to stdout\n"); BIO_printf(bio_err,"writing new private key to stdout\n");
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
} }
else else
{ {
@@ -837,14 +811,22 @@ loop:
BIO_printf(bio_err,"verify OK\n"); BIO_printf(bio_err,"verify OK\n");
} }
if (noout && !text && !modulus) if (noout && !text && !modulus && !subject)
{ {
ex=0; ex=0;
goto end; goto end;
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if ((keyout != NULL) && (strcmp(outfile,keyout) == 0)) if ((keyout != NULL) && (strcmp(outfile,keyout) == 0))
@@ -866,6 +848,14 @@ loop:
X509_REQ_print(out,req); X509_REQ_print(out,req);
} }
if(subject)
{
if(x509)
print_name(out, "subject=", X509_get_subject_name(x509ss), nmflag);
else
print_name(out, "subject=", X509_REQ_get_subject_name(req), nmflag);
}
if (modulus) if (modulus)
{ {
EVP_PKEY *pubkey; EVP_PKEY *pubkey;
@@ -930,7 +920,7 @@ end:
} }
if ((req_conf != NULL) && (req_conf != config)) CONF_free(req_conf); if ((req_conf != NULL) && (req_conf != config)) CONF_free(req_conf);
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
EVP_PKEY_free(pkey); EVP_PKEY_free(pkey);
X509_REQ_free(req); X509_REQ_free(req);
X509_free(x509ss); X509_free(x509ss);

View File

@@ -68,7 +68,6 @@
#include <openssl/evp.h> #include <openssl/evp.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG rsa_main #define PROG rsa_main
@@ -91,7 +90,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int ret=1; int ret=1;
RSA *rsa=NULL; RSA *rsa=NULL;
int i,badops=0, sgckey=0; int i,badops=0, sgckey=0;
@@ -102,7 +100,6 @@ int MAIN(int argc, char **argv)
char *infile,*outfile,*prog; char *infile,*outfile,*prog;
char *passargin = NULL, *passargout = NULL; char *passargin = NULL, *passargout = NULL;
char *passin = NULL, *passout = NULL; char *passin = NULL, *passout = NULL;
char *engine=NULL;
int modulus=0; int modulus=0;
apps_startup(); apps_startup();
@@ -151,11 +148,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
passargout= *(++argv); passargout= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-sgckey") == 0) else if (strcmp(*argv,"-sgckey") == 0)
sgckey=1; sgckey=1;
else if (strcmp(*argv,"-pubin") == 0) else if (strcmp(*argv,"-pubin") == 0)
@@ -203,30 +195,11 @@ bad:
BIO_printf(bio_err," -check verify key consistency\n"); BIO_printf(bio_err," -check verify key consistency\n");
BIO_printf(bio_err," -pubin expect a public key in input file\n"); BIO_printf(bio_err," -pubin expect a public key in input file\n");
BIO_printf(bio_err," -pubout output a public key\n"); BIO_printf(bio_err," -pubout output a public key\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
goto end; goto end;
} }
ERR_load_crypto_strings(); ERR_load_crypto_strings();
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) { if(!app_passwd(bio_err, passargin, passargout, &passin, &passout)) {
BIO_printf(bio_err, "Error getting passwords\n"); BIO_printf(bio_err, "Error getting passwords\n");
goto end; goto end;
@@ -305,7 +278,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -404,7 +385,7 @@ bad:
ret=0; ret=0;
end: end:
if(in != NULL) BIO_free(in); if(in != NULL) BIO_free(in);
if(out != NULL) BIO_free(out); if(out != NULL) BIO_free_all(out);
if(rsa != NULL) RSA_free(rsa); if(rsa != NULL) RSA_free(rsa);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
if(passout) OPENSSL_free(passout); if(passout) OPENSSL_free(passout);

View File

@@ -55,11 +55,13 @@
* Hudson (tjh@cryptsoft.com). * Hudson (tjh@cryptsoft.com).
* *
*/ */
#ifndef NO_RSA
#include "apps.h" #include "apps.h"
#include <string.h> #include <string.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#define RSA_SIGN 1 #define RSA_SIGN 1
#define RSA_VERIFY 2 #define RSA_VERIFY 2
@@ -80,7 +82,6 @@ int MAIN(int argc, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
BIO *in = NULL, *out = NULL; BIO *in = NULL, *out = NULL;
char *infile = NULL, *outfile = NULL; char *infile = NULL, *outfile = NULL;
char *keyfile = NULL; char *keyfile = NULL;
@@ -94,7 +95,6 @@ int MAIN(int argc, char **argv)
unsigned char *rsa_in = NULL, *rsa_out = NULL, pad; unsigned char *rsa_in = NULL, *rsa_out = NULL, pad;
int rsa_inlen, rsa_outlen = 0; int rsa_inlen, rsa_outlen = 0;
int keysize; int keysize;
char *engine=NULL;
int ret = 1; int ret = 1;
@@ -117,9 +117,6 @@ int MAIN(int argc, char **argv)
} else if(!strcmp(*argv, "-inkey")) { } else if(!strcmp(*argv, "-inkey")) {
if (--argc < 1) badarg = 1; if (--argc < 1) badarg = 1;
keyfile = *(++argv); keyfile = *(++argv);
} else if(!strcmp(*argv, "-engine")) {
if (--argc < 1) badarg = 1;
engine = *(++argv);
} else if(!strcmp(*argv, "-pubin")) { } else if(!strcmp(*argv, "-pubin")) {
key_type = KEY_PUBKEY; key_type = KEY_PUBKEY;
} else if(!strcmp(*argv, "-certin")) { } else if(!strcmp(*argv, "-certin")) {
@@ -154,24 +151,6 @@ int MAIN(int argc, char **argv)
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
/* FIXME: seed PRNG only if needed */ /* FIXME: seed PRNG only if needed */
app_RAND_load_file(NULL, bio_err, 0); app_RAND_load_file(NULL, bio_err, 0);
@@ -222,7 +201,15 @@ int MAIN(int argc, char **argv)
ERR_print_errors(bio_err); ERR_print_errors(bio_err);
goto end; goto end;
} }
} else out = BIO_new_fp(stdout, BIO_NOCLOSE); } else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
keysize = RSA_size(rsa); keysize = RSA_size(rsa);
@@ -279,7 +266,7 @@ int MAIN(int argc, char **argv)
end: end:
RSA_free(rsa); RSA_free(rsa);
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
if(rsa_in) OPENSSL_free(rsa_in); if(rsa_in) OPENSSL_free(rsa_in);
if(rsa_out) OPENSSL_free(rsa_out); if(rsa_out) OPENSSL_free(rsa_out);
return ret; return ret;
@@ -293,7 +280,6 @@ static void usage()
BIO_printf(bio_err, "-inkey file input key\n"); BIO_printf(bio_err, "-inkey file input key\n");
BIO_printf(bio_err, "-pubin input is an RSA public\n"); BIO_printf(bio_err, "-pubin input is an RSA public\n");
BIO_printf(bio_err, "-certin input is a certificate carrying an RSA public key\n"); BIO_printf(bio_err, "-certin input is a certificate carrying an RSA public key\n");
BIO_printf(bio_err, "-engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err, "-ssl use SSL v2 padding\n"); BIO_printf(bio_err, "-ssl use SSL v2 padding\n");
BIO_printf(bio_err, "-raw use no padding\n"); BIO_printf(bio_err, "-raw use no padding\n");
BIO_printf(bio_err, "-pkcs use PKCS#1 v1.5 padding (default)\n"); BIO_printf(bio_err, "-pkcs use PKCS#1 v1.5 padding (default)\n");
@@ -305,3 +291,4 @@ static void usage()
BIO_printf(bio_err, "-hexdump hex dump output\n"); BIO_printf(bio_err, "-hexdump hex dump output\n");
} }
#endif

View File

@@ -79,7 +79,6 @@ typedef unsigned int u_int;
#include <openssl/ssl.h> #include <openssl/ssl.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#include "s_apps.h" #include "s_apps.h"
#ifdef WINDOWS #ifdef WINDOWS
@@ -153,7 +152,6 @@ static void sc_usage(void)
BIO_printf(bio_err," -bugs - Switch on all SSL implementation bug workarounds\n"); BIO_printf(bio_err," -bugs - Switch on all SSL implementation bug workarounds\n");
BIO_printf(bio_err," -cipher - preferred cipher to use, use the 'openssl ciphers'\n"); BIO_printf(bio_err," -cipher - preferred cipher to use, use the 'openssl ciphers'\n");
BIO_printf(bio_err," command to see what is available\n"); BIO_printf(bio_err," command to see what is available\n");
BIO_printf(bio_err," -engine id - Initialise and use the specified engine\n");
} }
@@ -181,8 +179,6 @@ int MAIN(int argc, char **argv)
int prexit = 0; int prexit = 0;
SSL_METHOD *meth=NULL; SSL_METHOD *meth=NULL;
BIO *sbio; BIO *sbio;
char *engine_id=NULL;
ENGINE *e=NULL;
#ifdef WINDOWS #ifdef WINDOWS
struct timeval tv; struct timeval tv;
#endif #endif
@@ -320,11 +316,6 @@ int MAIN(int argc, char **argv)
else if (strcmp(*argv,"-nbio") == 0) else if (strcmp(*argv,"-nbio") == 0)
{ c_nbio=1; } { c_nbio=1; }
#endif #endif
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine_id = *(++argv);
}
else else
{ {
BIO_printf(bio_err,"unknown option %s\n",*argv); BIO_printf(bio_err,"unknown option %s\n",*argv);
@@ -358,30 +349,6 @@ bad:
OpenSSL_add_ssl_algorithms(); OpenSSL_add_ssl_algorithms();
SSL_load_error_strings(); SSL_load_error_strings();
if (engine_id != NULL)
{
if((e = ENGINE_by_id(engine_id)) == NULL)
{
BIO_printf(bio_err,"invalid engine\n");
ERR_print_errors(bio_err);
goto end;
}
if (c_debug)
{
ENGINE_ctrl(e, ENGINE_CTRL_SET_LOGSTREAM,
0, bio_err, 0);
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
ERR_print_errors(bio_err);
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine_id);
ENGINE_free(e);
}
ctx=SSL_CTX_new(meth); ctx=SSL_CTX_new(meth);
if (ctx == NULL) if (ctx == NULL)
{ {

View File

@@ -83,7 +83,6 @@ typedef unsigned int u_int;
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/ssl.h> #include <openssl/ssl.h>
#include <openssl/engine.h>
#include "s_apps.h" #include "s_apps.h"
#ifdef WINDOWS #ifdef WINDOWS
@@ -177,7 +176,6 @@ static int s_debug=0;
static int s_quiet=0; static int s_quiet=0;
static int hack=0; static int hack=0;
static char *engine_id=NULL;
#ifdef MONOLITH #ifdef MONOLITH
static void s_server_init(void) static void s_server_init(void)
@@ -200,7 +198,6 @@ static void s_server_init(void)
s_debug=0; s_debug=0;
s_quiet=0; s_quiet=0;
hack=0; hack=0;
engine_id=NULL;
} }
#endif #endif
@@ -245,7 +242,6 @@ static void sv_usage(void)
BIO_printf(bio_err," -bugs - Turn on SSL bug compatibility\n"); BIO_printf(bio_err," -bugs - Turn on SSL bug compatibility\n");
BIO_printf(bio_err," -www - Respond to a 'GET /' with a status page\n"); BIO_printf(bio_err," -www - Respond to a 'GET /' with a status page\n");
BIO_printf(bio_err," -WWW - Respond to a 'GET /<path> HTTP/1.0' with file ./<path>\n"); BIO_printf(bio_err," -WWW - Respond to a 'GET /<path> HTTP/1.0' with file ./<path>\n");
BIO_printf(bio_err," -engine id - Initialise and use the specified engine\n");
} }
static int local_argc=0; static int local_argc=0;
@@ -415,7 +411,6 @@ int MAIN(int argc, char *argv[])
int no_tmp_rsa=0,no_dhe=0,nocert=0; int no_tmp_rsa=0,no_dhe=0,nocert=0;
int state=0; int state=0;
SSL_METHOD *meth=NULL; SSL_METHOD *meth=NULL;
ENGINE *e=NULL;
#ifndef NO_DH #ifndef NO_DH
DH *dh=NULL; DH *dh=NULL;
#endif #endif
@@ -570,11 +565,6 @@ int MAIN(int argc, char *argv[])
else if (strcmp(*argv,"-tls1") == 0) else if (strcmp(*argv,"-tls1") == 0)
{ meth=TLSv1_server_method(); } { meth=TLSv1_server_method(); }
#endif #endif
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine_id= *(++argv);
}
else else
{ {
BIO_printf(bio_err,"unknown option %s\n",*argv); BIO_printf(bio_err,"unknown option %s\n",*argv);
@@ -619,29 +609,6 @@ bad:
SSL_load_error_strings(); SSL_load_error_strings();
OpenSSL_add_ssl_algorithms(); OpenSSL_add_ssl_algorithms();
if (engine_id != NULL)
{
if((e = ENGINE_by_id(engine_id)) == NULL)
{
BIO_printf(bio_err,"invalid engine\n");
ERR_print_errors(bio_err);
goto end;
}
if (s_debug)
{
ENGINE_ctrl(e, ENGINE_CTRL_SET_LOGSTREAM,
0, bio_err, 0);
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
ERR_print_errors(bio_err);
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine_id);
ENGINE_free(e);
}
ctx=SSL_CTX_new(meth); ctx=SSL_CTX_new(meth);
if (ctx == NULL) if (ctx == NULL)
{ {

View File

@@ -209,9 +209,11 @@ static int init_client_ip(int *sock, unsigned char ip[4], int port)
s=socket(AF_INET,SOCK_STREAM,SOCKET_PROTOCOL); s=socket(AF_INET,SOCK_STREAM,SOCKET_PROTOCOL);
if (s == INVALID_SOCKET) { perror("socket"); return(0); } if (s == INVALID_SOCKET) { perror("socket"); return(0); }
#ifndef MPE
i=0; i=0;
i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i)); i=setsockopt(s,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i));
if (i < 0) { perror("keepalive"); return(0); } if (i < 0) { perror("keepalive"); return(0); }
#endif
if (connect(s,(struct sockaddr *)&them,sizeof(them)) == -1) if (connect(s,(struct sockaddr *)&them,sizeof(them)) == -1)
{ close(s); perror("connect"); return(0); } { close(s); perror("connect"); return(0); }

View File

@@ -1,17 +1,17 @@
issuer= /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024 bit) issuer= /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Test CA (1024 bit)
subject=/C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Server test cert (512 bit) subject= /C=AU/ST=Queensland/O=CryptSoft Pty Ltd/CN=Server test cert (512 bit)
-----BEGIN CERTIFICATE----- -----BEGIN CERTIFICATE-----
MIIB6TCCAVICAQQwDQYJKoZIhvcNAQEEBQAwWzELMAkGA1UEBhMCQVUxEzARBgNV MIIB6TCCAVICAQYwDQYJKoZIhvcNAQEEBQAwWzELMAkGA1UEBhMCQVUxEzARBgNV
BAgTClF1ZWVuc2xhbmQxGjAYBgNVBAoTEUNyeXB0U29mdCBQdHkgTHRkMRswGQYD BAgTClF1ZWVuc2xhbmQxGjAYBgNVBAoTEUNyeXB0U29mdCBQdHkgTHRkMRswGQYD
VQQDExJUZXN0IENBICgxMDI0IGJpdCkwHhcNOTgwNjI5MjM1MjQwWhcNMDAwNjI4 VQQDExJUZXN0IENBICgxMDI0IGJpdCkwHhcNMDAxMDE2MjIzMTAzWhcNMDMwMTE0
MjM1MjQwWjBjMQswCQYDVQQGEwJBVTETMBEGA1UECBMKUXVlZW5zbGFuZDEaMBgG MjIzMTAzWjBjMQswCQYDVQQGEwJBVTETMBEGA1UECBMKUXVlZW5zbGFuZDEaMBgG
A1UEChMRQ3J5cHRTb2Z0IFB0eSBMdGQxIzAhBgNVBAMTGlNlcnZlciB0ZXN0IGNl A1UEChMRQ3J5cHRTb2Z0IFB0eSBMdGQxIzAhBgNVBAMTGlNlcnZlciB0ZXN0IGNl
cnQgKDUxMiBiaXQpMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJ+zw4Qnlf8SMVIP cnQgKDUxMiBiaXQpMFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAJ+zw4Qnlf8SMVIP
Fe9GEcStgOY2Ww/dgNdhjeD8ckUJNP5VZkVDTGiXav6ooKXfX3j/7tdkuD8Ey2// Fe9GEcStgOY2Ww/dgNdhjeD8ckUJNP5VZkVDTGiXav6ooKXfX3j/7tdkuD8Ey2//
Kv7+ue0CAwEAATANBgkqhkiG9w0BAQQFAAOBgQCVvvfkGSe2GHgDFfmOua4Isjb9 Kv7+ue0CAwEAATANBgkqhkiG9w0BAQQFAAOBgQCT0grFQeZaqYb5EYfk20XixZV4
JVhImWMASiOClkZlMESDJjsszg/6+d/W+8TrbObhazpl95FivXBVucbj9dudh7AO GmyAbXMftG1Eo7qGiMhYzRwGNWxEYojf5PZkYZXvSqZ/ZXHXa4g59jK/rJNnaVGM
IZu1h1MAPlyknc9Ud816vz3FejB4qqUoaXjnlkrIgEbr/un7jSS86WOe0hRhwHkJ k+xIX8mxQvlV0n5O9PIha5BX5teZnkHKgL8aKKLKW1BK7YTngsfSzzaeame5iKfz
FUGcPZf9ND22Etc+AQ== itAE+OjGF+PFKbwX8Q==
-----END CERTIFICATE----- -----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY----- -----BEGIN RSA PRIVATE KEY-----
MIIBPAIBAAJBAJ+zw4Qnlf8SMVIPFe9GEcStgOY2Ww/dgNdhjeD8ckUJNP5VZkVD MIIBPAIBAAJBAJ+zw4Qnlf8SMVIPFe9GEcStgOY2Ww/dgNdhjeD8ckUJNP5VZkVD

View File

@@ -206,7 +206,15 @@ bad:
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -262,7 +270,7 @@ bad:
} }
ret=0; ret=0;
end: end:
if (out != NULL) BIO_free(out); if (out != NULL) BIO_free_all(out);
if (x != NULL) SSL_SESSION_free(x); if (x != NULL) SSL_SESSION_free(x);
EXIT(ret); EXIT(ret);
} }

View File

@@ -64,7 +64,6 @@
#include <openssl/crypto.h> #include <openssl/crypto.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG smime_main #define PROG smime_main
@@ -82,7 +81,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int operation = 0; int operation = 0;
int ret = 0; int ret = 0;
char **args; char **args;
@@ -105,9 +103,8 @@ int MAIN(int argc, char **argv)
char *inrand = NULL; char *inrand = NULL;
int need_rand = 0; int need_rand = 0;
int informat = FORMAT_SMIME, outformat = FORMAT_SMIME; int informat = FORMAT_SMIME, outformat = FORMAT_SMIME;
char *engine=NULL;
args = argv + 1; args = argv + 1;
ret = 1; ret = 1;
while (!badarg && *args && *args[0] == '-') { while (!badarg && *args && *args[0] == '-') {
@@ -156,11 +153,6 @@ int MAIN(int argc, char **argv)
inrand = *args; inrand = *args;
} else badarg = 1; } else badarg = 1;
need_rand = 1; need_rand = 1;
} else if (!strcmp(*args,"-engine")) {
if (args[1]) {
args++;
engine = *args;
} else badarg = 1;
} else if (!strcmp(*args,"-passin")) { } else if (!strcmp(*args,"-passin")) {
if (args[1]) { if (args[1]) {
args++; args++;
@@ -298,7 +290,6 @@ int MAIN(int argc, char **argv)
BIO_printf (bio_err, "-text include or delete text MIME headers\n"); BIO_printf (bio_err, "-text include or delete text MIME headers\n");
BIO_printf (bio_err, "-CApath dir trusted certificates directory\n"); BIO_printf (bio_err, "-CApath dir trusted certificates directory\n");
BIO_printf (bio_err, "-CAfile file trusted certificates file\n"); BIO_printf (bio_err, "-CAfile file trusted certificates file\n");
BIO_printf (bio_err, "-engine e use engine e, possibly a hardware device.\n");
BIO_printf(bio_err, "-rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR); BIO_printf(bio_err, "-rand file%cfile%c...\n", LIST_SEPARATOR_CHAR, LIST_SEPARATOR_CHAR);
BIO_printf(bio_err, " load the file (or the files in the directory) into\n"); BIO_printf(bio_err, " load the file (or the files in the directory) into\n");
BIO_printf(bio_err, " the random number generator\n"); BIO_printf(bio_err, " the random number generator\n");
@@ -306,24 +297,6 @@ int MAIN(int argc, char **argv)
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(!app_passwd(bio_err, passargin, NULL, &passin, NULL)) { if(!app_passwd(bio_err, passargin, NULL, &passin, NULL)) {
BIO_printf(bio_err, "Error getting password\n"); BIO_printf(bio_err, "Error getting password\n");
goto end; goto end;
@@ -420,7 +393,15 @@ int MAIN(int argc, char **argv)
"Can't open output file %s\n", outfile); "Can't open output file %s\n", outfile);
goto end; goto end;
} }
} else out = BIO_new_fp(stdout, BIO_NOCLOSE); } else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if(operation == SMIME_VERIFY) { if(operation == SMIME_VERIFY) {
if(!(store = setup_verify(CAfile, CApath))) goto end; if(!(store = setup_verify(CAfile, CApath))) goto end;
@@ -517,7 +498,7 @@ end:
PKCS7_free(p7); PKCS7_free(p7);
BIO_free(in); BIO_free(in);
BIO_free(indata); BIO_free(indata);
BIO_free(out); BIO_free_all(out);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);
return (ret); return (ret);
} }

View File

@@ -81,14 +81,13 @@
#include <openssl/crypto.h> #include <openssl/crypto.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/engine.h>
#if defined(__FreeBSD__) #if defined(__FreeBSD__)
# define USE_TOD # define USE_TOD
#elif !defined(MSDOS) && (!defined(VMS) || defined(__DECC)) #elif !defined(MSDOS) && (!defined(VMS) || defined(__DECC))
# define TIMES # define TIMES
#endif #endif
#if !defined(_UNICOS) && !defined(__OpenBSD__) #if !defined(_UNICOS) && !defined(__OpenBSD__) && !defined(sgi) && !defined(__FreeBSD__) && !(defined(__bsdi) || defined(__bsdi__)) && !defined(_AIX) && !defined(MPE)
# define TIMEB # define TIMEB
#endif #endif
@@ -116,7 +115,7 @@
#include <sys/timeb.h> #include <sys/timeb.h>
#endif #endif
#if !defined(TIMES) && !defined(TIMEB) #if !defined(TIMES) && !defined(TIMEB) && !defined(USE_TOD)
#error "It seems neither struct tms nor struct timeb is supported in this platform!" #error "It seems neither struct tms nor struct timeb is supported in this platform!"
#endif #endif
@@ -311,7 +310,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e;
unsigned char *buf=NULL,*buf2=NULL; unsigned char *buf=NULL,*buf2=NULL;
int mret=1; int mret=1;
#define ALGOR_NUM 15 #define ALGOR_NUM 15
@@ -472,37 +470,6 @@ int MAIN(int argc, char **argv)
{ {
if ((argc > 0) && (strcmp(*argv,"-elapsed") == 0)) if ((argc > 0) && (strcmp(*argv,"-elapsed") == 0))
usertime = 0; usertime = 0;
else
if ((argc > 0) && (strcmp(*argv,"-engine") == 0))
{
argc--;
argv++;
if(argc == 0)
{
BIO_printf(bio_err,"no engine given\n");
goto end;
}
if((e = ENGINE_by_id(*argv)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
*argv);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", *argv);
/* Free our "structural" reference. */
ENGINE_free(e);
/* It will be increased again further down. We just
don't want speed to confuse an engine with an
algorithm, especially when none is given (which
means all of them should be run) */
j--;
}
else
#ifndef NO_MD2 #ifndef NO_MD2
if (strcmp(*argv,"md2") == 0) doit[D_MD2]=1; if (strcmp(*argv,"md2") == 0) doit[D_MD2]=1;
else else
@@ -550,7 +517,7 @@ int MAIN(int argc, char **argv)
#ifdef RSAref #ifdef RSAref
if (strcmp(*argv,"rsaref") == 0) if (strcmp(*argv,"rsaref") == 0)
{ {
RSA_set_default_openssl_method(RSA_PKCS1_RSAref()); RSA_set_default_method(RSA_PKCS1_RSAref());
j--; j--;
} }
else else
@@ -558,7 +525,7 @@ int MAIN(int argc, char **argv)
#ifndef RSA_NULL #ifndef RSA_NULL
if (strcmp(*argv,"openssl") == 0) if (strcmp(*argv,"openssl") == 0)
{ {
RSA_set_default_openssl_method(RSA_PKCS1_SSLeay()); RSA_set_default_method(RSA_PKCS1_SSLeay());
j--; j--;
} }
else else
@@ -703,12 +670,11 @@ int MAIN(int argc, char **argv)
BIO_printf(bio_err,"\n"); BIO_printf(bio_err,"\n");
#endif #endif
#ifdef TIMES
BIO_printf(bio_err,"\n"); BIO_printf(bio_err,"\n");
BIO_printf(bio_err,"Available options:\n"); BIO_printf(bio_err,"Available options:\n");
#ifdef TIMES
BIO_printf(bio_err,"-elapsed measure time in real time instead of CPU user time.\n"); BIO_printf(bio_err,"-elapsed measure time in real time instead of CPU user time.\n");
#endif #endif
BIO_printf(bio_err,"-engine e use engine e, possibly a hardware device.\n");
goto end; goto end;
} }
argc--; argc--;
@@ -1413,7 +1379,6 @@ int MAIN(int argc, char **argv)
#endif #endif
mret=0; mret=0;
end: end:
ERR_print_errors(bio_err);
if (buf != NULL) OPENSSL_free(buf); if (buf != NULL) OPENSSL_free(buf);
if (buf2 != NULL) OPENSSL_free(buf2); if (buf2 != NULL) OPENSSL_free(buf2);
#ifndef NO_RSA #ifndef NO_RSA

View File

@@ -69,7 +69,6 @@
#include <openssl/lhash.h> #include <openssl/lhash.h>
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG spkac_main #define PROG spkac_main
@@ -82,7 +81,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int i,badops=0, ret = 1; int i,badops=0, ret = 1;
BIO *in = NULL,*out = NULL, *key = NULL; BIO *in = NULL,*out = NULL, *key = NULL;
int verify=0,noout=0,pubkey=0; int verify=0,noout=0,pubkey=0;
@@ -93,7 +91,6 @@ int MAIN(int argc, char **argv)
LHASH *conf = NULL; LHASH *conf = NULL;
NETSCAPE_SPKI *spki = NULL; NETSCAPE_SPKI *spki = NULL;
EVP_PKEY *pkey = NULL; EVP_PKEY *pkey = NULL;
char *engine=NULL;
apps_startup(); apps_startup();
@@ -139,11 +136,6 @@ int MAIN(int argc, char **argv)
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
spksect= *(++argv); spksect= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-noout") == 0) else if (strcmp(*argv,"-noout") == 0)
noout=1; noout=1;
else if (strcmp(*argv,"-pubkey") == 0) else if (strcmp(*argv,"-pubkey") == 0)
@@ -169,7 +161,6 @@ bad:
BIO_printf(bio_err," -noout don't print SPKAC\n"); BIO_printf(bio_err," -noout don't print SPKAC\n");
BIO_printf(bio_err," -pubkey output public key\n"); BIO_printf(bio_err," -pubkey output public key\n");
BIO_printf(bio_err," -verify verify SPKAC signature\n"); BIO_printf(bio_err," -verify verify SPKAC signature\n");
BIO_printf(bio_err," -engine e use engine e, possibly a hardware device.\n");
goto end; goto end;
} }
@@ -179,24 +170,6 @@ bad:
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if(keyfile) { if(keyfile) {
if(strcmp(keyfile, "-")) key = BIO_new_file(keyfile, "r"); if(strcmp(keyfile, "-")) key = BIO_new_file(keyfile, "r");
else key = BIO_new_fp(stdin, BIO_NOCLOSE); else key = BIO_new_fp(stdin, BIO_NOCLOSE);
@@ -219,7 +192,15 @@ bad:
spkstr = NETSCAPE_SPKI_b64_encode(spki); spkstr = NETSCAPE_SPKI_b64_encode(spki);
if (outfile) out = BIO_new_file(outfile, "w"); if (outfile) out = BIO_new_file(outfile, "w");
else out = BIO_new_fp(stdout, BIO_NOCLOSE); else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if(!out) { if(!out) {
BIO_printf(bio_err, "Error opening output file\n"); BIO_printf(bio_err, "Error opening output file\n");
@@ -268,7 +249,15 @@ bad:
} }
if (outfile) out = BIO_new_file(outfile, "w"); if (outfile) out = BIO_new_file(outfile, "w");
else out = BIO_new_fp(stdout, BIO_NOCLOSE); else {
out = BIO_new_fp(stdout, BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
if(!out) { if(!out) {
BIO_printf(bio_err, "Error opening output file\n"); BIO_printf(bio_err, "Error opening output file\n");
@@ -295,7 +284,7 @@ end:
CONF_free(conf); CONF_free(conf);
NETSCAPE_SPKI_free(spki); NETSCAPE_SPKI_free(spki);
BIO_free(in); BIO_free(in);
BIO_free(out); BIO_free_all(out);
BIO_free(key); BIO_free(key);
EVP_PKEY_free(pkey); EVP_PKEY_free(pkey);
if(passin) OPENSSL_free(passin); if(passin) OPENSSL_free(passin);

View File

@@ -65,7 +65,6 @@
#include <openssl/x509.h> #include <openssl/x509.h>
#include <openssl/x509v3.h> #include <openssl/x509v3.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG verify_main #define PROG verify_main
@@ -79,7 +78,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int i,ret=1; int i,ret=1;
int purpose = -1; int purpose = -1;
char *CApath=NULL,*CAfile=NULL; char *CApath=NULL,*CAfile=NULL;
@@ -87,7 +85,6 @@ int MAIN(int argc, char **argv)
STACK_OF(X509) *untrusted = NULL, *trusted = NULL; STACK_OF(X509) *untrusted = NULL, *trusted = NULL;
X509_STORE *cert_ctx=NULL; X509_STORE *cert_ctx=NULL;
X509_LOOKUP *lookup=NULL; X509_LOOKUP *lookup=NULL;
char *engine=NULL;
cert_ctx=X509_STORE_new(); cert_ctx=X509_STORE_new();
if (cert_ctx == NULL) goto end; if (cert_ctx == NULL) goto end;
@@ -140,11 +137,6 @@ int MAIN(int argc, char **argv)
if (argc-- < 1) goto end; if (argc-- < 1) goto end;
trustfile= *(++argv); trustfile= *(++argv);
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto end;
engine= *(++argv);
}
else if (strcmp(*argv,"-help") == 0) else if (strcmp(*argv,"-help") == 0)
goto end; goto end;
else if (strcmp(*argv,"-issuer_checks") == 0) else if (strcmp(*argv,"-issuer_checks") == 0)
@@ -162,24 +154,6 @@ int MAIN(int argc, char **argv)
break; break;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
lookup=X509_STORE_add_lookup(cert_ctx,X509_LOOKUP_file()); lookup=X509_STORE_add_lookup(cert_ctx,X509_LOOKUP_file());
if (lookup == NULL) abort(); if (lookup == NULL) abort();
if (CAfile) { if (CAfile) {
@@ -227,7 +201,7 @@ int MAIN(int argc, char **argv)
ret=0; ret=0;
end: end:
if (ret == 1) { if (ret == 1) {
BIO_printf(bio_err,"usage: verify [-verbose] [-CApath path] [-CAfile file] [-purpose purpose] [-engine e] cert1 cert2 ...\n"); BIO_printf(bio_err,"usage: verify [-verbose] [-CApath path] [-CAfile file] [-purpose purpose] cert1 cert2 ...\n");
BIO_printf(bio_err,"recognized usages:\n"); BIO_printf(bio_err,"recognized usages:\n");
for(i = 0; i < X509_PURPOSE_get_count(); i++) { for(i = 0; i < X509_PURPOSE_get_count(); i++) {
X509_PURPOSE *ptmp; X509_PURPOSE *ptmp;

View File

@@ -73,7 +73,6 @@
#include <openssl/x509v3.h> #include <openssl/x509v3.h>
#include <openssl/objects.h> #include <openssl/objects.h>
#include <openssl/pem.h> #include <openssl/pem.h>
#include <openssl/engine.h>
#undef PROG #undef PROG
#define PROG x509_main #define PROG x509_main
@@ -130,7 +129,7 @@ static char *x509_usage[]={
" -extensions - section from config file with X509V3 extensions to add\n", " -extensions - section from config file with X509V3 extensions to add\n",
" -clrext - delete extensions before signing and input certificate\n", " -clrext - delete extensions before signing and input certificate\n",
" -nameopt arg - various certificate name options\n", " -nameopt arg - various certificate name options\n",
" -engine e - use engine e, possibly a hardware device.\n", " -certopt arg - various certificate text options\n",
NULL NULL
}; };
@@ -147,7 +146,6 @@ int MAIN(int, char **);
int MAIN(int argc, char **argv) int MAIN(int argc, char **argv)
{ {
ENGINE *e = NULL;
int ret=1; int ret=1;
X509_REQ *req=NULL; X509_REQ *req=NULL;
X509 *x=NULL,*xca=NULL; X509 *x=NULL,*xca=NULL;
@@ -177,8 +175,7 @@ int MAIN(int argc, char **argv)
char *extsect = NULL, *extfile = NULL, *passin = NULL, *passargin = NULL; char *extsect = NULL, *extfile = NULL, *passin = NULL, *passargin = NULL;
int need_rand = 0; int need_rand = 0;
int checkend=0,checkoffset=0; int checkend=0,checkoffset=0;
unsigned long nmflag = 0; unsigned long nmflag = 0, certflag = 0;
char *engine=NULL;
reqfile=0; reqfile=0;
@@ -187,6 +184,12 @@ int MAIN(int argc, char **argv)
if (bio_err == NULL) if (bio_err == NULL)
bio_err=BIO_new_fp(stderr,BIO_NOCLOSE); bio_err=BIO_new_fp(stderr,BIO_NOCLOSE);
STDout=BIO_new_fp(stdout,BIO_NOCLOSE); STDout=BIO_new_fp(stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
STDout = BIO_push(tmpbio, STDout);
}
#endif
informat=FORMAT_PEM; informat=FORMAT_PEM;
outformat=FORMAT_PEM; outformat=FORMAT_PEM;
@@ -324,6 +327,11 @@ int MAIN(int argc, char **argv)
alias= *(++argv); alias= *(++argv);
trustout = 1; trustout = 1;
} }
else if (strcmp(*argv,"-certopt") == 0)
{
if (--argc < 1) goto bad;
if (!set_cert_ex(&certflag, *(++argv))) goto bad;
}
else if (strcmp(*argv,"-nameopt") == 0) else if (strcmp(*argv,"-nameopt") == 0)
{ {
if (--argc < 1) goto bad; if (--argc < 1) goto bad;
@@ -335,11 +343,6 @@ int MAIN(int argc, char **argv)
alias= *(++argv); alias= *(++argv);
trustout = 1; trustout = 1;
} }
else if (strcmp(*argv,"-engine") == 0)
{
if (--argc < 1) goto bad;
engine= *(++argv);
}
else if (strcmp(*argv,"-C") == 0) else if (strcmp(*argv,"-C") == 0)
C= ++num; C= ++num;
else if (strcmp(*argv,"-email") == 0) else if (strcmp(*argv,"-email") == 0)
@@ -423,24 +426,6 @@ bad:
goto end; goto end;
} }
if (engine != NULL)
{
if((e = ENGINE_by_id(engine)) == NULL)
{
BIO_printf(bio_err,"invalid engine \"%s\"\n",
engine);
goto end;
}
if(!ENGINE_set_default(e, ENGINE_METHOD_ALL))
{
BIO_printf(bio_err,"can't use that engine\n");
goto end;
}
BIO_printf(bio_err,"engine \"%s\" set.\n", engine);
/* Free our "structural" reference. */
ENGINE_free(e);
}
if (need_rand) if (need_rand)
app_RAND_load_file(NULL, bio_err, 0); app_RAND_load_file(NULL, bio_err, 0);
@@ -603,7 +588,15 @@ bad:
goto end; goto end;
} }
if (outfile == NULL) if (outfile == NULL)
{
BIO_set_fp(out,stdout,BIO_NOCLOSE); BIO_set_fp(out,stdout,BIO_NOCLOSE);
#ifdef VMS
{
BIO *tmpbio = BIO_new(BIO_f_linebuffer());
out = BIO_push(tmpbio, out);
}
#endif
}
else else
{ {
if (BIO_write_filename(out,outfile) <= 0) if (BIO_write_filename(out,outfile) <= 0)
@@ -787,7 +780,7 @@ bad:
} }
else if (text == i) else if (text == i)
{ {
X509_print(out,x); X509_print_ex(out,x,nmflag, certflag);
} }
else if (startdate == i) else if (startdate == i)
{ {
@@ -960,8 +953,8 @@ end:
app_RAND_write_file(NULL, bio_err); app_RAND_write_file(NULL, bio_err);
OBJ_cleanup(); OBJ_cleanup();
CONF_free(extconf); CONF_free(extconf);
BIO_free(out); BIO_free_all(out);
BIO_free(STDout); BIO_free_all(STDout);
X509_STORE_free(ctx); X509_STORE_free(ctx);
X509_REQ_free(req); X509_REQ_free(req);
X509_free(x); X509_free(x);

32
config
View File

@@ -71,6 +71,10 @@ fi
# Now we simply scan though... In most cases, the SYSTEM info is enough # Now we simply scan though... In most cases, the SYSTEM info is enough
# #
case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
MPE/iX:*)
MACHINE=`echo "$MACHINE" | sed -e 's/-/_/g'`
echo "parisc-hp-MPE/iX"; exit 0
;;
A/UX:*) A/UX:*)
echo "m68k-apple-aux3"; exit 0 echo "m68k-apple-aux3"; exit 0
;; ;;
@@ -164,7 +168,7 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
;; ;;
NetBSD:*:*:*386*) NetBSD:*:*:*386*)
echo "`/usr/sbin/sysctl -n hw.model | sed 's,.*\(.\)86-class.*,i\186,'`-whatever-netbsd"; exit 0 echo "`(/usr/sbin/sysctl -n hw.model || /sbin/sysctl -n hw.model) | sed 's,.*\(.\)86-class.*,i\186,'`-whatever-netbsd"; exit 0
;; ;;
NetBSD:*) NetBSD:*)
@@ -478,27 +482,11 @@ case "$GUESSOS" in
*) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;; *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
esac esac
# NB: This atalla support has been superceded by the ENGINE support
# That contains its own header and definitions anyway. Support can
# be enabled or disabled on any supported platform without external
# headers, eg. by adding the "hw-atalla" switch to ./config or
# perl Configure
#
# See whether we can compile Atalla support # See whether we can compile Atalla support
#if [ -f /usr/include/atasi.h ] if [ -f /usr/include/atasi.h ]
#then then
# options="$options -DATALLA" options="$options -DATALLA"
#fi fi
#get some basic shared lib support (behnke@trustcenter.de)
case "$OUT" in
solaris-*-gcc)
if [ "$SHARED" = "true" ]
then
options="$options -DPIC -fPIC"
fi
;;
esac
# gcc < 2.8 does not support -mcpu=ultrasparc # gcc < 2.8 does not support -mcpu=ultrasparc
if [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ] if [ "$OUT" = solaris-sparcv9-gcc -a $GCCVER -lt 28 ]
@@ -569,7 +557,7 @@ OUT="$PREFIX$OUT"
$PERL ./Configure LIST | grep "$OUT" > /dev/null $PERL ./Configure LIST | grep "$OUT" > /dev/null
if [ $? = "0" ]; then if [ $? = "0" ]; then
#echo Configuring for $OUT echo Configuring for $OUT
if [ "$TEST" = "true" ]; then if [ "$TEST" = "true" ]; then
echo $PERL ./Configure $OUT $options echo $PERL ./Configure $OUT $options

View File

@@ -27,9 +27,9 @@ LIBS=
SDIRS= md2 md5 sha mdc2 hmac ripemd \ SDIRS= md2 md5 sha mdc2 hmac ripemd \
des rc2 rc4 rc5 idea bf cast \ des rc2 rc4 rc5 idea bf cast \
bn rsa dsa dh dso engine \ bn rsa dsa dh dso \
buffer bio stack lhash rand err objects \ buffer bio stack lhash rand err objects \
evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp evp asn1 pem x509 x509v3 conf txt_db pkcs7 pkcs12 comp rijndael
GENERAL=Makefile README crypto-lib.com install.com GENERAL=Makefile README crypto-lib.com install.com
@@ -90,7 +90,8 @@ links:
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
libs: libs:

View File

@@ -75,7 +75,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:
@@ -170,7 +171,9 @@ a_digest.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
a_digest.o: ../../include/openssl/opensslconf.h a_digest.o: ../../include/openssl/opensslconf.h
a_digest.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h a_digest.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
a_digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h a_digest.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
a_digest.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h a_digest.o: ../../include/openssl/rc5.h
a_digest.o: ../../include/openssl/rijndael-alg-fst.h
a_digest.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
a_digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h a_digest.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
a_digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h a_digest.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
a_digest.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h a_digest.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -295,11 +298,12 @@ a_sign.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
a_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h a_sign.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
a_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h a_sign.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
a_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h a_sign.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
a_sign.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h a_sign.o: ../../include/openssl/rijndael-alg-fst.h
a_sign.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h a_sign.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
a_sign.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h a_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
a_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h a_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
a_sign.o: ../cryptlib.h a_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
a_sign.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
a_strex.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h a_strex.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
a_strex.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h a_strex.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
a_strex.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h a_strex.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -313,11 +317,12 @@ a_strex.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
a_strex.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h a_strex.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
a_strex.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h a_strex.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
a_strex.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h a_strex.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
a_strex.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h a_strex.o: ../../include/openssl/rijndael-alg-fst.h
a_strex.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h a_strex.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
a_strex.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h a_strex.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
a_strex.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h a_strex.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
a_strex.o: charmap.h a_strex.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
a_strex.o: ../../include/openssl/x509_vfy.h charmap.h
a_strnid.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h a_strnid.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
a_strnid.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h a_strnid.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
a_strnid.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h a_strnid.o: ../../include/openssl/crypto.h ../../include/openssl/e_os.h
@@ -373,7 +378,9 @@ a_verify.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
a_verify.o: ../../include/openssl/opensslconf.h a_verify.o: ../../include/openssl/opensslconf.h
a_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h a_verify.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
a_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h a_verify.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
a_verify.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h a_verify.o: ../../include/openssl/rc5.h
a_verify.o: ../../include/openssl/rijndael-alg-fst.h
a_verify.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
a_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h a_verify.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
a_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h a_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
a_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h a_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -452,7 +459,8 @@ d2i_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
d2i_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h d2i_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
d2i_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h d2i_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
d2i_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h d2i_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
d2i_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h d2i_pr.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
d2i_pr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
d2i_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h d2i_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
d2i_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h d2i_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
d2i_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h d2i_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
@@ -469,7 +477,8 @@ d2i_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
d2i_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h d2i_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
d2i_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h d2i_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
d2i_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h d2i_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
d2i_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h d2i_pu.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
d2i_pu.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
d2i_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h d2i_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
d2i_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h d2i_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
d2i_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h d2i_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
@@ -580,7 +589,8 @@ i2d_pr.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
i2d_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h i2d_pr.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
i2d_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h i2d_pr.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
i2d_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h i2d_pr.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
i2d_pr.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h i2d_pr.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
i2d_pr.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
i2d_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h i2d_pr.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
i2d_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h i2d_pr.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
i2d_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h i2d_pr.o: ../../include/openssl/symhacks.h ../cryptlib.h
@@ -597,7 +607,8 @@ i2d_pu.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
i2d_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h i2d_pu.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
i2d_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h i2d_pu.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
i2d_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h i2d_pu.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
i2d_pu.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h i2d_pu.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
i2d_pu.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
i2d_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h i2d_pu.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
i2d_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h i2d_pu.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
i2d_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h i2d_pu.o: ../../include/openssl/symhacks.h ../cryptlib.h
@@ -657,7 +668,8 @@ n_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
n_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h n_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
n_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h n_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
n_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h n_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
n_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h n_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
n_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
n_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h n_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
n_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h n_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
n_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h n_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -676,10 +688,12 @@ nsseq.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
nsseq.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h nsseq.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
nsseq.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h nsseq.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
nsseq.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h nsseq.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
nsseq.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h nsseq.o: ../../include/openssl/rijndael-alg-fst.h
nsseq.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h nsseq.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
nsseq.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h nsseq.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
nsseq.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h nsseq.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
nsseq.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
nsseq.o: ../../include/openssl/x509_vfy.h
p5_pbe.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h p5_pbe.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p5_pbe.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h p5_pbe.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p5_pbe.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h p5_pbe.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -695,11 +709,12 @@ p5_pbe.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p5_pbe.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p5_pbe.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p5_pbe.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h p5_pbe.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
p5_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h p5_pbe.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p5_pbe.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h p5_pbe.o: ../../include/openssl/rijndael-alg-fst.h
p5_pbe.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h p5_pbe.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p5_pbe.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h p5_pbe.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p5_pbe.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h p5_pbe.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p5_pbe.o: ../cryptlib.h p5_pbe.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p5_pbe.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p5_pbev2.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h p5_pbev2.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p5_pbev2.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h p5_pbev2.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p5_pbev2.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h p5_pbev2.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -715,11 +730,12 @@ p5_pbev2.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p5_pbev2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p5_pbev2.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p5_pbev2.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h p5_pbev2.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
p5_pbev2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h p5_pbev2.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
p5_pbev2.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h p5_pbev2.o: ../../include/openssl/rijndael-alg-fst.h
p5_pbev2.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h p5_pbev2.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p5_pbev2.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h p5_pbev2.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p5_pbev2.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h p5_pbev2.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p5_pbev2.o: ../cryptlib.h p5_pbev2.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
p5_pbev2.o: ../../include/openssl/x509_vfy.h ../cryptlib.h
p7_dgst.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h p7_dgst.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
p7_dgst.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h p7_dgst.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
p7_dgst.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h p7_dgst.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -734,7 +750,8 @@ p7_dgst.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_dgst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_dgst.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_dgst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_dgst.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_dgst.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_dgst.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_dgst.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_dgst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_dgst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_dgst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_dgst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_dgst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_dgst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -753,7 +770,8 @@ p7_enc.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_enc.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_enc.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_enc.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_enc.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_enc.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_enc.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_enc.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_enc.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_enc.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -772,7 +790,9 @@ p7_enc_c.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_enc_c.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_enc_c.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_enc_c.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_enc_c.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_enc_c.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_enc_c.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_enc_c.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_enc_c.o: ../../include/openssl/rc5.h
p7_enc_c.o: ../../include/openssl/rijndael-alg-fst.h
p7_enc_c.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_enc_c.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_enc_c.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_enc_c.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_enc_c.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_enc_c.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_enc_c.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -791,7 +811,8 @@ p7_evp.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_evp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_evp.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_evp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_evp.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_evp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_evp.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_evp.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_evp.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_evp.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_evp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_evp.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_evp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_evp.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_evp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_evp.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -810,7 +831,8 @@ p7_i_s.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_i_s.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_i_s.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_i_s.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_i_s.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_i_s.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_i_s.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_i_s.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_i_s.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_i_s.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_i_s.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_i_s.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_i_s.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_i_s.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_i_s.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_i_s.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -829,7 +851,8 @@ p7_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_lib.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_lib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_lib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -848,7 +871,9 @@ p7_recip.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_recip.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_recip.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_recip.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_recip.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_recip.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_recip.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_recip.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_recip.o: ../../include/openssl/rc5.h
p7_recip.o: ../../include/openssl/rijndael-alg-fst.h
p7_recip.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_recip.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_recip.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_recip.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_recip.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_recip.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_recip.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -867,7 +892,8 @@ p7_s_e.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_s_e.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_s_e.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_s_e.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_s_e.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_s_e.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_s_e.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_s_e.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_s_e.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p7_s_e.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_s_e.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_s_e.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_s_e.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_s_e.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_s_e.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_s_e.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -886,7 +912,9 @@ p7_signd.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_signd.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_signd.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_signd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_signd.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_signd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_signd.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_signd.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_signd.o: ../../include/openssl/rc5.h
p7_signd.o: ../../include/openssl/rijndael-alg-fst.h
p7_signd.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_signd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_signd.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_signd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_signd.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_signd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_signd.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -905,7 +933,9 @@ p7_signi.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p7_signi.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p7_signi.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p7_signi.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p7_signi.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p7_signi.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p7_signi.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p7_signi.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p7_signi.o: ../../include/openssl/rc5.h
p7_signi.o: ../../include/openssl/rijndael-alg-fst.h
p7_signi.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p7_signi.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p7_signi.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p7_signi.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p7_signi.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p7_signi.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p7_signi.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -924,7 +954,8 @@ p8_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
p8_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h p8_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
p8_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h p8_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
p8_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h p8_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
p8_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h p8_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
p8_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
p8_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h p8_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
p8_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h p8_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
p8_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h p8_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -944,11 +975,13 @@ t_bitst.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
t_bitst.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h t_bitst.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
t_bitst.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h t_bitst.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
t_bitst.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h t_bitst.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
t_bitst.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h t_bitst.o: ../../include/openssl/rijndael-alg-fst.h
t_bitst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h t_bitst.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_bitst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h t_bitst.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_bitst.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h t_bitst.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_bitst.o: ../../include/openssl/x509v3.h ../cryptlib.h t_bitst.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
t_bitst.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
t_bitst.o: ../cryptlib.h
t_crl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h t_crl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
t_crl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h t_crl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
t_crl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h t_crl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -964,11 +997,13 @@ t_crl.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
t_crl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h t_crl.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
t_crl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h t_crl.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
t_crl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h t_crl.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
t_crl.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h t_crl.o: ../../include/openssl/rijndael-alg-fst.h
t_crl.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h t_crl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_crl.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h t_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_crl.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h t_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_crl.o: ../../include/openssl/x509v3.h ../cryptlib.h t_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
t_crl.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
t_crl.o: ../cryptlib.h
t_pkey.o: ../../include/openssl/bio.h ../../include/openssl/bn.h t_pkey.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
t_pkey.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h t_pkey.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
t_pkey.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h t_pkey.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
@@ -993,11 +1028,13 @@ t_req.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
t_req.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h t_req.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
t_req.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h t_req.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
t_req.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h t_req.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
t_req.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h t_req.o: ../../include/openssl/rijndael-alg-fst.h
t_req.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h t_req.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_req.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h t_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_req.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h t_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_req.o: ../../include/openssl/x509v3.h ../cryptlib.h t_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
t_req.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
t_req.o: ../cryptlib.h
t_spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h t_spki.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
t_spki.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h t_spki.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
t_spki.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h t_spki.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -1012,7 +1049,8 @@ t_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
t_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h t_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
t_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h t_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
t_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h t_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
t_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h t_spki.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
t_spki.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h t_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h t_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h t_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1032,11 +1070,13 @@ t_x509.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
t_x509.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h t_x509.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
t_x509.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h t_x509.o: ../../include/openssl/pkcs7.h ../../include/openssl/rc2.h
t_x509.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h t_x509.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
t_x509.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h t_x509.o: ../../include/openssl/rijndael-alg-fst.h
t_x509.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h t_x509.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_x509.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h t_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_x509.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h t_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_x509.o: ../../include/openssl/x509v3.h ../cryptlib.h t_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
t_x509.o: ../../include/openssl/x509_vfy.h ../../include/openssl/x509v3.h
t_x509.o: ../cryptlib.h
t_x509a.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h t_x509a.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
t_x509a.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h t_x509a.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h
t_x509a.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h t_x509a.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
@@ -1051,7 +1091,8 @@ t_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
t_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h t_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
t_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h t_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
t_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h t_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
t_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h t_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
t_x509a.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
t_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h t_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
t_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h t_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
t_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h t_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1070,7 +1111,8 @@ x_algor.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_algor.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_algor.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_algor.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_algor.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_algor.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_algor.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_algor.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_algor.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_algor.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_algor.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_algor.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_algor.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_algor.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_algor.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_algor.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1089,7 +1131,9 @@ x_attrib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_attrib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_attrib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_attrib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_attrib.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_attrib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_attrib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_attrib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_attrib.o: ../../include/openssl/rc5.h
x_attrib.o: ../../include/openssl/rijndael-alg-fst.h
x_attrib.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_attrib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_attrib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_attrib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_attrib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_attrib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_attrib.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1108,7 +1152,8 @@ x_cinf.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_cinf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_cinf.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_cinf.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_cinf.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_cinf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_cinf.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_cinf.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_cinf.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_cinf.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_cinf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_cinf.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_cinf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_cinf.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_cinf.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_cinf.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1127,7 +1172,8 @@ x_crl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_crl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_crl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_crl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_crl.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_crl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_crl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_crl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_crl.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_crl.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_crl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_crl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_crl.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1146,7 +1192,8 @@ x_exten.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_exten.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_exten.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_exten.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_exten.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_exten.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_exten.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_exten.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_exten.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_exten.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_exten.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_exten.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_exten.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_exten.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_exten.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_exten.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1165,7 +1212,8 @@ x_info.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_info.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_info.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_info.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_info.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_info.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_info.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_info.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_info.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_info.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1184,7 +1232,8 @@ x_name.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_name.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_name.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_name.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_name.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_name.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_name.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_name.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_name.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_name.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_name.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1203,7 +1252,8 @@ x_pkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_pkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_pkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_pkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_pkey.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_pkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_pkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_pkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_pkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1222,7 +1272,9 @@ x_pubkey.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_pubkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_pubkey.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_pubkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_pubkey.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_pubkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_pubkey.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_pubkey.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_pubkey.o: ../../include/openssl/rc5.h
x_pubkey.o: ../../include/openssl/rijndael-alg-fst.h
x_pubkey.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_pubkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_pubkey.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_pubkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_pubkey.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_pubkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_pubkey.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1241,7 +1293,8 @@ x_req.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_req.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_req.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_req.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_req.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_req.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_req.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_req.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_req.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_req.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1260,7 +1313,8 @@ x_sig.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_sig.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_sig.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_sig.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_sig.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_sig.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_sig.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_sig.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_sig.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_sig.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_sig.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_sig.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_sig.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_sig.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_sig.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_sig.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1279,7 +1333,8 @@ x_spki.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_spki.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_spki.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_spki.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_spki.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_spki.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_spki.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_spki.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_spki.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_spki.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1298,7 +1353,8 @@ x_val.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_val.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_val.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_val.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_val.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_val.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_val.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_val.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_val.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_val.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_val.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_val.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_val.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_val.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_val.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_val.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1318,7 +1374,8 @@ x_x509.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_x509.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_x509.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_x509.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_x509.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_x509.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_x509.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_x509.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_x509.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_x509.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_x509.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_x509.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_x509.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h
@@ -1338,7 +1395,8 @@ x_x509a.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
x_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h x_x509a.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
x_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h x_x509a.o: ../../include/openssl/opensslv.h ../../include/openssl/pkcs7.h
x_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h x_x509a.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
x_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h x_x509a.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
x_x509a.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
x_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h x_x509a.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
x_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h x_x509a.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
x_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h x_x509a.o: ../../include/openssl/symhacks.h ../../include/openssl/x509.h

View File

@@ -491,12 +491,24 @@ static int do_name_ex(char_io *io_ch, void *arg, X509_NAME *n,
int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent, unsigned long flags) int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent, unsigned long flags)
{ {
if(flags == XN_FLAG_COMPAT)
return X509_NAME_print(out, nm, indent);
return do_name_ex(send_bio_chars, out, nm, indent, flags); return do_name_ex(send_bio_chars, out, nm, indent, flags);
} }
int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm, int indent, unsigned long flags) int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm, int indent, unsigned long flags)
{ {
if(flags == XN_FLAG_COMPAT)
{
BIO *btmp;
int ret;
btmp = BIO_new_fp(fp, BIO_NOCLOSE);
if(!btmp) return -1;
ret = X509_NAME_print(btmp, nm, indent);
BIO_free(btmp);
return ret;
}
return do_name_ex(send_fp_chars, fp, nm, indent, flags); return do_name_ex(send_fp_chars, fp, nm, indent, flags);
} }

View File

@@ -133,7 +133,7 @@ ASN1_STRING *ASN1_STRING_set_by_NID(ASN1_STRING **out, const unsigned char *in,
if(tbl) { if(tbl) {
mask = tbl->mask; mask = tbl->mask;
if(!(tbl->flags & STABLE_NO_MASK)) mask &= global_mask; if(!(tbl->flags & STABLE_NO_MASK)) mask &= global_mask;
ret = ASN1_mbstring_ncopy(out, in, inlen, inform, tbl->mask, ret = ASN1_mbstring_ncopy(out, in, inlen, inform, mask,
tbl->minsize, tbl->maxsize); tbl->minsize, tbl->maxsize);
} else ret = ASN1_mbstring_copy(out, in, inlen, inform, DIRSTRING_TYPE & global_mask); } else ret = ASN1_mbstring_copy(out, in, inlen, inform, DIRSTRING_TYPE & global_mask);
if(ret <= 0) return NULL; if(ret <= 0) return NULL;

View File

@@ -123,6 +123,8 @@ int i2d_ASN1_TYPE(ASN1_TYPE *a, unsigned char **pp)
break; break;
case V_ASN1_SET: case V_ASN1_SET:
case V_ASN1_SEQUENCE: case V_ASN1_SEQUENCE:
case V_ASN1_OTHER:
default:
if (a->value.set == NULL) if (a->value.set == NULL)
r=0; r=0;
else else
@@ -159,6 +161,8 @@ ASN1_TYPE *d2i_ASN1_TYPE(ASN1_TYPE **a, unsigned char **pp, long length)
inf=ASN1_get_object(&q,&len,&tag,&xclass,length); inf=ASN1_get_object(&q,&len,&tag,&xclass,length);
if (inf & 0x80) goto err; if (inf & 0x80) goto err;
/* If not universal tag we've no idea what it is */
if(xclass != V_ASN1_UNIVERSAL) tag = V_ASN1_OTHER;
ASN1_TYPE_component_free(ret); ASN1_TYPE_component_free(ret);
@@ -245,6 +249,8 @@ ASN1_TYPE *d2i_ASN1_TYPE(ASN1_TYPE **a, unsigned char **pp, long length)
break; break;
case V_ASN1_SET: case V_ASN1_SET:
case V_ASN1_SEQUENCE: case V_ASN1_SEQUENCE:
case V_ASN1_OTHER:
default:
/* Sets and sequences are left complete */ /* Sets and sequences are left complete */
if ((ret->value.set=ASN1_STRING_new()) == NULL) goto err; if ((ret->value.set=ASN1_STRING_new()) == NULL) goto err;
ret->value.set->type=tag; ret->value.set->type=tag;
@@ -252,9 +258,6 @@ ASN1_TYPE *d2i_ASN1_TYPE(ASN1_TYPE **a, unsigned char **pp, long length)
if (!ASN1_STRING_set(ret->value.set,p,(int)len)) goto err; if (!ASN1_STRING_set(ret->value.set,p,(int)len)) goto err;
p+=len; p+=len;
break; break;
default:
ASN1err(ASN1_F_D2I_ASN1_TYPE,ASN1_R_BAD_TYPE);
goto err;
} }
ret->type=tag; ret->type=tag;
@@ -312,6 +315,8 @@ static void ASN1_TYPE_component_free(ASN1_TYPE *a)
case V_ASN1_OBJECT: case V_ASN1_OBJECT:
ASN1_OBJECT_free(a->value.object); ASN1_OBJECT_free(a->value.object);
break; break;
case V_ASN1_NULL:
break;
case V_ASN1_INTEGER: case V_ASN1_INTEGER:
case V_ASN1_NEG_INTEGER: case V_ASN1_NEG_INTEGER:
case V_ASN1_ENUMERATED: case V_ASN1_ENUMERATED:
@@ -333,10 +338,9 @@ static void ASN1_TYPE_component_free(ASN1_TYPE *a)
case V_ASN1_UNIVERSALSTRING: case V_ASN1_UNIVERSALSTRING:
case V_ASN1_BMPSTRING: case V_ASN1_BMPSTRING:
case V_ASN1_UTF8STRING: case V_ASN1_UTF8STRING:
ASN1_STRING_free((ASN1_STRING *)a->value.ptr); case V_ASN1_OTHER:
break;
default: default:
/* MEMORY LEAK */ ASN1_STRING_free((ASN1_STRING *)a->value.ptr);
break; break;
} }
a->type=0; a->type=0;

View File

@@ -83,6 +83,7 @@ extern "C" {
#define V_ASN1_PRIMATIVE_TAG 0x1f #define V_ASN1_PRIMATIVE_TAG 0x1f
#define V_ASN1_APP_CHOOSE -2 /* let the recipient choose */ #define V_ASN1_APP_CHOOSE -2 /* let the recipient choose */
#define V_ASN1_OTHER -3 /* used in ASN1_TYPE */
#define V_ASN1_NEG 0x100 /* negative flag */ #define V_ASN1_NEG 0x100 /* negative flag */

View File

@@ -72,6 +72,11 @@
#ifndef NO_FP_API #ifndef NO_FP_API
int X509_print_fp(FILE *fp, X509 *x) int X509_print_fp(FILE *fp, X509 *x)
{
return X509_print_ex_fp(fp, x, XN_FLAG_COMPAT, X509_FLAG_COMPAT);
}
int X509_print_ex_fp(FILE *fp, X509 *x, unsigned long nmflag, unsigned long cflag)
{ {
BIO *b; BIO *b;
int ret; int ret;
@@ -82,17 +87,23 @@ int X509_print_fp(FILE *fp, X509 *x)
return(0); return(0);
} }
BIO_set_fp(b,fp,BIO_NOCLOSE); BIO_set_fp(b,fp,BIO_NOCLOSE);
ret=X509_print(b, x); ret=X509_print_ex(b, x, nmflag, cflag);
BIO_free(b); BIO_free(b);
return(ret); return(ret);
} }
#endif #endif
int X509_print(BIO *bp, X509 *x) int X509_print(BIO *bp, X509 *x)
{
return X509_print_ex(bp, x, XN_FLAG_COMPAT, X509_FLAG_COMPAT);
}
int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflags, unsigned long cflag)
{ {
long l; long l;
int ret=0,i,j,n; int ret=0,i,j,n;
char *m=NULL,*s; char *m=NULL,*s, mlch = ' ';
int nmindent = 0;
X509_CINF *ci; X509_CINF *ci;
ASN1_INTEGER *bs; ASN1_INTEGER *bs;
EVP_PKEY *pkey=NULL; EVP_PKEY *pkey=NULL;
@@ -100,11 +111,28 @@ int X509_print(BIO *bp, X509 *x)
X509_EXTENSION *ex; X509_EXTENSION *ex;
ASN1_STRING *str=NULL; ASN1_STRING *str=NULL;
if((nmflags & XN_FLAG_SEP_MASK) == XN_FLAG_SEP_MULTILINE) {
mlch = '\n';
nmindent = 16;
}
if(nmflags == X509_FLAG_COMPAT)
nmindent = 16;
ci=x->cert_info; ci=x->cert_info;
if(!(cflag & X509_FLAG_NO_HEADER))
{
if (BIO_write(bp,"Certificate:\n",13) <= 0) goto err; if (BIO_write(bp,"Certificate:\n",13) <= 0) goto err;
if (BIO_write(bp," Data:\n",10) <= 0) goto err; if (BIO_write(bp," Data:\n",10) <= 0) goto err;
}
if(!(cflag & X509_FLAG_NO_VERSION))
{
l=X509_get_version(x); l=X509_get_version(x);
if (BIO_printf(bp,"%8sVersion: %lu (0x%lx)\n","",l+1,l) <= 0) goto err; if (BIO_printf(bp,"%8sVersion: %lu (0x%lx)\n","",l+1,l) <= 0) goto err;
}
if(!(cflag & X509_FLAG_NO_SERIAL))
{
if (BIO_write(bp," Serial Number:",22) <= 0) goto err; if (BIO_write(bp," Serial Number:",22) <= 0) goto err;
bs=X509_get_serialNumber(x); bs=X509_get_serialNumber(x);
@@ -134,20 +162,37 @@ int X509_print(BIO *bp, X509 *x)
} }
} }
}
if(!(cflag & X509_FLAG_NO_SIGNAME))
{
i=OBJ_obj2nid(ci->signature->algorithm); i=OBJ_obj2nid(ci->signature->algorithm);
if (BIO_printf(bp,"%8sSignature Algorithm: %s\n","", if (BIO_printf(bp,"%8sSignature Algorithm: %s\n","",
(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) (i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0)
goto err; goto err;
}
if (BIO_write(bp," Issuer: ",16) <= 0) goto err; if(!(cflag & X509_FLAG_NO_ISSUER))
if (!X509_NAME_print(bp,X509_get_issuer_name(x),16)) goto err; {
if (BIO_printf(bp," Issuer:%c",mlch) <= 0) goto err;
if (!X509_NAME_print_ex(bp,X509_get_issuer_name(x),nmindent, nmflags)) goto err;
}
if(!(cflag & X509_FLAG_NO_VALIDITY))
{
if (BIO_write(bp,"\n Validity\n",18) <= 0) goto err; if (BIO_write(bp,"\n Validity\n",18) <= 0) goto err;
if (BIO_write(bp," Not Before: ",24) <= 0) goto err; if (BIO_write(bp," Not Before: ",24) <= 0) goto err;
if (!ASN1_TIME_print(bp,X509_get_notBefore(x))) goto err; if (!ASN1_TIME_print(bp,X509_get_notBefore(x))) goto err;
if (BIO_write(bp,"\n Not After : ",25) <= 0) goto err; if (BIO_write(bp,"\n Not After : ",25) <= 0) goto err;
if (!ASN1_TIME_print(bp,X509_get_notAfter(x))) goto err; if (!ASN1_TIME_print(bp,X509_get_notAfter(x))) goto err;
if (BIO_write(bp,"\n Subject: ",18) <= 0) goto err; if (BIO_write(bp,"\n",1) <= 0) goto err;
if (!X509_NAME_print(bp,X509_get_subject_name(x),16)) goto err; }
if(!(cflag & X509_FLAG_NO_SUBJECT))
{
if (BIO_printf(bp," Subject:%c",mlch) <= 0) goto err;
if (!X509_NAME_print_ex(bp,X509_get_subject_name(x),nmindent, nmflags)) goto err;
}
if(!(cflag & X509_FLAG_NO_PUBKEY))
{
if (BIO_write(bp,"\n Subject Public Key Info:\n",34) <= 0) if (BIO_write(bp,"\n Subject Public Key Info:\n",34) <= 0)
goto err; goto err;
i=OBJ_obj2nid(ci->key->algor->algorithm); i=OBJ_obj2nid(ci->key->algor->algorithm);
@@ -181,7 +226,11 @@ int X509_print(BIO *bp, X509 *x)
BIO_printf(bp,"%12sUnknown Public Key:\n",""); BIO_printf(bp,"%12sUnknown Public Key:\n","");
EVP_PKEY_free(pkey); EVP_PKEY_free(pkey);
}
if (cflag & X509_FLAG_NO_EXTENSIONS)
n = 0;
else
n=X509_get_ext_count(x); n=X509_get_ext_count(x);
if (n > 0) if (n > 0)
{ {
@@ -196,7 +245,7 @@ int X509_print(BIO *bp, X509 *x)
j=X509_EXTENSION_get_critical(ex); j=X509_EXTENSION_get_critical(ex);
if (BIO_printf(bp,": %s\n",j?"critical":"","") <= 0) if (BIO_printf(bp,": %s\n",j?"critical":"","") <= 0)
goto err; goto err;
if(!X509V3_EXT_print(bp, ex, 0, 16)) if(!X509V3_EXT_print(bp, ex, cflag, 16))
{ {
BIO_printf(bp, "%16s", ""); BIO_printf(bp, "%16s", "");
M_ASN1_OCTET_STRING_print(bp,ex->value); M_ASN1_OCTET_STRING_print(bp,ex->value);
@@ -205,6 +254,8 @@ int X509_print(BIO *bp, X509 *x)
} }
} }
if(!(cflag & X509_FLAG_NO_SIGDUMP))
{
i=OBJ_obj2nid(x->sig_alg->algorithm); i=OBJ_obj2nid(x->sig_alg->algorithm);
if (BIO_printf(bp,"%4sSignature Algorithm: %s","", if (BIO_printf(bp,"%4sSignature Algorithm: %s","",
(i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err; (i == NID_undef)?"UNKNOWN":OBJ_nid2ln(i)) <= 0) goto err;
@@ -219,7 +270,11 @@ int X509_print(BIO *bp, X509 *x)
((i+1) == n)?"":":") <= 0) goto err; ((i+1) == n)?"":":") <= 0) goto err;
} }
if (BIO_write(bp,"\n",1) != 1) goto err; if (BIO_write(bp,"\n",1) != 1) goto err;
}
if(!(cflag & X509_FLAG_NO_AUX))
{
if (!X509_CERT_AUX_print(bp, x->aux, 0)) goto err; if (!X509_CERT_AUX_print(bp, x->aux, 0)) goto err;
}
ret=1; ret=1;
err: err:
if (str != NULL) ASN1_STRING_free(str); if (str != NULL) ASN1_STRING_free(str);

View File

@@ -44,7 +44,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
# elf # elf

View File

@@ -27,11 +27,13 @@ LIBSRC= bio_lib.c bio_cb.c bio_err.c \
bss_file.c bss_sock.c bss_conn.c \ bss_file.c bss_sock.c bss_conn.c \
bf_null.c bf_buff.c b_print.c b_dump.c \ bf_null.c bf_buff.c b_print.c b_dump.c \
b_sock.c bss_acpt.c bf_nbio.c bss_log.c bss_bio.c b_sock.c bss_acpt.c bf_nbio.c bss_log.c bss_bio.c
# bf_lbuf.c
LIBOBJ= bio_lib.o bio_cb.o bio_err.o \ LIBOBJ= bio_lib.o bio_cb.o bio_err.o \
bss_mem.o bss_null.o bss_fd.o \ bss_mem.o bss_null.o bss_fd.o \
bss_file.o bss_sock.o bss_conn.o \ bss_file.o bss_sock.o bss_conn.o \
bf_null.o bf_buff.o b_print.o b_dump.o \ bf_null.o bf_buff.o b_print.o b_dump.o \
b_sock.o bss_acpt.o bf_nbio.o bss_log.o bss_bio.o b_sock.o bss_acpt.o bf_nbio.o bss_log.o bss_bio.o
# bf_lbuf.o
SRC= $(LIBSRC) SRC= $(LIBSRC)
@@ -47,7 +49,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:
@@ -120,7 +123,8 @@ bf_buff.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
bf_buff.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h bf_buff.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_buff.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h bf_buff.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_buff.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h bf_buff.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h bf_buff.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
bf_buff.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_buff.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h bf_buff.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_buff.o: ../../include/openssl/sha.h ../../include/openssl/stack.h bf_buff.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_buff.o: ../../include/openssl/symhacks.h ../cryptlib.h bf_buff.o: ../../include/openssl/symhacks.h ../cryptlib.h
@@ -138,10 +142,11 @@ bf_nbio.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_nbio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h bf_nbio.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_nbio.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h bf_nbio.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h
bf_nbio.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h bf_nbio.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
bf_nbio.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h bf_nbio.o: ../../include/openssl/rijndael-alg-fst.h
bf_nbio.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h bf_nbio.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_nbio.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h bf_nbio.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_nbio.o: ../cryptlib.h bf_nbio.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_nbio.o: ../../include/openssl/symhacks.h ../cryptlib.h
bf_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h bf_null.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
bf_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h bf_null.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h
bf_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h bf_null.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h
@@ -155,7 +160,8 @@ bf_null.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
bf_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h bf_null.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
bf_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h bf_null.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
bf_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h bf_null.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h bf_null.o: ../../include/openssl/rc5.h ../../include/openssl/rijndael-alg-fst.h
bf_null.o: ../../include/openssl/rijndael.h ../../include/openssl/ripemd.h
bf_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h bf_null.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
bf_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h bf_null.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
bf_null.o: ../../include/openssl/symhacks.h ../cryptlib.h bf_null.o: ../../include/openssl/symhacks.h ../cryptlib.h

View File

@@ -151,7 +151,7 @@ static void _dopr(char **sbuffer, char **buffer,
/* some handy macros */ /* some handy macros */
#define char_to_int(p) (p - '0') #define char_to_int(p) (p - '0')
#define MAX(p,q) ((p >= q) ? p : q) #define OSSL_MAX(p,q) ((p >= q) ? p : q)
static void static void
_dopr( _dopr(
@@ -502,13 +502,13 @@ fmtint(
convert[place] = 0; convert[place] = 0;
zpadlen = max - place; zpadlen = max - place;
spadlen = min - MAX(max, place) - (signvalue ? 1 : 0); spadlen = min - OSSL_MAX(max, place) - (signvalue ? 1 : 0);
if (zpadlen < 0) if (zpadlen < 0)
zpadlen = 0; zpadlen = 0;
if (spadlen < 0) if (spadlen < 0)
spadlen = 0; spadlen = 0;
if (flags & DP_F_ZERO) { if (flags & DP_F_ZERO) {
zpadlen = MAX(zpadlen, spadlen); zpadlen = OSSL_MAX(zpadlen, spadlen);
spadlen = 0; spadlen = 0;
} }
if (flags & DP_F_MINUS) if (flags & DP_F_MINUS)

View File

@@ -113,8 +113,8 @@ int BIO_get_host_ip(const char *str, unsigned char *ip)
/* At this point, we have something that is most probably correct /* At this point, we have something that is most probably correct
in some way, so let's init the socket. */ in some way, so let's init the socket. */
if (!BIO_sock_init()) if (BIO_sock_init() != 1)
return(0); /* don't generate another error code here */ return 0; /* don't generate another error code here */
/* If the string actually contained an IP address, we need not do /* If the string actually contained an IP address, we need not do
anything more */ anything more */
@@ -527,7 +527,7 @@ int BIO_get_accept_socket(char *host, int bind_mode)
unsigned long l; unsigned long l;
int err_num; int err_num;
if (!BIO_sock_init()) return(INVALID_SOCKET); if (BIO_sock_init() != 1) return(INVALID_SOCKET);
if ((str=BUF_strdup(host)) == NULL) return(INVALID_SOCKET); if ((str=BUF_strdup(host)) == NULL) return(INVALID_SOCKET);
@@ -661,6 +661,7 @@ int BIO_accept(int sock, char **addr)
ret=accept(sock,(struct sockaddr *)&from,(void *)&len); ret=accept(sock,(struct sockaddr *)&from,(void *)&len);
if (ret == INVALID_SOCKET) if (ret == INVALID_SOCKET)
{ {
if(BIO_sock_should_retry(ret)) return -2;
SYSerr(SYS_F_ACCEPT,get_last_socket_error()); SYSerr(SYS_F_ACCEPT,get_last_socket_error());
BIOerr(BIO_F_BIO_ACCEPT,BIO_R_ACCEPT_ERROR); BIOerr(BIO_F_BIO_ACCEPT,BIO_R_ACCEPT_ERROR);
goto end; goto end;

397
crypto/bio/bf_lbuf.c Normal file
View File

@@ -0,0 +1,397 @@
/* crypto/bio/bf_buff.c */
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
* All rights reserved.
*
* This package is an SSL implementation written
* by Eric Young (eay@cryptsoft.com).
* The implementation was written so as to conform with Netscapes SSL.
*
* This library is free for commercial and non-commercial use as long as
* the following conditions are aheared to. The following conditions
* apply to all code found in this distribution, be it the RC4, RSA,
* lhash, DES, etc., code; not just the SSL code. The SSL documentation
* included with this distribution is covered by the same copyright terms
* except that the holder is Tim Hudson (tjh@cryptsoft.com).
*
* Copyright remains Eric Young's, and as such any Copyright notices in
* the code are not to be removed.
* If this package is used in a product, Eric Young should be given attribution
* as the author of the parts of the library used.
* This can be in the form of a textual message at program startup or
* in documentation (online or textual) provided with the package.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* "This product includes cryptographic software written by
* Eric Young (eay@cryptsoft.com)"
* The word 'cryptographic' can be left out if the rouines from the library
* being used are not cryptographic related :-).
* 4. If you include any Windows specific code (or a derivative thereof) from
* the apps directory (application code) you must include an acknowledgement:
* "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
*
* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* The licence and distribution terms for any publically available version or
* derivative of this code cannot be changed. i.e. this code cannot simply be
* copied and put under another distribution licence
* [including the GNU Public Licence.]
*/
#include <stdio.h>
#include <errno.h>
#include "cryptlib.h"
#include <openssl/bio.h>
#include <openssl/evp.h>
static int linebuffer_write(BIO *h, const char *buf,int num);
static int linebuffer_read(BIO *h, char *buf, int size);
static int linebuffer_puts(BIO *h, const char *str);
static int linebuffer_gets(BIO *h, char *str, int size);
static long linebuffer_ctrl(BIO *h, int cmd, long arg1, void *arg2);
static int linebuffer_new(BIO *h);
static int linebuffer_free(BIO *data);
static long linebuffer_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp);
/* A 10k maximum should be enough for most purposes */
#define DEFAULT_LINEBUFFER_SIZE 1024*10
/* #define DEBUG */
static BIO_METHOD methods_linebuffer=
{
BIO_TYPE_LINEBUFFER,
"linebuffer",
linebuffer_write,
linebuffer_read,
linebuffer_puts,
linebuffer_gets,
linebuffer_ctrl,
linebuffer_new,
linebuffer_free,
linebuffer_callback_ctrl,
};
BIO_METHOD *BIO_f_linebuffer(void)
{
return(&methods_linebuffer);
}
typedef struct bio_linebuffer_ctx_struct
{
char *obuf; /* the output char array */
int obuf_size; /* how big is the output buffer */
int obuf_len; /* how many bytes are in it */
} BIO_LINEBUFFER_CTX;
static int linebuffer_new(BIO *bi)
{
BIO_LINEBUFFER_CTX *ctx;
ctx=(BIO_LINEBUFFER_CTX *)OPENSSL_malloc(sizeof(BIO_LINEBUFFER_CTX));
if (ctx == NULL) return(0);
ctx->obuf=(char *)OPENSSL_malloc(DEFAULT_LINEBUFFER_SIZE);
if (ctx->obuf == NULL) { OPENSSL_free(ctx); return(0); }
ctx->obuf_size=DEFAULT_LINEBUFFER_SIZE;
ctx->obuf_len=0;
bi->init=1;
bi->ptr=(char *)ctx;
bi->flags=0;
return(1);
}
static int linebuffer_free(BIO *a)
{
BIO_LINEBUFFER_CTX *b;
if (a == NULL) return(0);
b=(BIO_LINEBUFFER_CTX *)a->ptr;
if (b->obuf != NULL) OPENSSL_free(b->obuf);
OPENSSL_free(a->ptr);
a->ptr=NULL;
a->init=0;
a->flags=0;
return(1);
}
static int linebuffer_read(BIO *b, char *out, int outl)
{
int ret=0;
if (out == NULL) return(0);
if (b->next_bio == NULL) return(0);
ret=BIO_read(b->next_bio,out,outl);
BIO_clear_retry_flags(b);
BIO_copy_next_retry(b);
return(ret);
}
static int linebuffer_write(BIO *b, const char *in, int inl)
{
int i,num=0,foundnl;
BIO_LINEBUFFER_CTX *ctx;
if ((in == NULL) || (inl <= 0)) return(0);
ctx=(BIO_LINEBUFFER_CTX *)b->ptr;
if ((ctx == NULL) || (b->next_bio == NULL)) return(0);
BIO_clear_retry_flags(b);
do
{
const char *p;
for(p = in; p < in + inl && *p != '\n'; p++)
;
if (*p == '\n')
{
p++;
foundnl = 1;
}
else
foundnl = 0;
/* If a NL was found and we already have text in the save
buffer, concatenate them and write */
while ((foundnl || p - in > ctx->obuf_size - ctx->obuf_len)
&& ctx->obuf_len > 0)
{
int orig_olen = ctx->obuf_len;
i = ctx->obuf_size - ctx->obuf_len;
if (p - in > 0)
{
if (i >= p - in)
{
memcpy(&(ctx->obuf[ctx->obuf_len]),
in,p - in);
ctx->obuf_len += p - in;
inl -= p - in;
num += p - in;
in = p;
}
else
{
memcpy(&(ctx->obuf[ctx->obuf_len]),
in,i);
ctx->obuf_len += i;
inl -= i;
in += i;
num += i;
}
}
#ifdef DEBUG
BIO_write(b->next_bio, "<*<", 3);
#endif
i=BIO_write(b->next_bio,
ctx->obuf, ctx->obuf_len);
if (i <= 0)
{
ctx->obuf_len = orig_olen;
BIO_copy_next_retry(b);
#ifdef DEBUG
BIO_write(b->next_bio, ">*>", 3);
#endif
if (i < 0) return((num > 0)?num:i);
if (i == 0) return(num);
}
#ifdef DEBUG
BIO_write(b->next_bio, ">*>", 3);
#endif
if (i < ctx->obuf_len)
memmove(ctx->obuf, ctx->obuf + i,
ctx->obuf_len - i);
ctx->obuf_len-=i;
}
/* Now that the save buffer is emptied, let's write the input
buffer if a NL was found and there is anything to write. */
if ((foundnl || p - in > ctx->obuf_size) && p - in > 0)
{
#ifdef DEBUG
BIO_write(b->next_bio, "<*<", 3);
#endif
i=BIO_write(b->next_bio,in,p - in);
if (i <= 0)
{
BIO_copy_next_retry(b);
#ifdef DEBUG
BIO_write(b->next_bio, ">*>", 3);
#endif
if (i < 0) return((num > 0)?num:i);
if (i == 0) return(num);
}
#ifdef DEBUG
BIO_write(b->next_bio, ">*>", 3);
#endif
num+=i;
in+=i;
inl-=i;
}
}
while(foundnl && inl > 0);
/* We've written as much as we can. The rest of the input buffer, if
any, is text that doesn't and with a NL and therefore needs to be
saved for the next trip. */
if (inl > 0)
{
memcpy(&(ctx->obuf[ctx->obuf_len]), in, inl);
ctx->obuf_len += inl;
num += inl;
}
return num;
}
static long linebuffer_ctrl(BIO *b, int cmd, long num, void *ptr)
{
BIO *dbio;
BIO_LINEBUFFER_CTX *ctx;
long ret=1;
char *p;
int r;
int obs;
ctx=(BIO_LINEBUFFER_CTX *)b->ptr;
switch (cmd)
{
case BIO_CTRL_RESET:
ctx->obuf_len=0;
if (b->next_bio == NULL) return(0);
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
break;
case BIO_CTRL_INFO:
ret=(long)ctx->obuf_len;
break;
case BIO_CTRL_WPENDING:
ret=(long)ctx->obuf_len;
if (ret == 0)
{
if (b->next_bio == NULL) return(0);
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
}
break;
case BIO_C_SET_BUFF_SIZE:
obs=(int)num;
p=ctx->obuf;
if ((obs > DEFAULT_LINEBUFFER_SIZE) && (obs != ctx->obuf_size))
{
p=(char *)OPENSSL_malloc((int)num);
if (p == NULL)
goto malloc_error;
}
if (ctx->obuf != p)
{
if (ctx->obuf_len > obs)
{
ctx->obuf_len = obs;
}
memcpy(p, ctx->obuf, ctx->obuf_len);
OPENSSL_free(ctx->obuf);
ctx->obuf=p;
ctx->obuf_size=obs;
}
break;
case BIO_C_DO_STATE_MACHINE:
if (b->next_bio == NULL) return(0);
BIO_clear_retry_flags(b);
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
BIO_copy_next_retry(b);
break;
case BIO_CTRL_FLUSH:
if (b->next_bio == NULL) return(0);
if (ctx->obuf_len <= 0)
{
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
break;
}
for (;;)
{
BIO_clear_retry_flags(b);
if (ctx->obuf_len > 0)
{
r=BIO_write(b->next_bio,
ctx->obuf, ctx->obuf_len);
#if 0
fprintf(stderr,"FLUSH %3d -> %3d\n",ctx->obuf_len,r);
#endif
BIO_copy_next_retry(b);
if (r <= 0) return((long)r);
if (r < ctx->obuf_len)
memmove(ctx->obuf, ctx->obuf + r,
ctx->obuf_len - r);
ctx->obuf_len-=r;
}
else
{
ctx->obuf_len=0;
ret=1;
break;
}
}
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
break;
case BIO_CTRL_DUP:
dbio=(BIO *)ptr;
if ( !BIO_set_write_buffer_size(dbio,ctx->obuf_size))
ret=0;
break;
default:
if (b->next_bio == NULL) return(0);
ret=BIO_ctrl(b->next_bio,cmd,num,ptr);
break;
}
return(ret);
malloc_error:
BIOerr(BIO_F_LINEBUFFER_CTRL,ERR_R_MALLOC_FAILURE);
return(0);
}
static long linebuffer_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp)
{
long ret=1;
if (b->next_bio == NULL) return(0);
switch (cmd)
{
default:
ret=BIO_callback_ctrl(b->next_bio,cmd,fp);
break;
}
return(ret);
}
static int linebuffer_gets(BIO *b, char *buf, int size)
{
if (b->next_bio == NULL) return(0);
return(BIO_gets(b->next_bio,buf,size));
}
static int linebuffer_puts(BIO *b, const char *str)
{
return(linebuffer_write(b,str,strlen(str)));
}

View File

@@ -91,6 +91,7 @@ extern "C" {
#define BIO_TYPE_NULL_FILTER (17|0x0200) #define BIO_TYPE_NULL_FILTER (17|0x0200)
#define BIO_TYPE_BER (18|0x0200) /* BER -> bin filter */ #define BIO_TYPE_BER (18|0x0200) /* BER -> bin filter */
#define BIO_TYPE_BIO (19|0x0400) /* (half a) BIO pair */ #define BIO_TYPE_BIO (19|0x0400) /* (half a) BIO pair */
#define BIO_TYPE_LINEBUFFER (20|0x0200) /* filter */
#define BIO_TYPE_DESCRIPTOR 0x0100 /* socket, fd, connect or accept */ #define BIO_TYPE_DESCRIPTOR 0x0100 /* socket, fd, connect or accept */
#define BIO_TYPE_FILTER 0x0200 #define BIO_TYPE_FILTER 0x0200
@@ -178,7 +179,7 @@ extern "C" {
#define BIO_retry_type(a) ((a)->flags & BIO_FLAGS_RWS) #define BIO_retry_type(a) ((a)->flags & BIO_FLAGS_RWS)
#define BIO_should_retry(a) ((a)->flags & BIO_FLAGS_SHOULD_RETRY) #define BIO_should_retry(a) ((a)->flags & BIO_FLAGS_SHOULD_RETRY)
/* The next two are used in conjunction with the /* The next three are used in conjunction with the
* BIO_should_io_special() condition. After this returns true, * BIO_should_io_special() condition. After this returns true,
* BIO *BIO_get_retry_BIO(BIO *bio, int *reason); will walk the BIO * BIO *BIO_get_retry_BIO(BIO *bio, int *reason); will walk the BIO
* stack and return the 'reason' for the special and the offending BIO. * stack and return the 'reason' for the special and the offending BIO.
@@ -187,6 +188,8 @@ extern "C" {
#define BIO_RR_SSL_X509_LOOKUP 0x01 #define BIO_RR_SSL_X509_LOOKUP 0x01
/* Returned from the connect BIO when a connect would have blocked */ /* Returned from the connect BIO when a connect would have blocked */
#define BIO_RR_CONNECT 0x02 #define BIO_RR_CONNECT 0x02
/* Returned from the accept BIO when an accept would have blocked */
#define BIO_RR_ACCEPT 0x03
/* These are passed by the BIO callback */ /* These are passed by the BIO callback */
#define BIO_CB_FREE 0x01 #define BIO_CB_FREE 0x01
@@ -554,6 +557,9 @@ BIO_METHOD *BIO_s_bio(void);
BIO_METHOD *BIO_s_null(void); BIO_METHOD *BIO_s_null(void);
BIO_METHOD *BIO_f_null(void); BIO_METHOD *BIO_f_null(void);
BIO_METHOD *BIO_f_buffer(void); BIO_METHOD *BIO_f_buffer(void);
#ifdef VMS
BIO_METHOD *BIO_f_linebuffer(void);
#endif
BIO_METHOD *BIO_f_nbio_test(void); BIO_METHOD *BIO_f_nbio_test(void);
/* BIO_METHOD *BIO_f_ber(void); */ /* BIO_METHOD *BIO_f_ber(void); */
@@ -640,6 +646,7 @@ int BIO_vsnprintf(char *buf, size_t n, const char *format, va_list args);
#define BIO_F_CONN_CTRL 127 #define BIO_F_CONN_CTRL 127
#define BIO_F_CONN_STATE 115 #define BIO_F_CONN_STATE 115
#define BIO_F_FILE_CTRL 116 #define BIO_F_FILE_CTRL 116
#define BIO_F_LINEBUFFER_CTRL 129
#define BIO_F_MEM_READ 128 #define BIO_F_MEM_READ 128
#define BIO_F_MEM_WRITE 117 #define BIO_F_MEM_WRITE 117
#define BIO_F_SSL_NEW 118 #define BIO_F_SSL_NEW 118

View File

@@ -91,6 +91,7 @@ static ERR_STRING_DATA BIO_str_functs[]=
{ERR_PACK(0,BIO_F_CONN_CTRL,0), "CONN_CTRL"}, {ERR_PACK(0,BIO_F_CONN_CTRL,0), "CONN_CTRL"},
{ERR_PACK(0,BIO_F_CONN_STATE,0), "CONN_STATE"}, {ERR_PACK(0,BIO_F_CONN_STATE,0), "CONN_STATE"},
{ERR_PACK(0,BIO_F_FILE_CTRL,0), "FILE_CTRL"}, {ERR_PACK(0,BIO_F_FILE_CTRL,0), "FILE_CTRL"},
{ERR_PACK(0,BIO_F_LINEBUFFER_CTRL,0), "LINEBUFFER_CTRL"},
{ERR_PACK(0,BIO_F_MEM_READ,0), "MEM_READ"}, {ERR_PACK(0,BIO_F_MEM_READ,0), "MEM_READ"},
{ERR_PACK(0,BIO_F_MEM_WRITE,0), "MEM_WRITE"}, {ERR_PACK(0,BIO_F_MEM_WRITE,0), "MEM_WRITE"},
{ERR_PACK(0,BIO_F_SSL_NEW,0), "SSL_new"}, {ERR_PACK(0,BIO_F_SSL_NEW,0), "SSL_new"},

View File

@@ -236,8 +236,20 @@ again:
c->state=ACPT_S_OK; c->state=ACPT_S_OK;
goto again; goto again;
} }
BIO_clear_retry_flags(b);
b->retry_reason=0;
i=BIO_accept(c->accept_sock,&(c->addr)); i=BIO_accept(c->accept_sock,&(c->addr));
/* -2 return means we should retry */
if(i == -2)
{
BIO_set_retry_special(b);
b->retry_reason=BIO_RR_ACCEPT;
return -1;
}
if (i < 0) return(i); if (i < 0) return(i);
bio=BIO_new_socket(i,BIO_CLOSE); bio=BIO_new_socket(i,BIO_CLOSE);
if (bio == NULL) goto err; if (bio == NULL) goto err;

View File

@@ -236,7 +236,7 @@ static int conn_state(BIO *b, BIO_CONNECT *c)
} }
c->state=BIO_CONN_S_CONNECT; c->state=BIO_CONN_S_CONNECT;
#ifdef SO_KEEPALIVE #if defined(SO_KEEPALIVE) && !defined(MPE)
i=1; i=1;
i=setsockopt(b->num,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i)); i=setsockopt(b->num,SOL_SOCKET,SO_KEEPALIVE,(char *)&i,sizeof(i));
if (i < 0) if (i < 0)

View File

@@ -68,7 +68,8 @@ bnbug: bnbug.c ../../libcrypto.a top
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
# elf # elf

View File

@@ -1611,7 +1611,7 @@ bn_mul_comba4
.IMPORT $global$,DATA .IMPORT $global$,DATA
.SPACE $TEXT$ .SPACE $TEXT$
.SUBSPA $CODE$ .SUBSPA $CODE$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=16 .SUBSPA $LIT$,ACCESS=0x2c
C$7 C$7
.ALIGN 8 .ALIGN 8
.STRINGZ "Division would overflow (%d)\n" .STRINGZ "Division would overflow (%d)\n"

View File

@@ -1598,7 +1598,7 @@ bn_mul_comba4
.IMPORT $global$,DATA .IMPORT $global$,DATA
.SPACE $TEXT$ .SPACE $TEXT$
.SUBSPA $CODE$ .SUBSPA $CODE$
.SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=16 .SUBSPA $LIT$,ACCESS=0x2c
C$4 C$4
.ALIGN 8 .ALIGN 8
.STRINGZ "Division would overflow (%d)\n" .STRINGZ "Division would overflow (%d)\n"

View File

@@ -113,6 +113,13 @@
#include <stdio.h> #include <stdio.h>
#include "cryptlib.h" #include "cryptlib.h"
#include "bn_lcl.h" #include "bn_lcl.h"
#ifdef ATALLA
# include <alloca.h>
# include <atasi.h>
# include <assert.h>
# include <dlfcn.h>
#endif
#define TABLE_SIZE 32 #define TABLE_SIZE 32
@@ -176,6 +183,174 @@ err:
} }
#ifdef ATALLA
/*
* This routine will dynamically check for the existance of an Atalla AXL-200
* SSL accelerator module. If one is found, the variable
* asi_accelerator_present is set to 1 and the function pointers
* ptr_ASI_xxxxxx above will be initialized to corresponding ASI API calls.
*/
typedef int tfnASI_GetPerformanceStatistics(int reset_flag,
unsigned int *ret_buf);
typedef int tfnASI_GetHardwareConfig(long card_num, unsigned int *ret_buf);
typedef int tfnASI_RSAPrivateKeyOpFn(RSAPrivateKey * rsaKey,
unsigned char *output,
unsigned char *input,
unsigned int modulus_len);
static tfnASI_GetHardwareConfig *ptr_ASI_GetHardwareConfig;
static tfnASI_RSAPrivateKeyOpFn *ptr_ASI_RSAPrivateKeyOpFn;
static tfnASI_GetPerformanceStatistics *ptr_ASI_GetPerformanceStatistics;
static int asi_accelerator_present;
static int tried_atalla;
void atalla_initialize_accelerator_handle(void)
{
void *dl_handle;
int status;
unsigned int config_buf[1024];
static int tested;
if(tested)
return;
tested=1;
bzero((void *)config_buf, 1024);
/*
* Check to see if the library is present on the system
*/
dl_handle = dlopen("atasi.so", RTLD_NOW);
if (dl_handle == (void *) NULL)
{
/* printf("atasi.so library is not present on the system\n");
printf("No HW acceleration available\n");*/
return;
}
/*
* The library is present. Now we'll check to insure that the
* LDM is up and running. First we'll get the address of the
* function in the atasi library that we need to see if the
* LDM is operating.
*/
ptr_ASI_GetHardwareConfig =
(tfnASI_GetHardwareConfig *)dlsym(dl_handle,"ASI_GetHardwareConfig");
if (ptr_ASI_GetHardwareConfig)
{
/*
* We found the call, now we'll get our config
* status. If we get a non 0 result, the LDM is not
* running and we cannot use the Atalla ASI *
* library.
*/
status = (*ptr_ASI_GetHardwareConfig)(0L, config_buf);
if (status != 0)
{
printf("atasi.so library is present but not initialized\n");
printf("No HW acceleration available\n");
return;
}
}
else
{
/* printf("We found the library, but not the function. Very Strange!\n");*/
return ;
}
/*
* It looks like we have acceleration capabilities. Load up the
* pointers to our ASI API calls.
*/
ptr_ASI_RSAPrivateKeyOpFn=
(tfnASI_RSAPrivateKeyOpFn *)dlsym(dl_handle, "ASI_RSAPrivateKeyOpFn");
if (ptr_ASI_RSAPrivateKeyOpFn == NULL)
{
/* printf("We found the library, but no RSA function. Very Strange!\n");*/
return;
}
ptr_ASI_GetPerformanceStatistics =
(tfnASI_GetPerformanceStatistics *)dlsym(dl_handle, "ASI_GetPerformanceStatistics");
if (ptr_ASI_GetPerformanceStatistics == NULL)
{
/* printf("We found the library, but no stat function. Very Strange!\n");*/
return;
}
/*
* Indicate that acceleration is available
*/
asi_accelerator_present = 1;
/* printf("This system has acceleration!\n");*/
return;
}
/* make sure this only gets called once when bn_mod_exp calls bn_mod_exp_mont */
int BN_mod_exp_atalla(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m)
{
unsigned char *abin;
unsigned char *pbin;
unsigned char *mbin;
unsigned char *rbin;
int an,pn,mn,ret;
RSAPrivateKey keydata;
atalla_initialize_accelerator_handle();
if(!asi_accelerator_present)
return 0;
/* We should be able to run without size testing */
# define ASIZE 128
an=BN_num_bytes(a);
pn=BN_num_bytes(p);
mn=BN_num_bytes(m);
if(an <= ASIZE && pn <= ASIZE && mn <= ASIZE)
{
int size=mn;
assert(an <= mn);
abin=alloca(size);
memset(abin,'\0',mn);
BN_bn2bin(a,abin+size-an);
pbin=alloca(pn);
BN_bn2bin(p,pbin);
mbin=alloca(size);
memset(mbin,'\0',mn);
BN_bn2bin(m,mbin+size-mn);
rbin=alloca(size);
memset(&keydata,'\0',sizeof keydata);
keydata.privateExponent.data=pbin;
keydata.privateExponent.len=pn;
keydata.modulus.data=mbin;
keydata.modulus.len=size;
ret=(*ptr_ASI_RSAPrivateKeyOpFn)(&keydata,rbin,abin,keydata.modulus.len);
/*fprintf(stderr,"!%s\n",BN_bn2hex(a));*/
if(!ret)
{
BN_bin2bn(rbin,keydata.modulus.len,r);
/*fprintf(stderr,"?%s\n",BN_bn2hex(r));*/
return 1;
}
}
return 0;
}
#endif /* def ATALLA */
int BN_mod_exp(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m, int BN_mod_exp(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m,
BN_CTX *ctx) BN_CTX *ctx)
{ {
@@ -185,6 +360,13 @@ int BN_mod_exp(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m,
bn_check_top(p); bn_check_top(p);
bn_check_top(m); bn_check_top(m);
#ifdef ATALLA
if(BN_mod_exp_atalla(r,a,p,m))
return 1;
/* If it fails, try the other methods (but don't try atalla again) */
tried_atalla=1;
#endif
#ifdef MONT_MUL_MOD #ifdef MONT_MUL_MOD
/* I have finally been able to take out this pre-condition of /* I have finally been able to take out this pre-condition of
* the top bit being set. It was caused by an error in BN_div * the top bit being set. It was caused by an error in BN_div
@@ -210,6 +392,10 @@ int BN_mod_exp(BIGNUM *r, BIGNUM *a, const BIGNUM *p, const BIGNUM *m,
{ ret=BN_mod_exp_simple(r,a,p,m,ctx); } { ret=BN_mod_exp_simple(r,a,p,m,ctx); }
#endif #endif
#ifdef ATALLA
tried_atalla=0;
#endif
return(ret); return(ret);
} }
@@ -339,6 +525,12 @@ int BN_mod_exp_mont(BIGNUM *rr, BIGNUM *a, const BIGNUM *p,
bn_check_top(p); bn_check_top(p);
bn_check_top(m); bn_check_top(m);
#ifdef ATALLA
if(!tried_atalla && BN_mod_exp_atalla(rr,a,p,m))
return 1;
/* If it fails, try the other methods */
#endif
if (!(m->d[0] & 1)) if (!(m->d[0] & 1))
{ {
BNerr(BN_F_BN_MOD_EXP_MONT,BN_R_CALLED_WITH_EVEN_MODULUS); BNerr(BN_F_BN_MOD_EXP_MONT,BN_R_CALLED_WITH_EVEN_MODULUS);
@@ -501,6 +693,19 @@ int BN_mod_exp_mont_word(BIGNUM *rr, BN_ULONG a, const BIGNUM *p,
t = BN_CTX_get(ctx); t = BN_CTX_get(ctx);
if (d == NULL || r == NULL || t == NULL) goto err; if (d == NULL || r == NULL || t == NULL) goto err;
#ifdef ATALLA
if (!tried_atalla)
{
BN_set_word(t, a);
if (BN_mod_exp_atalla(rr, t, p, m))
{
BN_CTX_end(ctx);
return 1;
}
}
/* If it fails, try the other methods */
#endif
if (in_mont != NULL) if (in_mont != NULL)
mont=in_mont; mont=in_mont;
else else

View File

@@ -85,16 +85,7 @@ int BN_mod_mul_montgomery(BIGNUM *r, BIGNUM *a, BIGNUM *b,
if (a == b) if (a == b)
{ {
#if 1
bn_wexpand(tmp,a->top*2);
bn_wexpand(tmp2,a->top*4);
bn_sqr_recursive(tmp->d,a->d,a->top,tmp2->d);
tmp->top=a->top*2;
if (tmp->top > 0 && tmp->d[tmp->top-1] == 0)
tmp->top--;
#else
if (!BN_sqr(tmp,a,ctx)) goto err; if (!BN_sqr(tmp,a,ctx)) goto err;
#endif
} }
else else
{ {

View File

@@ -188,7 +188,7 @@ void bn_sqr_normal(BN_ULONG *r, BN_ULONG *a, int n, BN_ULONG *tmp)
#ifdef BN_RECURSION #ifdef BN_RECURSION
/* r is 2*n words in size, /* r is 2*n words in size,
* a and b are both n words in size. * a and b are both n words in size. (There's not actually a 'b' here ...)
* n must be a power of 2. * n must be a power of 2.
* We multiply and return the result. * We multiply and return the result.
* t must be 2*n words in size * t must be 2*n words in size

View File

@@ -39,7 +39,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:

View File

@@ -47,7 +47,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
# elf # elf

View File

@@ -42,7 +42,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:

View File

@@ -40,7 +40,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:

View File

@@ -90,10 +90,11 @@ struct conf_method_st
int (MS_FAR *init)(CONF *conf); int (MS_FAR *init)(CONF *conf);
int (MS_FAR *destroy)(CONF *conf); int (MS_FAR *destroy)(CONF *conf);
int (MS_FAR *destroy_data)(CONF *conf); int (MS_FAR *destroy_data)(CONF *conf);
int (MS_FAR *load)(CONF *conf, BIO *bp, long *eline); int (MS_FAR *load_bio)(CONF *conf, BIO *bp, long *eline);
int (MS_FAR *dump)(CONF *conf, BIO *bp); int (MS_FAR *dump)(CONF *conf, BIO *bp);
int (MS_FAR *is_number)(CONF *conf, char c); int (MS_FAR *is_number)(CONF *conf, char c);
int (MS_FAR *to_int)(CONF *conf, char c); int (MS_FAR *to_int)(CONF *conf, char c);
int (MS_FAR *load)(CONF *conf, const char *name, long *eline);
}; };
int CONF_set_default_method(CONF_METHOD *meth); int CONF_set_default_method(CONF_METHOD *meth);
@@ -136,10 +137,17 @@ int NCONF_load_fp(CONF *conf, FILE *fp,long *eline);
int NCONF_load_bio(CONF *conf, BIO *bp,long *eline); int NCONF_load_bio(CONF *conf, BIO *bp,long *eline);
STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section); STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section);
char *NCONF_get_string(CONF *conf,char *group,char *name); char *NCONF_get_string(CONF *conf,char *group,char *name);
long NCONF_get_number(CONF *conf,char *group,char *name); int NCONF_get_number_e(CONF *conf,char *group,char *name,long *result);
int NCONF_dump_fp(CONF *conf, FILE *out); int NCONF_dump_fp(CONF *conf, FILE *out);
int NCONF_dump_bio(CONF *conf, BIO *out); int NCONF_dump_bio(CONF *conf, BIO *out);
#if 0 /* The following function has no error checking,
and should therefore be avoided */
long NCONF_get_number(CONF *conf,char *group,char *name);
#else
#define NCONF_get_number(c,g,n,r) NCONF_get_number_e(c,g,n,r);
#endif
/* BEGIN ERROR CODES */ /* BEGIN ERROR CODES */
/* The following lines are auto generated by the script mkerr.pl. Any changes /* The following lines are auto generated by the script mkerr.pl. Any changes
@@ -156,9 +164,12 @@ int NCONF_dump_bio(CONF *conf, BIO *out);
#define CONF_F_NCONF_DUMP_BIO 105 #define CONF_F_NCONF_DUMP_BIO 105
#define CONF_F_NCONF_DUMP_FP 106 #define CONF_F_NCONF_DUMP_FP 106
#define CONF_F_NCONF_GET_NUMBER 107 #define CONF_F_NCONF_GET_NUMBER 107
#define CONF_F_NCONF_GET_NUMBER_E 112
#define CONF_F_NCONF_GET_SECTION 108 #define CONF_F_NCONF_GET_SECTION 108
#define CONF_F_NCONF_GET_STRING 109 #define CONF_F_NCONF_GET_STRING 109
#define CONF_F_NCONF_LOAD 113
#define CONF_F_NCONF_LOAD_BIO 110 #define CONF_F_NCONF_LOAD_BIO 110
#define CONF_F_NCONF_LOAD_FP 114
#define CONF_F_NCONF_NEW 111 #define CONF_F_NCONF_NEW 111
#define CONF_F_STR_COPY 101 #define CONF_F_STR_COPY 101
@@ -167,6 +178,9 @@ int NCONF_dump_bio(CONF *conf, BIO *out);
#define CONF_R_MISSING_EQUAL_SIGN 101 #define CONF_R_MISSING_EQUAL_SIGN 101
#define CONF_R_NO_CLOSE_BRACE 102 #define CONF_R_NO_CLOSE_BRACE 102
#define CONF_R_NO_CONF 105 #define CONF_R_NO_CONF 105
#define CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE 106
#define CONF_R_NO_SECTION 107
#define CONF_R_NO_VALUE 108
#define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103 #define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103
#define CONF_R_VARIABLE_HAS_NO_VALUE 104 #define CONF_R_VARIABLE_HAS_NO_VALUE 104

View File

@@ -153,6 +153,9 @@ char *_CONF_get_string(CONF *conf, char *section, char *name)
return(Getenv(name)); return(Getenv(name));
} }
#if 0 /* There's no way to provide error checking with this function, so
force implementors of the higher levels to get a string and read
the number themselves. */
long _CONF_get_number(CONF *conf, char *section, char *name) long _CONF_get_number(CONF *conf, char *section, char *name)
{ {
char *str; char *str;
@@ -169,6 +172,7 @@ long _CONF_get_number(CONF *conf, char *section, char *name)
str++; str++;
} }
} }
#endif
int _CONF_new_data(CONF *conf) int _CONF_new_data(CONF *conf)
{ {

View File

@@ -81,7 +81,8 @@ static int def_init_default(CONF *conf);
static int def_init_WIN32(CONF *conf); static int def_init_WIN32(CONF *conf);
static int def_destroy(CONF *conf); static int def_destroy(CONF *conf);
static int def_destroy_data(CONF *conf); static int def_destroy_data(CONF *conf);
static int def_load(CONF *conf, BIO *bp, long *eline); static int def_load(CONF *conf, const char *name, long *eline);
static int def_load_bio(CONF *conf, BIO *bp, long *eline);
static int def_dump(CONF *conf, BIO *bp); static int def_dump(CONF *conf, BIO *bp);
static int def_is_number(CONF *conf, char c); static int def_is_number(CONF *conf, char c);
static int def_to_int(CONF *conf, char c); static int def_to_int(CONF *conf, char c);
@@ -94,10 +95,11 @@ static CONF_METHOD default_method = {
def_init_default, def_init_default,
def_destroy, def_destroy,
def_destroy_data, def_destroy_data,
def_load, def_load_bio,
def_dump, def_dump,
def_is_number, def_is_number,
def_to_int def_to_int,
def_load
}; };
static CONF_METHOD WIN32_method = { static CONF_METHOD WIN32_method = {
@@ -106,10 +108,11 @@ static CONF_METHOD WIN32_method = {
def_init_WIN32, def_init_WIN32,
def_destroy, def_destroy,
def_destroy_data, def_destroy_data,
def_load, def_load_bio,
def_dump, def_dump,
def_is_number, def_is_number,
def_to_int def_to_int,
def_load
}; };
CONF_METHOD *NCONF_default() CONF_METHOD *NCONF_default()
@@ -177,7 +180,29 @@ static int def_destroy_data(CONF *conf)
return 1; return 1;
} }
static int def_load(CONF *conf, BIO *in, long *line) static int def_load(CONF *conf, const char *name, long *line)
{
int ret;
BIO *in=NULL;
#ifdef VMS
in=BIO_new_file(name, "r");
#else
in=BIO_new_file(name, "rb");
#endif
if (in == NULL)
{
CONFerr(CONF_F_CONF_LOAD,ERR_R_SYS_LIB);
return 0;
}
ret = def_load_bio(conf, in, line);
BIO_free(in);
return ret;
}
static int def_load_bio(CONF *conf, BIO *in, long *line)
{ {
#define BUFSIZE 512 #define BUFSIZE 512
char btmp[16]; char btmp[16];

View File

@@ -73,9 +73,12 @@ static ERR_STRING_DATA CONF_str_functs[]=
{ERR_PACK(0,CONF_F_NCONF_DUMP_BIO,0), "NCONF_dump_bio"}, {ERR_PACK(0,CONF_F_NCONF_DUMP_BIO,0), "NCONF_dump_bio"},
{ERR_PACK(0,CONF_F_NCONF_DUMP_FP,0), "NCONF_dump_fp"}, {ERR_PACK(0,CONF_F_NCONF_DUMP_FP,0), "NCONF_dump_fp"},
{ERR_PACK(0,CONF_F_NCONF_GET_NUMBER,0), "NCONF_get_number"}, {ERR_PACK(0,CONF_F_NCONF_GET_NUMBER,0), "NCONF_get_number"},
{ERR_PACK(0,CONF_F_NCONF_GET_NUMBER_E,0), "NCONF_get_number_e"},
{ERR_PACK(0,CONF_F_NCONF_GET_SECTION,0), "NCONF_get_section"}, {ERR_PACK(0,CONF_F_NCONF_GET_SECTION,0), "NCONF_get_section"},
{ERR_PACK(0,CONF_F_NCONF_GET_STRING,0), "NCONF_get_string"}, {ERR_PACK(0,CONF_F_NCONF_GET_STRING,0), "NCONF_get_string"},
{ERR_PACK(0,CONF_F_NCONF_LOAD,0), "NCONF_load"},
{ERR_PACK(0,CONF_F_NCONF_LOAD_BIO,0), "NCONF_load_bio"}, {ERR_PACK(0,CONF_F_NCONF_LOAD_BIO,0), "NCONF_load_bio"},
{ERR_PACK(0,CONF_F_NCONF_LOAD_FP,0), "NCONF_load_fp"},
{ERR_PACK(0,CONF_F_NCONF_NEW,0), "NCONF_new"}, {ERR_PACK(0,CONF_F_NCONF_NEW,0), "NCONF_new"},
{ERR_PACK(0,CONF_F_STR_COPY,0), "STR_COPY"}, {ERR_PACK(0,CONF_F_STR_COPY,0), "STR_COPY"},
{0,NULL} {0,NULL}
@@ -87,6 +90,9 @@ static ERR_STRING_DATA CONF_str_reasons[]=
{CONF_R_MISSING_EQUAL_SIGN ,"missing equal sign"}, {CONF_R_MISSING_EQUAL_SIGN ,"missing equal sign"},
{CONF_R_NO_CLOSE_BRACE ,"no close brace"}, {CONF_R_NO_CLOSE_BRACE ,"no close brace"},
{CONF_R_NO_CONF ,"no conf"}, {CONF_R_NO_CONF ,"no conf"},
{CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE ,"no conf or environment variable"},
{CONF_R_NO_SECTION ,"no section"},
{CONF_R_NO_VALUE ,"no value"},
{CONF_R_UNABLE_TO_CREATE_NEW_SECTION ,"unable to create new section"}, {CONF_R_UNABLE_TO_CREATE_NEW_SECTION ,"unable to create new section"},
{CONF_R_VARIABLE_HAS_NO_VALUE ,"variable has no value"}, {CONF_R_VARIABLE_HAS_NO_VALUE ,"variable has no value"},
{0,NULL} {0,NULL}

View File

@@ -156,13 +156,21 @@ char *CONF_get_string(LHASH *conf,char *group,char *name)
long CONF_get_number(LHASH *conf,char *group,char *name) long CONF_get_number(LHASH *conf,char *group,char *name)
{ {
CONF ctmp; CONF ctmp;
int status;
long result = 0;
if (default_CONF_method == NULL) if (default_CONF_method == NULL)
default_CONF_method = NCONF_default(); default_CONF_method = NCONF_default();
default_CONF_method->init(&ctmp); default_CONF_method->init(&ctmp);
ctmp.data = conf; ctmp.data = conf;
return NCONF_get_number(&ctmp, group, name); status = NCONF_get_number_e(&ctmp, group, name, &result);
if (status == 0)
{
/* This function does not believe in errors... */
ERR_get_error();
}
return result;
} }
void CONF_free(LHASH *conf) void CONF_free(LHASH *conf)
@@ -244,24 +252,13 @@ void NCONF_free_data(CONF *conf)
int NCONF_load(CONF *conf, const char *file, long *eline) int NCONF_load(CONF *conf, const char *file, long *eline)
{ {
int ret; if (conf == NULL)
BIO *in=NULL;
#ifdef VMS
in=BIO_new_file(file, "r");
#else
in=BIO_new_file(file, "rb");
#endif
if (in == NULL)
{ {
CONFerr(CONF_F_CONF_LOAD,ERR_R_SYS_LIB); CONFerr(CONF_F_NCONF_LOAD,CONF_R_NO_CONF);
return 0; return 0;
} }
ret = NCONF_load_bio(conf, in, eline); return conf->meth->load(conf, file, eline);
BIO_free(in);
return ret;
} }
#ifndef NO_FP_API #ifndef NO_FP_API
@@ -271,7 +268,7 @@ int NCONF_load_fp(CONF *conf, FILE *fp,long *eline)
int ret; int ret;
if(!(btmp = BIO_new_fp(fp, BIO_NOCLOSE))) if(!(btmp = BIO_new_fp(fp, BIO_NOCLOSE)))
{ {
CONFerr(CONF_F_CONF_LOAD_FP,ERR_R_BUF_LIB); CONFerr(CONF_F_NCONF_LOAD_FP,ERR_R_BUF_LIB);
return 0; return 0;
} }
ret = NCONF_load_bio(conf, btmp, eline); ret = NCONF_load_bio(conf, btmp, eline);
@@ -288,7 +285,7 @@ int NCONF_load_bio(CONF *conf, BIO *bp,long *eline)
return 0; return 0;
} }
return conf->meth->load(conf, bp, eline); return conf->meth->load_bio(conf, bp, eline);
} }
STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section) STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section)
@@ -299,29 +296,56 @@ STACK_OF(CONF_VALUE) *NCONF_get_section(CONF *conf,char *section)
return NULL; return NULL;
} }
if (section == NULL)
{
CONFerr(CONF_F_NCONF_GET_SECTION,CONF_R_NO_SECTION);
return NULL;
}
return _CONF_get_section_values(conf, section); return _CONF_get_section_values(conf, section);
} }
char *NCONF_get_string(CONF *conf,char *group,char *name) char *NCONF_get_string(CONF *conf,char *group,char *name)
{ {
char *s = _CONF_get_string(conf, group, name);
/* Since we may get a value from an environment variable even
if conf is NULL, let's check the value first */
if (s) return s;
if (conf == NULL) if (conf == NULL)
{ {
CONFerr(CONF_F_NCONF_GET_STRING,CONF_R_NO_CONF); CONFerr(CONF_F_NCONF_GET_STRING,
CONF_R_NO_CONF_OR_ENVIRONMENT_VARIABLE);
return NULL;
}
CONFerr(CONF_F_NCONF_GET_STRING,
CONF_R_NO_VALUE);
return NULL; return NULL;
} }
return _CONF_get_string(conf, group, name); int NCONF_get_number_e(CONF *conf,char *group,char *name,long *result)
} {
char *str;
long NCONF_get_number(CONF *conf,char *group,char *name) if (result == NULL)
{ {
if (conf == NULL) CONFerr(CONF_F_NCONF_GET_NUMBER_E,ERR_R_PASSED_NULL_PARAMETER);
{
CONFerr(CONF_F_NCONF_GET_NUMBER,CONF_R_NO_CONF);
return 0; return 0;
} }
return _CONF_get_number(conf, group, name); str = NCONF_get_string(conf,group,name);
if (str == NULL)
return 0;
for (;conf->meth->is_number(conf, *str);)
{
*result = (*result)*10 + conf->meth->to_int(conf, *str);
str++;
}
return 1;
} }
#ifndef NO_FP_API #ifndef NO_FP_API
@@ -350,3 +374,19 @@ int NCONF_dump_bio(CONF *conf, BIO *out)
return conf->meth->dump(conf, out); return conf->meth->dump(conf, out);
} }
/* This function should be avoided */
#undef NCONF_get_number
long NCONF_get_number(CONF *conf,char *group,char *name)
{
int status;
long ret=0;
status = NCONF_get_number_e(conf, group, name, &ret);
if (status == 0)
{
/* This function does not believe in errors... */
ERR_get_error();
}
return ret;
}

View File

@@ -100,8 +100,7 @@ static const char* lock_names[CRYPTO_NUM_LOCKS] =
"debug_malloc2", "debug_malloc2",
"dso", "dso",
"dynlock", "dynlock",
"engine", #if CRYPTO_NUM_LOCKS != 28
#if CRYPTO_NUM_LOCKS != 29
# error "Inconsistency between crypto.h and cryptlib.c" # error "Inconsistency between crypto.h and cryptlib.c"
#endif #endif
}; };

View File

@@ -88,7 +88,7 @@ $! Define The Different Encryption Types.
$! $!
$ ENCRYPT_TYPES = "Basic,MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,"+ - $ ENCRYPT_TYPES = "Basic,MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,"+ -
"DES,RC2,RC4,RC5,IDEA,BF,CAST,"+ - "DES,RC2,RC4,RC5,IDEA,BF,CAST,"+ -
"BN,RSA,DSA,DH,DSO,ENGINE,"+ - "BN,RSA,DSA,DH,DSO,"+ -
"BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,"+ - "BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,"+ -
"EVP,EVP_2,ASN1,ASN1_2,PEM,X509,X509V3,"+ - "EVP,EVP_2,ASN1,ASN1_2,PEM,X509,X509V3,"+ -
"CONF,TXT_DB,PKCS7,PKCS12,COMP" "CONF,TXT_DB,PKCS7,PKCS12,COMP"
@@ -206,14 +206,13 @@ $ LIB_DSA = "dsa_gen,dsa_key,dsa_lib,dsa_asn1,dsa_vrf,dsa_sign,dsa_err,dsa_ossl"
$ LIB_DH = "dh_gen,dh_key,dh_lib,dh_check,dh_err" $ LIB_DH = "dh_gen,dh_key,dh_lib,dh_check,dh_err"
$ LIB_DSO = "dso_dl,dso_dlfcn,dso_err,dso_lib,dso_null,"+ - $ LIB_DSO = "dso_dl,dso_dlfcn,dso_err,dso_lib,dso_null,"+ -
"dso_openssl,dso_win32,dso_vms" "dso_openssl,dso_win32,dso_vms"
$ LIB_ENGINE = "engine_err,engine_lib,engine_list,engine_openssl,"+ -
"hw_atalla,hw_cswift,hw_ncipher"
$ LIB_BUFFER = "buffer,buf_err" $ LIB_BUFFER = "buffer,buf_err"
$ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ - $ LIB_BIO = "bio_lib,bio_cb,bio_err,"+ -
"bss_mem,bss_null,bss_fd,"+ - "bss_mem,bss_null,bss_fd,"+ -
"bss_file,bss_sock,bss_conn,"+ - "bss_file,bss_sock,bss_conn,"+ -
"bf_null,bf_buff,b_print,b_dump,"+ - "bf_null,bf_buff,b_print,b_dump,"+ -
"b_sock,bss_acpt,bf_nbio,bss_rtcp,bss_bio,bss_log" "b_sock,bss_acpt,bf_nbio,bss_rtcp,bss_bio,bss_log,"+ -
"bf_lbuf"
$ LIB_STACK = "stack" $ LIB_STACK = "stack"
$ LIB_LHASH = "lhash,lh_stats" $ LIB_LHASH = "lhash,lh_stats"
$ LIB_RAND = "md_rand,randfile,rand_lib,rand_err,rand_egd,rand_win" $ LIB_RAND = "md_rand,randfile,rand_lib,rand_err,rand_egd,rand_win"
@@ -1195,9 +1194,7 @@ $ CC = "CC"
$ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" - $ IF ARCH.EQS."VAX" .AND. F$TRNLNM("DECC$CC_DEFAULT").NES."/DECC" -
THEN CC = "CC/DECC" THEN CC = "CC/DECC"
$ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/STANDARD=ANSI89" + - $ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/STANDARD=ANSI89" + -
"/NOLIST/PREFIX=ALL" + - "/NOLIST/PREFIX=ALL/INCLUDE=SYS$DISK:[]" + CCEXTRAFLAGS
"/INCLUDE=(SYS$DISK:[],SYS$DISK:[.ENGINE.VENDOR_DEFNS])" + -
CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
$! $!
@@ -1229,8 +1226,7 @@ $ WRITE SYS$OUTPUT "There is no VAX C on Alpha!"
$ EXIT $ EXIT
$ ENDIF $ ENDIF
$ IF F$TRNLNM("DECC$CC_DEFAULT").EQS."/DECC" THEN CC = "CC/VAXC" $ IF F$TRNLNM("DECC$CC_DEFAULT").EQS."/DECC" THEN CC = "CC/VAXC"
$ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/NOLIST" + - $ CC = CC + "/''CC_OPTIMIZE'/''DEBUGGER'/NOLIST/INCLUDE=SYS$DISK:[]" + -
"/INCLUDE=(SYS$DISK:[],SYS$DISK:[.ENGINE.VENDOR_DEFNS])" + -
CCEXTRAFLAGS CCEXTRAFLAGS
$ CCDEFS = """VAXC""," + CCDEFS $ CCDEFS = """VAXC""," + CCDEFS
$! $!
@@ -1262,8 +1258,7 @@ $!
$! Use GNU C... $! Use GNU C...
$! $!
$ CC = "GCC/NOCASE_HACK/''GCC_OPTIMIZE'/''DEBUGGER'/NOLIST" + - $ CC = "GCC/NOCASE_HACK/''GCC_OPTIMIZE'/''DEBUGGER'/NOLIST" + -
"/INCLUDE=(SYS$DISK:[],SYS$DISK:[.ENGINE.VENDOR_DEFNS])" + - "/INCLUDE=SYS$DISK:[]" + CCEXTRAFLAGS
CCEXTRAFLAGS
$! $!
$! Define The Linker Options File Name. $! Define The Linker Options File Name.
$! $!

View File

@@ -122,8 +122,7 @@ extern "C" {
#define CRYPTO_LOCK_MALLOC2 25 #define CRYPTO_LOCK_MALLOC2 25
#define CRYPTO_LOCK_DSO 26 #define CRYPTO_LOCK_DSO 26
#define CRYPTO_LOCK_DYNLOCK 27 #define CRYPTO_LOCK_DYNLOCK 27
#define CRYPTO_LOCK_ENGINE 28 #define CRYPTO_NUM_LOCKS 28
#define CRYPTO_NUM_LOCKS 29
#define CRYPTO_LOCK 1 #define CRYPTO_LOCK 1
#define CRYPTO_UNLOCK 2 #define CRYPTO_UNLOCK 2

View File

@@ -57,7 +57,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
des: des.o cbc3_enc.o lib des: des.o cbc3_enc.o lib

View File

@@ -271,7 +271,9 @@ int des_read_pw(char *buf, char *buff, int size, const char *prompt,
#elif defined(MAC_OS_pre_X) #elif defined(MAC_OS_pre_X)
tty=stdin; tty=stdin;
#else #else
#ifndef MPE
if ((tty=fopen("/dev/tty","r")) == NULL) if ((tty=fopen("/dev/tty","r")) == NULL)
#endif
tty=stdin; tty=stdin;
#endif #endif
@@ -312,8 +314,12 @@ int des_read_pw(char *buf, char *buff, int size, const char *prompt,
#if defined(TTY_set) && !defined(VMS) #if defined(TTY_set) && !defined(VMS)
if (is_a_tty && (TTY_set(fileno(tty),&tty_new) == -1)) if (is_a_tty && (TTY_set(fileno(tty),&tty_new) == -1))
#ifdef MPE
; /* MPE lies -- echo really has been disabled */
#else
return(-1); return(-1);
#endif #endif
#endif
#ifdef VMS #ifdef VMS
tty_new[0] = tty_orig[0]; tty_new[0] = tty_orig[0];
tty_new[1] = tty_orig[1] | TT$M_NOECHO; tty_new[1] = tty_orig[1] | TT$M_NOECHO;

View File

@@ -39,7 +39,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:
@@ -100,39 +101,19 @@ dh_gen.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dh_gen.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h dh_gen.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
dh_gen.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h dh_gen.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
dh_gen.o: ../cryptlib.h dh_gen.o: ../cryptlib.h
dh_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h dh_key.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
dh_key.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h dh_key.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
dh_key.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h dh_key.o: ../../include/openssl/dh.h ../../include/openssl/e_os.h
dh_key.o: ../../include/openssl/crypto.h ../../include/openssl/des.h dh_key.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
dh_key.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h dh_key.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dh_key.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
dh_key.o: ../../include/openssl/engine.h ../../include/openssl/err.h
dh_key.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
dh_key.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
dh_key.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
dh_key.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
dh_key.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
dh_key.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h dh_key.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
dh_key.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h dh_key.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
dh_key.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
dh_key.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
dh_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dh_key.o: ../../include/openssl/symhacks.h ../cryptlib.h dh_key.o: ../../include/openssl/symhacks.h ../cryptlib.h
dh_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h dh_lib.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
dh_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h dh_lib.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
dh_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h dh_lib.o: ../../include/openssl/dh.h ../../include/openssl/e_os.h
dh_lib.o: ../../include/openssl/crypto.h ../../include/openssl/des.h dh_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
dh_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h dh_lib.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dh_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h dh_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
dh_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h dh_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
dh_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h dh_lib.o: ../cryptlib.h
dh_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
dh_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
dh_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
dh_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
dh_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
dh_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
dh_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
dh_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
dh_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dh_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h

View File

@@ -115,11 +115,7 @@ struct dh_st
int references; int references;
CRYPTO_EX_DATA ex_data; CRYPTO_EX_DATA ex_data;
#if 0
DH_METHOD *meth; DH_METHOD *meth;
#else
struct engine_st *engine;
#endif
}; };
#define DH_GENERATOR_2 2 #define DH_GENERATOR_2 2
@@ -154,15 +150,10 @@ struct dh_st
DH_METHOD *DH_OpenSSL(void); DH_METHOD *DH_OpenSSL(void);
void DH_set_default_openssl_method(DH_METHOD *meth); void DH_set_default_method(DH_METHOD *meth);
DH_METHOD *DH_get_default_openssl_method(void); DH_METHOD *DH_get_default_method(void);
#if 0
DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth); DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth);
DH *DH_new_method(DH_METHOD *meth); DH *DH_new_method(DH_METHOD *meth);
#else
int DH_set_method(DH *dh, struct engine_st *engine);
DH *DH_new_method(struct engine_st *engine);
#endif
DH * DH_new(void); DH * DH_new(void);
void DH_free(DH *dh); void DH_free(DH *dh);

View File

@@ -61,7 +61,6 @@
#include <openssl/bn.h> #include <openssl/bn.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/dh.h> #include <openssl/dh.h>
#include <openssl/engine.h>
static int generate_key(DH *dh); static int generate_key(DH *dh);
static int compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh); static int compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh);
@@ -73,12 +72,12 @@ static int dh_finish(DH *dh);
int DH_generate_key(DH *dh) int DH_generate_key(DH *dh)
{ {
return ENGINE_get_DH(dh->engine)->generate_key(dh); return dh->meth->generate_key(dh);
} }
int DH_compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh) int DH_compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh)
{ {
return ENGINE_get_DH(dh->engine)->compute_key(key, pub_key, dh); return dh->meth->compute_key(key, pub_key, dh);
} }
static DH_METHOD dh_ossl = { static DH_METHOD dh_ossl = {
@@ -138,8 +137,7 @@ static int generate_key(DH *dh)
} }
mont=(BN_MONT_CTX *)dh->method_mont_p; mont=(BN_MONT_CTX *)dh->method_mont_p;
if (!ENGINE_get_DH(dh->engine)->bn_mod_exp(dh, pub_key, dh->g, if (!dh->meth->bn_mod_exp(dh, pub_key,dh->g,priv_key,dh->p,&ctx,mont))
priv_key,dh->p,&ctx,mont))
goto err; goto err;
dh->pub_key=pub_key; dh->pub_key=pub_key;
@@ -179,8 +177,7 @@ static int compute_key(unsigned char *key, BIGNUM *pub_key, DH *dh)
} }
mont=(BN_MONT_CTX *)dh->method_mont_p; mont=(BN_MONT_CTX *)dh->method_mont_p;
if (!ENGINE_get_DH(dh->engine)->bn_mod_exp(dh, tmp, pub_key, if (!dh->meth->bn_mod_exp(dh, tmp,pub_key,dh->priv_key,dh->p,&ctx,mont))
dh->priv_key,dh->p,&ctx,mont))
{ {
DHerr(DH_F_DH_COMPUTE_KEY,ERR_R_BN_LIB); DHerr(DH_F_DH_COMPUTE_KEY,ERR_R_BN_LIB);
goto err; goto err;

View File

@@ -60,7 +60,6 @@
#include "cryptlib.h" #include "cryptlib.h"
#include <openssl/bn.h> #include <openssl/bn.h>
#include <openssl/dh.h> #include <openssl/dh.h>
#include <openssl/engine.h>
const char *DH_version="Diffie-Hellman" OPENSSL_VERSION_PTEXT; const char *DH_version="Diffie-Hellman" OPENSSL_VERSION_PTEXT;
@@ -68,32 +67,17 @@ static DH_METHOD *default_DH_method;
static int dh_meth_num = 0; static int dh_meth_num = 0;
static STACK_OF(CRYPTO_EX_DATA_FUNCS) *dh_meth = NULL; static STACK_OF(CRYPTO_EX_DATA_FUNCS) *dh_meth = NULL;
void DH_set_default_openssl_method(DH_METHOD *meth) void DH_set_default_method(DH_METHOD *meth)
{ {
ENGINE *e;
/* We'll need to notify the "openssl" ENGINE of this
* change too. We won't bother locking things down at
* our end as there was never any locking in these
* functions! */
if(default_DH_method != meth)
{
default_DH_method = meth; default_DH_method = meth;
e = ENGINE_by_id("openssl");
if(e)
{
ENGINE_set_DH(e, meth);
ENGINE_free(e);
}
}
} }
DH_METHOD *DH_get_default_openssl_method(void) DH_METHOD *DH_get_default_method(void)
{ {
if(!default_DH_method) default_DH_method = DH_OpenSSL(); if(!default_DH_method) default_DH_method = DH_OpenSSL();
return default_DH_method; return default_DH_method;
} }
#if 0
DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth) DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth)
{ {
DH_METHOD *mtmp; DH_METHOD *mtmp;
@@ -103,37 +87,14 @@ DH_METHOD *DH_set_method(DH *dh, DH_METHOD *meth)
if (meth->init) meth->init(dh); if (meth->init) meth->init(dh);
return mtmp; return mtmp;
} }
#else
int DH_set_method(DH *dh, ENGINE *engine)
{
ENGINE *mtmp;
DH_METHOD *meth;
mtmp = dh->engine;
meth = ENGINE_get_DH(mtmp);
if (!ENGINE_init(engine))
return 0;
if (meth->finish) meth->finish(dh);
dh->engine= engine;
meth = ENGINE_get_DH(engine);
if (meth->init) meth->init(dh);
/* SHOULD ERROR CHECK THIS!!! */
ENGINE_finish(mtmp);
return 1;
}
#endif
DH *DH_new(void) DH *DH_new(void)
{ {
return DH_new_method(NULL); return DH_new_method(NULL);
} }
#if 0
DH *DH_new_method(DH_METHOD *meth) DH *DH_new_method(DH_METHOD *meth)
#else
DH *DH_new_method(ENGINE *engine)
#endif
{ {
DH_METHOD *meth;
DH *ret; DH *ret;
ret=(DH *)OPENSSL_malloc(sizeof(DH)); ret=(DH *)OPENSSL_malloc(sizeof(DH));
@@ -142,17 +103,8 @@ DH *DH_new_method(ENGINE *engine)
DHerr(DH_F_DH_NEW,ERR_R_MALLOC_FAILURE); DHerr(DH_F_DH_NEW,ERR_R_MALLOC_FAILURE);
return(NULL); return(NULL);
} }
if(engine) if(meth) ret->meth = meth;
ret->engine = engine; else ret->meth = DH_get_default_method();
else
{
if((ret->engine=ENGINE_get_default_DH()) == NULL)
{
OPENSSL_free(ret);
return NULL;
}
}
meth = ENGINE_get_DH(ret->engine);
ret->pad=0; ret->pad=0;
ret->version=0; ret->version=0;
ret->p=NULL; ret->p=NULL;
@@ -167,8 +119,8 @@ DH *DH_new_method(ENGINE *engine)
ret->counter = NULL; ret->counter = NULL;
ret->method_mont_p=NULL; ret->method_mont_p=NULL;
ret->references = 1; ret->references = 1;
ret->flags=meth->flags; ret->flags=ret->meth->flags;
if ((meth->init != NULL) && !meth->init(ret)) if ((ret->meth->init != NULL) && !ret->meth->init(ret))
{ {
OPENSSL_free(ret); OPENSSL_free(ret);
ret=NULL; ret=NULL;
@@ -180,7 +132,6 @@ DH *DH_new_method(ENGINE *engine)
void DH_free(DH *r) void DH_free(DH *r)
{ {
DH_METHOD *meth;
int i; int i;
if(r == NULL) return; if(r == NULL) return;
i = CRYPTO_add(&r->references, -1, CRYPTO_LOCK_DH); i = CRYPTO_add(&r->references, -1, CRYPTO_LOCK_DH);
@@ -198,9 +149,7 @@ void DH_free(DH *r)
CRYPTO_free_ex_data(dh_meth, r, &r->ex_data); CRYPTO_free_ex_data(dh_meth, r, &r->ex_data);
meth = ENGINE_get_DH(r->engine); if(r->meth->finish) r->meth->finish(r);
if(meth->finish) meth->finish(r);
ENGINE_finish(r->engine);
if (r->p != NULL) BN_clear_free(r->p); if (r->p != NULL) BN_clear_free(r->p);
if (r->g != NULL) BN_clear_free(r->g); if (r->g != NULL) BN_clear_free(r->g);

View File

@@ -41,7 +41,8 @@ all: lib
lib: $(LIBOBJ) lib: $(LIBOBJ)
$(AR) $(LIB) $(LIBOBJ) $(AR) $(LIB) $(LIBOBJ)
$(RANLIB) $(LIB) @echo You may get an error following this line. Please ignore.
- $(RANLIB) $(LIB)
@touch lib @touch lib
files: files:
@@ -115,75 +116,39 @@ dsa_key.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
dsa_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h dsa_key.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dsa_key.o: ../../include/openssl/symhacks.h ../cryptlib.h dsa_key.o: ../../include/openssl/symhacks.h ../cryptlib.h
dsa_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h dsa_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
dsa_lib.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h dsa_lib.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
dsa_lib.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h dsa_lib.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h
dsa_lib.o: ../../include/openssl/crypto.h ../../include/openssl/des.h dsa_lib.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
dsa_lib.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h dsa_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
dsa_lib.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h dsa_lib.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dsa_lib.o: ../../include/openssl/engine.h ../../include/openssl/err.h dsa_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/safestack.h
dsa_lib.o: ../../include/openssl/evp.h ../../include/openssl/idea.h dsa_lib.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
dsa_lib.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h dsa_lib.o: ../cryptlib.h
dsa_lib.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
dsa_lib.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
dsa_lib.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
dsa_lib.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
dsa_lib.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h
dsa_lib.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
dsa_lib.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
dsa_lib.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dsa_lib.o: ../../include/openssl/symhacks.h ../cryptlib.h
dsa_ossl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h dsa_ossl.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
dsa_ossl.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h dsa_ossl.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
dsa_ossl.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h dsa_ossl.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h
dsa_ossl.o: ../../include/openssl/crypto.h ../../include/openssl/des.h dsa_ossl.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
dsa_ossl.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h dsa_ossl.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
dsa_ossl.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h dsa_ossl.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dsa_ossl.o: ../../include/openssl/engine.h ../../include/openssl/err.h
dsa_ossl.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
dsa_ossl.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
dsa_ossl.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
dsa_ossl.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
dsa_ossl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
dsa_ossl.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h dsa_ossl.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
dsa_ossl.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h dsa_ossl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
dsa_ossl.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
dsa_ossl.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
dsa_ossl.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dsa_ossl.o: ../../include/openssl/symhacks.h ../cryptlib.h dsa_ossl.o: ../../include/openssl/symhacks.h ../cryptlib.h
dsa_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h dsa_sign.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
dsa_sign.o: ../../include/openssl/blowfish.h ../../include/openssl/bn.h dsa_sign.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
dsa_sign.o: ../../include/openssl/buffer.h ../../include/openssl/cast.h dsa_sign.o: ../../include/openssl/crypto.h ../../include/openssl/dh.h
dsa_sign.o: ../../include/openssl/crypto.h ../../include/openssl/des.h dsa_sign.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h
dsa_sign.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h dsa_sign.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
dsa_sign.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h dsa_sign.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
dsa_sign.o: ../../include/openssl/engine.h ../../include/openssl/err.h
dsa_sign.o: ../../include/openssl/evp.h ../../include/openssl/idea.h
dsa_sign.o: ../../include/openssl/lhash.h ../../include/openssl/md2.h
dsa_sign.o: ../../include/openssl/md4.h ../../include/openssl/md5.h
dsa_sign.o: ../../include/openssl/mdc2.h ../../include/openssl/obj_mac.h
dsa_sign.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
dsa_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h dsa_sign.o: ../../include/openssl/opensslv.h ../../include/openssl/rand.h
dsa_sign.o: ../../include/openssl/rc2.h ../../include/openssl/rc4.h dsa_sign.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
dsa_sign.o: ../../include/openssl/rc5.h ../../include/openssl/ripemd.h
dsa_sign.o: ../../include/openssl/rsa.h ../../include/openssl/safestack.h
dsa_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
dsa_sign.o: ../../include/openssl/symhacks.h ../cryptlib.h dsa_sign.o: ../../include/openssl/symhacks.h ../cryptlib.h
dsa_vrf.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h dsa_vrf.o: ../../include/openssl/asn1.h ../../include/openssl/asn1_mac.h
dsa_vrf.o: ../../include/openssl/bio.h ../../include/openssl/blowfish.h dsa_vrf.o: ../../include/openssl/bio.h ../../include/openssl/bn.h
dsa_vrf.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h dsa_vrf.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
dsa_vrf.o: ../../include/openssl/cast.h ../../include/openssl/crypto.h dsa_vrf.o: ../../include/openssl/dh.h ../../include/openssl/dsa.h
dsa_vrf.o: ../../include/openssl/des.h ../../include/openssl/dh.h dsa_vrf.o: ../../include/openssl/e_os.h ../../include/openssl/e_os2.h
dsa_vrf.o: ../../include/openssl/dsa.h ../../include/openssl/e_os.h dsa_vrf.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
dsa_vrf.o: ../../include/openssl/e_os2.h ../../include/openssl/engine.h
dsa_vrf.o: ../../include/openssl/err.h ../../include/openssl/evp.h
dsa_vrf.o: ../../include/openssl/idea.h ../../include/openssl/lhash.h
dsa_vrf.o: ../../include/openssl/md2.h ../../include/openssl/md4.h
dsa_vrf.o: ../../include/openssl/md5.h ../../include/openssl/mdc2.h
dsa_vrf.o: ../../include/openssl/obj_mac.h ../../include/openssl/objects.h
dsa_vrf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h dsa_vrf.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
dsa_vrf.o: ../../include/openssl/rand.h ../../include/openssl/rc2.h dsa_vrf.o: ../../include/openssl/rand.h ../../include/openssl/safestack.h
dsa_vrf.o: ../../include/openssl/rc4.h ../../include/openssl/rc5.h
dsa_vrf.o: ../../include/openssl/ripemd.h ../../include/openssl/rsa.h
dsa_vrf.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
dsa_vrf.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h dsa_vrf.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
dsa_vrf.o: ../cryptlib.h dsa_vrf.o: ../cryptlib.h

View File

@@ -133,11 +133,7 @@ struct dsa_st
char *method_mont_p; char *method_mont_p;
int references; int references;
CRYPTO_EX_DATA ex_data; CRYPTO_EX_DATA ex_data;
#if 0
DSA_METHOD *meth; DSA_METHOD *meth;
#else
struct engine_st *engine;
#endif
}; };
#define DSAparams_dup(x) (DSA *)ASN1_dup((int (*)())i2d_DSAparams, \ #define DSAparams_dup(x) (DSA *)ASN1_dup((int (*)())i2d_DSAparams, \
@@ -163,20 +159,12 @@ int DSA_do_verify(const unsigned char *dgst,int dgst_len,
DSA_METHOD *DSA_OpenSSL(void); DSA_METHOD *DSA_OpenSSL(void);
void DSA_set_default_openssl_method(DSA_METHOD *); void DSA_set_default_method(DSA_METHOD *);
DSA_METHOD *DSA_get_default_openssl_method(void); DSA_METHOD *DSA_get_default_method(void);
#if 0
DSA_METHOD *DSA_set_method(DSA *dsa, DSA_METHOD *); DSA_METHOD *DSA_set_method(DSA *dsa, DSA_METHOD *);
#else
int DSA_set_method(DSA *dsa, struct engine_st *engine);
#endif
DSA * DSA_new(void); DSA * DSA_new(void);
#if 0
DSA * DSA_new_method(DSA_METHOD *meth); DSA * DSA_new_method(DSA_METHOD *meth);
#else
DSA * DSA_new_method(struct engine_st *engine);
#endif
int DSA_size(DSA *); int DSA_size(DSA *);
/* next 4 return -1 on error */ /* next 4 return -1 on error */
int DSA_sign_setup( DSA *dsa,BN_CTX *ctx_in,BIGNUM **kinvp,BIGNUM **rp); int DSA_sign_setup( DSA *dsa,BN_CTX *ctx_in,BIGNUM **kinvp,BIGNUM **rp);

View File

@@ -63,7 +63,6 @@
#include <openssl/bn.h> #include <openssl/bn.h>
#include <openssl/dsa.h> #include <openssl/dsa.h>
#include <openssl/asn1.h> #include <openssl/asn1.h>
#include <openssl/engine.h>
const char *DSA_version="DSA" OPENSSL_VERSION_PTEXT; const char *DSA_version="DSA" OPENSSL_VERSION_PTEXT;
@@ -71,26 +70,12 @@ static DSA_METHOD *default_DSA_method;
static int dsa_meth_num = 0; static int dsa_meth_num = 0;
static STACK_OF(CRYPTO_EX_DATA_FUNCS) *dsa_meth = NULL; static STACK_OF(CRYPTO_EX_DATA_FUNCS) *dsa_meth = NULL;
void DSA_set_default_openssl_method(DSA_METHOD *meth) void DSA_set_default_method(DSA_METHOD *meth)
{ {
ENGINE *e;
/* We'll need to notify the "openssl" ENGINE of this
* change too. We won't bother locking things down at
* our end as there was never any locking in these
* functions! */
if(default_DSA_method != meth)
{
default_DSA_method = meth; default_DSA_method = meth;
e = ENGINE_by_id("openssl");
if(e)
{
ENGINE_set_DSA(e, meth);
ENGINE_free(e);
}
}
} }
DSA_METHOD *DSA_get_default_openssl_method(void) DSA_METHOD *DSA_get_default_method(void)
{ {
if(!default_DSA_method) default_DSA_method = DSA_OpenSSL(); if(!default_DSA_method) default_DSA_method = DSA_OpenSSL();
return default_DSA_method; return default_DSA_method;
@@ -101,7 +86,6 @@ DSA *DSA_new(void)
return DSA_new_method(NULL); return DSA_new_method(NULL);
} }
#if 0
DSA_METHOD *DSA_set_method(DSA *dsa, DSA_METHOD *meth) DSA_METHOD *DSA_set_method(DSA *dsa, DSA_METHOD *meth)
{ {
DSA_METHOD *mtmp; DSA_METHOD *mtmp;
@@ -111,33 +95,10 @@ DSA_METHOD *DSA_set_method(DSA *dsa, DSA_METHOD *meth)
if (meth->init) meth->init(dsa); if (meth->init) meth->init(dsa);
return mtmp; return mtmp;
} }
#else
int DSA_set_method(DSA *dsa, ENGINE *engine)
{
ENGINE *mtmp;
DSA_METHOD *meth;
mtmp = dsa->engine;
meth = ENGINE_get_DSA(mtmp);
if (!ENGINE_init(engine))
return 0;
if (meth->finish) meth->finish(dsa);
dsa->engine = engine;
meth = ENGINE_get_DSA(engine);
if (meth->init) meth->init(dsa);
/* SHOULD ERROR CHECK THIS!!! */
ENGINE_finish(mtmp);
return 1;
}
#endif
#if 0
DSA *DSA_new_method(DSA_METHOD *meth) DSA *DSA_new_method(DSA_METHOD *meth)
#else
DSA *DSA_new_method(ENGINE *engine)
#endif
{ {
DSA_METHOD *meth;
DSA *ret; DSA *ret;
ret=(DSA *)OPENSSL_malloc(sizeof(DSA)); ret=(DSA *)OPENSSL_malloc(sizeof(DSA));
@@ -146,17 +107,8 @@ DSA *DSA_new_method(ENGINE *engine)
DSAerr(DSA_F_DSA_NEW,ERR_R_MALLOC_FAILURE); DSAerr(DSA_F_DSA_NEW,ERR_R_MALLOC_FAILURE);
return(NULL); return(NULL);
} }
if(engine) if(meth) ret->meth = meth;
ret->engine = engine; else ret->meth = DSA_get_default_method();
else
{
if((ret->engine=ENGINE_get_default_DSA()) == NULL)
{
OPENSSL_free(ret);
return NULL;
}
}
meth = ENGINE_get_DSA(ret->engine);
ret->pad=0; ret->pad=0;
ret->version=0; ret->version=0;
ret->write_params=1; ret->write_params=1;
@@ -172,8 +124,8 @@ DSA *DSA_new_method(ENGINE *engine)
ret->method_mont_p=NULL; ret->method_mont_p=NULL;
ret->references=1; ret->references=1;
ret->flags=meth->flags; ret->flags=ret->meth->flags;
if ((meth->init != NULL) && !meth->init(ret)) if ((ret->meth->init != NULL) && !ret->meth->init(ret))
{ {
OPENSSL_free(ret); OPENSSL_free(ret);
ret=NULL; ret=NULL;
@@ -186,7 +138,6 @@ DSA *DSA_new_method(ENGINE *engine)
void DSA_free(DSA *r) void DSA_free(DSA *r)
{ {
DSA_METHOD *meth;
int i; int i;
if (r == NULL) return; if (r == NULL) return;
@@ -206,9 +157,7 @@ void DSA_free(DSA *r)
CRYPTO_free_ex_data(dsa_meth, r, &r->ex_data); CRYPTO_free_ex_data(dsa_meth, r, &r->ex_data);
meth = ENGINE_get_DSA(r->engine); if(r->meth->finish) r->meth->finish(r);
if(meth->finish) meth->finish(r);
ENGINE_finish(r->engine);
if (r->p != NULL) BN_clear_free(r->p); if (r->p != NULL) BN_clear_free(r->p);
if (r->q != NULL) BN_clear_free(r->q); if (r->q != NULL) BN_clear_free(r->q);

View File

@@ -64,7 +64,6 @@
#include <openssl/dsa.h> #include <openssl/dsa.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/asn1.h> #include <openssl/asn1.h>
#include <openssl/engine.h>
static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa);
static int dsa_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp); static int dsa_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp);
@@ -196,7 +195,7 @@ static int dsa_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)
} }
/* Compute r = (g^k mod p) mod q */ /* Compute r = (g^k mod p) mod q */
if (!ENGINE_get_DSA(dsa->engine)->bn_mod_exp(dsa, r,dsa->g,&k,dsa->p,ctx, if (!dsa->meth->bn_mod_exp(dsa, r,dsa->g,&k,dsa->p,ctx,
(BN_MONT_CTX *)dsa->method_mont_p)) goto err; (BN_MONT_CTX *)dsa->method_mont_p)) goto err;
if (!BN_mod(r,r,dsa->q,ctx)) goto err; if (!BN_mod(r,r,dsa->q,ctx)) goto err;
@@ -274,7 +273,7 @@ static int dsa_do_verify(const unsigned char *dgst, int dgst_len, DSA_SIG *sig,
if (!BN_mod(&u1,&u1,dsa->q,ctx)) goto err; if (!BN_mod(&u1,&u1,dsa->q,ctx)) goto err;
#else #else
{ {
if (!ENGINE_get_DSA(dsa->engine)->dsa_mod_exp(dsa, &t1,dsa->g,&u1,dsa->pub_key,&u2, if (!dsa->meth->dsa_mod_exp(dsa, &t1,dsa->g,&u1,dsa->pub_key,&u2,
dsa->p,ctx,mont)) goto err; dsa->p,ctx,mont)) goto err;
/* BN_copy(&u1,&t1); */ /* BN_copy(&u1,&t1); */
/* let u1 = u1 mod q */ /* let u1 = u1 mod q */

View File

@@ -64,11 +64,10 @@
#include <openssl/dsa.h> #include <openssl/dsa.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/asn1.h> #include <openssl/asn1.h>
#include <openssl/engine.h>
DSA_SIG * DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) DSA_SIG * DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa)
{ {
return ENGINE_get_DSA(dsa->engine)->dsa_do_sign(dgst, dlen, dsa); return dsa->meth->dsa_do_sign(dgst, dlen, dsa);
} }
int DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig, int DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig,
@@ -88,6 +87,6 @@ int DSA_sign(int type, const unsigned char *dgst, int dlen, unsigned char *sig,
int DSA_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp) int DSA_sign_setup(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, BIGNUM **rp)
{ {
return ENGINE_get_DSA(dsa->engine)->dsa_sign_setup(dsa, ctx_in, kinvp, rp); return dsa->meth->dsa_sign_setup(dsa, ctx_in, kinvp, rp);
} }

View File

@@ -65,12 +65,11 @@
#include <openssl/rand.h> #include <openssl/rand.h>
#include <openssl/asn1.h> #include <openssl/asn1.h>
#include <openssl/asn1_mac.h> #include <openssl/asn1_mac.h>
#include <openssl/engine.h>
int DSA_do_verify(const unsigned char *dgst, int dgst_len, DSA_SIG *sig, int DSA_do_verify(const unsigned char *dgst, int dgst_len, DSA_SIG *sig,
DSA *dsa) DSA *dsa)
{ {
return ENGINE_get_DSA(dsa->engine)->dsa_do_verify(dgst, dgst_len, sig, dsa); return dsa->meth->dsa_do_verify(dgst, dgst_len, sig, dsa);
} }
/* data has already been hashed (probably with SHA or SHA-1). */ /* data has already been hashed (probably with SHA or SHA-1). */

Some files were not shown because too many files have changed in this diff Show More