summaryrefslogtreecommitdiffstats
path: root/util
AgeCommit message (Collapse)Author
2001-03-02Introduce the possibility to access global variables throughRichard Levitte
functions on platform were that's the best way to handle exporting global variables in shared libraries. To enable this functionality, one must configure with "EXPORT_VAR_AS_FN" or defined the C macro "OPENSSL_EXPORT_VAR_AS_FUNCTION" in crypto/opensslconf.h (the latter is normally done by Configure or something similar). To implement a global variable, use the macro OPENSSL_IMPLEMENT_GLOBAL in the source file (foo.c) like this: OPENSSL_IMPLEMENT_GLOBAL(int,foo)=1; OPENSSL_IMPLEMENT_GLOBAL(double,bar); To declare a global variable, use the macros OPENSSL_DECLARE_GLOBAL and OPENSSL_GLOBAL_REF in the header file (foo.h) like this: OPENSSL_DECLARE_GLOBAL(int,foo); #define foo OPENSSL_GLOBAL_REF(foo) OPENSSL_DECLARE_GLOBAL(double,bar); #define bar OPENSSL_GLOBAL_REF(bar) The #defines are very important, and therefore so is including the header file everywere where the defined globals are used. The macro OPENSSL_EXPORT_VAR_AS_FUNCTION also affects the definition of ASN.1 items, but that structure is a bt different. The largest change is in util/mkdef.pl which has been enhanced with better and easier to understand logic to choose which symbols should go into the Windows .def files as well as a number of fixes and code cleanup (among others, algorithm keywords are now sorted lexicographically to avoid constant rewrites).
2001-02-27run self-test with no-krb5Ulf Möller
2001-02-26make updateRichard Levitte
Note that all *_it variables are suddenly non-existant according to libeay.num. This is a bug that will be corrected. Please be patient.
2001-02-22e_os.h does not belong with the exported headers. Do not put it thereRichard Levitte
and make all files the depend on it include it without prefixing it with openssl/. This means that all Makefiles will have $(TOP) as one of the include directories.
2001-02-22When inside a #if 0..#endif, do not define anything.Richard Levitte
2001-02-21This change allows a callback to be used to override the generation ofGeoff Thorpe
SSL/TLS session IDs in a server. According to RFC2246, the session ID is an arbitrary value chosen by the server. It can be useful to have some control over this "arbitrary value" so as to choose it in ways that can aid in things like external session caching and balancing (eg. clustering). The default session ID generation is to fill the ID with random data. The callback used by default is built in to ssl_sess.c, but registering a callback in an SSL_CTX or in a particular SSL overrides this. BTW: SSL callbacks will override SSL_CTX callbacks, and a new SSL structure inherits any callback set in its 'parent' SSL_CTX. The header comments describe how this mechanism ticks, and source code comments describe (hopefully) why it ticks the way it does. Man pages are on the way ... [NB: Lutz was also hacking away and helping me to figure out how best to do this.]
2001-02-21'make update'Richard Levitte
2001-02-21Modify mkdef.pl to recognise and parse prprocessor conditionals of theRichard Levitte
form '#if defined(...) || defined(...) || ...' and '#if !defined(...) && !defined(...) && ...'. This also avoids the growing number of special cases it was previously handling (some of them wrongly).
2001-02-21I had forgotten to change mkerr.pl to use the new macro system.Richard Levitte
2001-02-19Make all configuration macros available for application by makingRichard Levitte
sure they are available in opensslconf.h, by giving them names starting with "OPENSSL_" to avoid conflicts with other packages and by making sure e_os2.h will cover all platform-specific cases together with opensslconf.h. I've checked fairly well that nothing breaks with this (apart from external software that will adapt if they have used something like NO_KRB5), but I can't guarantee it completely, so a review of this change would be a good thing.
2001-02-19Remove temporary files when done.Richard Levitte
2001-02-19make updateRichard Levitte
2001-02-19Do not insert things in syms{} and kind{} when parsing the headerRichard Levitte
files. Instead, insert proper information in the $def string, which will be properly munged later on.
2001-02-19Make the choice of "makedepend" program choosable through a switch.Richard Levitte
2001-02-16Make it possible to use gcc to generate the dependency tables.Richard Levitte
2001-02-09Various Win32 related fixed. Make no-krb5 work in mkdef.pl .Dr. Stephen Henson
Fix warning in apps/engine.c Remove definitions of deleted functions. Add missing definition of X509_VAL.
2001-02-09Various updates to mkdef.pl to cope with new aesDr. Stephen Henson
and ASN1 code.
2000-12-31The option line may start with a space, which gives an empty option.Richard Levitte
Make sure those are purged...
2000-12-31Look for no-krb5 and add the definition of NO_KRB5 if it's there.Richard Levitte
I've no idea were the KRB5 header files and libraries are placed on Win32. When there's better knowledge, we might be able to process the other KRB5-related arguments as well...
2000-12-31Remove RSAref-related things.Richard Levitte
2000-12-31Remove anything connected to RSAref, since that's gone by now.Richard Levitte
Add the C macros OPENSSL_BUILD_SHLIBCRYPTO and OPENSSL_BUILD_SHLIBSSL to the build of the object files as appropriate for each library.
2000-12-29"make update" plus a rewrite of both .num files.Richard Levitte
2000-12-29Enhancements to mkdef.pl:Richard Levitte
* detect "unknown" algorithms (any C macro starting with NO_ that is not explicitely mentioned in mkdef.pl as a known algorithm) and report. * add a number of algorithms that can be deselected. * look in ssl/kssl.h as well. * accept multiple whitespace (not just one SPC) in preprocessor lines.
2000-12-21Various Win32 related fixes. Doesn't compile yet onDr. Stephen Henson
Win32 but it is getting there... Update mkdef.pl to handle ASN1_ANY and fix headers. Stop various VC++ warnings. Include some fixes from "Peter 'Luna' Runestig" <peter@runestig.com> Remove external declaration for des_set_weak_key_flag: it doesn't exist.
2000-12-16Make mkdef.pl parse some ASN1 IMPLEMENT macros.Dr. Stephen Henson
Initial support for variables in DEF files.
2000-12-15"Andrew W. Gray" <agray@iconsinc.com> says /GD is no longer a validUlf Möller
compiler switch.
2000-12-06Don't check for bc at all. We can now run a meaningful test even ifUlf Möller
it is missing.
2000-12-06During the self test, we only want to know what bctest says onRichard Levitte
stderr...
2000-12-06Have the self test use bctest to check that bc is sane.Richard Levitte
2000-11-27Fix BN_is_... macros.Bodo Möller
Fix BN_gcd. Analyze BN_mod_inverse. Add BN_kronecker. "make update".
2000-11-26modular arithmeticsBodo Möller
"make update"
2000-11-14make updateRichard Levitte
2000-11-14Get the Rijndael function declarations.Richard Levitte
2000-11-14Detect and mark functions that no longer exist.Richard Levitte
2000-11-14Add Rijndael as things to look through.Richard Levitte
2000-11-08Remove references to RSAref. The glue library is but a memory to fadeRichard Levitte
away now...
2000-10-27make updateRichard Levitte
2000-10-27The majority of the OCSP code from CertCo.Richard Levitte
2000-10-26Merge the engine branch into the main trunk. All conflicts resolved.Richard Levitte
At the same time, add VMS support for Rijndael.
2000-10-21make updateRichard Levitte
2000-10-14The experimental Rijndael code moved to the main trunk.Richard Levitte
make update done.
2000-10-13make updateRichard Levitte
2000-10-11fix problems in the selftestUlf Möller
2000-09-25UpdateRichard Levitte
2000-09-25When creating a .def file, be a bit more selective so disabledRichard Levitte
algorithms do not get in...
2000-09-24Change the Windows building scripts to enable DSO_WIN32.Richard Levitte
2000-09-23print the perlasm rule only for linux-elf (it seems it confuses someUlf Möller
version of make for Mingw32) ---------------------------------------------------------------------- ----------------------------------------------------------------------
2000-09-21Ugly hack to make sure static libraries are usable. Without this,Richard Levitte
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-20Wrong variable used. It's funny how some bugs take a long timeRichard Levitte
getting triggered...
2000-09-20On VMS, stdout may very well lead to a file that is written to in aRichard Levitte
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.