summaryrefslogtreecommitdiffstats
path: root/crypto/crypto.h
AgeCommit message (Collapse)Author
2000-11-06Constification of CRYPTO_get_ex_data() needed for the sake ofRichard Levitte
RSA_get_ext_data().
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-09-07It's not just VMS that needs some symbols to be hacked. Let'sRichard Levitte
centralise those hacks in crypto/symhacks.h and use it everywhere it's needed.
2000-08-01Remove casts that are no longer needed.Richard Levitte
2000-06-19Add the missing callback pointer handling functions.Richard Levitte
Also, make sure empty slots of the dynamic lock stack are used. Actually, I'm not really sure this is the right thing to do, and may remove it, with an endlessly growing stack as result...
2000-06-19Redo the support for dynamic locks. First of all, it was terriblyRichard Levitte
insecure, so a static lock is added to isolate the sensitive parts. Also, to avoid one thread freeing a lock that is used by another, a reference counter is added.
2000-06-18Add support for dynamically created and destroyed mutexes. This willRichard Levitte
be needed in some ENGINE code, and might serve elsewhere as well. Note that it's implemented in such a way that the locking itself is done through the same CRYPTO_lock function as the static locks. WARNING: This is currently experimental and untested code (it will get tested soon, though :-)).
2000-06-16Safe stack reorganisation in terms of function casts.Dr. Stephen Henson
After some messing around this seems to work but needs a few more tests. Working out the syntax for sk_set_cmp_func() (cast it to a function that itself returns a function pointer) was painful :-( Needs some testing to see what other compilers think of this syntax. Also needs similar stuff for ASN1_SET_OF etc etc.
2000-06-01There have been a number of complaints from a number of sources that namesRichard Levitte
like Malloc, Realloc and especially Free conflict with already existing names on some operating systems or other packages. That is reason enough to change the names of the OpenSSL memory allocation macros to something that has a better chance of being unique, like prepending them with OPENSSL_. This change includes all the name changes needed throughout all C files.
2000-06-01"make update" + stripping the type-specific stack functions out ofGeoff Thorpe
libeay.num and ssleay.num.
2000-06-01is needed.Ulf Möller
2000-05-31#include <stdlib.h> is not needed.Ulf Möller
2000-05-31Move Windows seeding functions into a separate file.Bodo Möller
They have nothing to do with the particular PRNG (md_rand.c).
2000-05-15prototype.Ulf Möller
2000-05-02In Message-ID: <003201bfb332$14a07520$0801a8c0@janm.transactionsite.com>,Richard Levitte
"Jan Mikkelsen" <janm@transactionsite.com> correctly states that the OpenSSL header files have #include's and extern "C"'s in an incorrect order. Thusly fixed. Also, make the memory debugging routines defined and declared with prototypes, and use void* instead of char* for memory blobs. And last of all, redo the ugly callback construct for elegance and better definition (with prototypes).
2000-04-04This commit ties the new DSO code (crypto/dso/) into the build for aGeoff Thorpe
variety of platforms. A few are missing, and they will be added in eventually, but as this is new stuff, it was better to not break lots of platforms in one go that we can't easily test. The changes to "Configure" should illustrate how to add support to other systems if you feel like having a go. NB: I'll add something shortly to allow you to add "dlfcn.h" support on those platforms that don't have (or need) a dlfcn.h header file. (The symbol for Configure will probably by "dlfcn_no_h"). Thanks to Richard Levitte, who is responsible for the dso_dl.c support, understanding the trickier aspects of the build process, and giving great feedback on everything else. [Don't use this stuff if you're easily offended by changes to the interface or behaviour - it's still work in progress.] PR:
2000-02-26Since a stack with quite long name is declared here, vms_idhacks.h isRichard Levitte
also needed to get around C compilers on VMS that set the symbol limit to 31 characters. Bot the macros VMS and __VMS are checked, since there's no real way to know if e_os.h has been included yet.
2000-02-11Make gcc 2.95.2 happy again, even under ``-Wall -Wshadow -Wpointer-arith ↵Ralf S. Engelschall
-Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline''.
2000-01-30Source code cleanups: Use void * rather than char * in lhash,Ulf Möller
eliminate some of the -Wcast-qual warnings (debug-ben-strict target)
2000-01-23Tidy up CRYPTO_EX_DATA structures.Dr. Stephen Henson
2000-01-07add V_CRYPTO_MDEBUG_ALLBodo Möller
Submitted by: Reviewed by: PR:
2000-01-02Add support for MS "fast SGC".Dr. Stephen Henson
1999-12-18RenameBodo Möller
CRYPTO_add_info => CRYPTO_push_info CRYPTO_remove_info => CRYPTO_pop_info in the hope that these names are more descriptive; and "make update".
1999-12-18fix typos and other little errors ...Bodo Möller
1999-12-18- Don't assume that int and size_t have the same representationBodo Möller
(and that malloc can be called with an int argument). - Use proper prototypes (with argument list) for various function pointers, avoid casts (however there are still many such cases left in these files). - Avoid collissions in app_info_cmp if sizeof int != sizeof long. - Use CRYPTO_LOCK_MALLOC in mem_dbg.c.
1999-12-18 - Added more documentation in CHANGES.Richard Levitte
- Made CRYPTO_MDEBUG even less used in crypto.h, giving MemCheck_start() and MemCheck_stop() only one possible definition. - Made the values of the debug function pointers in mem.c dependent on the existence of the CRYPTO_MDEBUG macro, and made the rest of the code understand the NULL case. That's it. With this code, the old behvior of the debug functionality is restored, but you can still opt to have it on, even when the library wasn't compiled with a defined CRYPTO_MDEBUG.
1999-12-18 - Made sure some changed behavior is documented in CHANGES.Richard Levitte
- Moved the handling of compile-time defaults from crypto.h to mem_dbg.c, since it doesn't make sense for the library users to try to affect this without recompiling libcrypto. - Made sure V_CRYPTO_MDEBUG_TIME and V_CRYPTO_MDEBUG_THREAD had clear and constant definitions. - Aesthetic correction.
1999-12-17Rebuild of the OpenSSL memory allocation and deallocation routines.Richard Levitte
With this change, the following is provided and present at all times (meaning CRYPTO_MDEBUG is no longer required to get this functionality): - hooks to provide your own allocation and deallocation routines. They have to have the same interface as malloc(), realloc() and free(). They are registered by calling CRYPTO_set_mem_functions() with the function pointers. - hooks to provide your own memory debugging routines. The have to have the same interface as as the CRYPTO_dbg_*() routines. They are registered by calling CRYPTO_set_mem_debug_functions() with the function pointers. I moved everything that was already built into OpenSSL and did memory debugging to a separate file (mem_dbg.c), to make it clear what is what. With this, the relevance of the CRYPTO_MDEBUG has changed. The only thing in crypto/crypto.h that it affects is the definition of the MemCheck_start and MemCheck_stop macros.
1999-11-12Two changes have been made:Richard Levitte
1. Added code to the memory leak detecting code to give the user the possibility to add information, thereby forming a traceback. 2. Make the memory leak detecting code multithread-safe. The idea is that we're actually dealing with two separate critical sections, one containing the hash tables with the information, the other containing the current memory checking mode. Those should not be handled with the same lock, especially since their handling overlap. Hence, the added second lock.
1999-08-23Initial support for DH_METHOD. Also added a DH lock. A few changes made toDr. Stephen Henson
DSA_METHOD to make it more consistent with RSA_METHOD.
1999-07-19New compile time option -DCRYPTO_MDEBUG_THREAD.Bodo Möller
1999-07-19Have CRYPTO_MDEBUG_TIME automatically set CRYPTO_MDEBUG,Bodo Möller
and make it the default for some debugging configurations.
1999-06-18New function CRYPTO_num_locks.Bodo Möller
1999-06-04Support the EBCDIC character set and BS2000/OSD-POSIX (work in progress).Ulf Möller
Submitted by: Martin Kraemer <Martin.Kraemer@MchP.Siemens.De>
1999-05-14Various bugfixes: Uses locking for some more of the stuff that is notBodo Möller
thread-safe (where thread-safe counterparts are not available on all platforms), and don't memcpy to NULL-pointers Submitted by: Anonymous Reviewed by: Bodo Moeller Also, clean up htons vs. ntohs confusions.
1999-05-13New structure type SESS_CERT used instead of CERT inside SSL_SESSION.Bodo Möller
While modifying the sources, I found some inconsistencies on the use of s->cert vs. s->session->sess_cert; I don't know if those could really have caused problems, but possibly this is a proper bug-fix and not just a clean-up.
1999-05-13VMS support.Ulf Möller
Submitted by: Richard Levitte <richard@levitte.org>
1999-04-26Remove NOPROTO definitions and error code comments.Ulf Möller
1999-04-25Various header consistency fixes.Dr. Stephen Henson
1999-04-24Fix header files so that any one can be included first.Bodo Möller
Submitted by: Reviewed by: PR:
1999-04-24Complete rewrite of the error code generation script. It now runs as a singleDr. Stephen Henson
script, translates function codes better and doesn't need the K&R function prototypes to work (NB. the K&R prototypes can't be wiped just yet: they are still needed by the DEF generator...). I also ran the script with the -rewrite option to update all the header and source files.
1999-04-23Change #include filenames from <foo.h> to <openssl.h>.Bodo Möller
Submitted by: Reviewed by: PR:
1999-04-17Massive constification.Ben Laurie
1999-04-10Rid the world of more evil casts.Ben Laurie
1999-03-22Fix security hole.Ben Laurie
1998-12-31Fix version stuff:Ralf S. Engelschall
1. The already released version was 0.9.1c and not 0.9.1b 2. The next release should be 0.9.2 and not 0.9.1d, because first the changes are already too large, second we should avoid any more 0.9.1x confusions and third, the Apache version semantics of VERSION.REVISION.PATCHLEVEL for the version string is reasonable (and here .2 is already just a patchlevel and not major change). tVS: ----------------------------------------------------------------------
1998-12-23Switch version string to SSLeay/OpenSSLRalf S. Engelschall
1998-12-22Various cleanups and fixed by Marc and Ralf to start the OpenTLS projectRalf S. Engelschall
1998-12-21Import of old SSLeay release: SSLeay 0.9.1b (unreleased)SSLeayRalf S. Engelschall
1998-12-21Import of old SSLeay release: SSLeay 0.9.0bRalf S. Engelschall