summaryrefslogtreecommitdiff
path: root/crypto/cryptlib.c
Commit message (Collapse)AuthorAgeFilesLines
* Run util/openssl-format-source -v -c .Matt Caswell2015-01-221-686/+735
| | | | Reviewed-by: Tim Hudson <tjh@openssl.org>
* crypto/cryptlib.c: make it indent-friendly.Andy Polyakov2015-01-221-2/+4
| | | | | | | Conflicts: crypto/cryptlib.c Reviewed-by: Tim Hudson <tjh@openssl.org>
* Avoid Windows 8 Getversion deprecated errors.Dr. Stephen Henson2014-02-251-1/+1
| | | | | | | | | | | | Windows 8 SDKs complain that GetVersion() is deprecated. We only use GetVersion like this: (GetVersion() < 0x80000000) which checks if the Windows version is NT based. Use a macro check_winnt() which uses GetVersion() on older SDK versions and true otherwise. (cherry picked from commit a4cc3c8041104896d51ae12ef7b678c31808ce52)
* Add and use a constant-time memcmp.Ben Laurie2013-01-281-0/+13
| | | | | | | This change adds CRYPTO_memcmp, which compares two vectors of bytes in an amount of time that's independent of their contents. It also changes several MAC compares in the code to use this over the standard memcmp, which may leak information about the size of a matching prefix.
* Fix warning.Bodo Möller2012-09-171-1/+1
| | | | Submitted by: Chromium Authors
* Reduce version skew.Ben Laurie2012-06-081-0/+1
|
* cryptlib.c: make even non-Windows builds "strtoull-agnostic" [from HEAD].Andy Polyakov2012-01-211-1/+1
|
* cryptlib.c: allow for OPENSSL_ia32cap=~0x????? syntax for environment valueAndy Polyakov2011-12-091-3/+6
| | | | in question.
* Expand OPENSSL_ia32cap_P to 64 bits. It might appear controversial, becauseAndy Polyakov2011-06-281-5/+26
| | | | | | | | | | such operation can be considered as breaking binary compatibility. However! OPNESSL_ia32cap_P is accessed by application through pointer returned by OPENSSL_ia32cap_loc() and such change of *internal* OPENSSL_ia32cap_P declaration is possible specifically on little-endian platforms, such as x86[_64] ones in question. In addition, if 32-bit application calls OPENSSL_ia32cap_loc(), it clears upper half of capability vector maintaining the illusion that it's still 32 bits wide.
* PR: 2470Dr. Stephen Henson2011-06-221-1/+0
| | | | | | | Submitted by: Corinna Vinschen <vinschen@redhat.com> Reviewed by: steve Don't call ERR_remove_state from DllMain.
* The first of many changes to make OpenSSL 1.0.1 FIPS capable.Dr. Stephen Henson2011-05-261-0/+4
| | | | | | | | | | | | | | | Add static build support to openssl utility. Add new "fips" option to Configure. Make use of installed fipsld and fips_standalone_sha1 Initialise FIPS error callbacks, locking and DRBG. Doesn't do anything much yet: no crypto is redirected to the FIPS module. Doesn't completely build either but the openssl utility can enter FIPS mode: which doesn't do anything much either.
* PR: 2376Dr. Stephen Henson2010-11-191-9/+11
| | | | | | | Submitted by: Guenter <lists@gknw.net> Reviewed by: steve Cleanup alloca use, fix Win32 target for OpenWatcom.
* cryptlib.c: allow application to override OPENSSL_isservice [from HEAD].Andy Polyakov2010-04-101-0/+12
|
* Submitted by: Julia Lawall <julia@diku.dk>Dr. Stephen Henson2009-09-131-1/+1
| | | | | | The functions ENGINE_ctrl(), OPENSSL_isservice(), EVP_PKEY_sign(), CMS_get1_RecipientRequest() and RAND_bytes() can return <=0 on error fix so the return code is checked correctly.
* Change STRING to OPENSSL_STRING etc as common words suchDr. Stephen Henson2009-07-271-5/+5
| | | | as "STRING" cause conflicts with other headers/libraries.
* cryptlib.c: update from HEAD.Andy Polyakov2009-05-051-1/+10
|
* PR: 1894Dr. Stephen Henson2009-04-161-1/+1
| | | | | | | Submitted by: Ger Hobbelt <ger@hobbelt.com> Approved by: steve@openssl.org Fix various typos and stuff.
* Ooops... remove code accidentally commited from FIPS version.Dr. Stephen Henson2008-10-141-68/+11
|
* Add missing lock definitions.Dr. Stephen Henson2008-10-141-12/+71
|
* Remove the dual-callback scheme for numeric and pointer thread IDs,Geoff Thorpe2008-08-061-30/+122
| | | | | | | | | deprecate the original (numeric-only) scheme, and replace with the CRYPTO_THREADID object. This hides the platform-specifics and should reduce the possibility for programming errors (where failing to explicitly check both thread ID forms could create subtle, platform-specific bugs). Thanks to Bodo, for invaluable review and feedback.
* Revert my earlier CRYPTO_THREADID commit, I will commit a reworkedGeoff Thorpe2008-07-031-63/+34
| | | | version some time soon.
* More type-checking.Ben Laurie2008-06-041-6/+5
|
* Change use of CRYPTO_THREADID so that we always use both the ulong andBodo Möller2008-05-191-8/+9
| | | | | | ptr members. (So if the id_callback is bogus, we still have &errno.)
* There was a need to support thread ID types that couldn't be reliably castGeoff Thorpe2008-03-281-34/+62
| | | | | | | | | | | | | | to 'unsigned long' (ie. odd platforms/compilers), so a pointer-typed version was added but it required portable code to check *both* modes to determine equality. This commit maintains the availability of both thread ID types, but deprecates the type-specific accessor APIs that invoke the callbacks - instead a single type-independent API is used. This simplifies software that calls into this interface, and should also make it less error-prone - as forgetting to call and compare *both* thread ID accessors could have led to hard-to-debug/infrequent bugs (that might only affect certain platforms or thread implementations). As the CHANGES note says, there were corresponding deprecations and replacements in the thread-related functions for BN_BLINDING and ERR too.
* Avoid warnings.Dr. Stephen Henson2008-02-281-2/+2
|
* Update from fips2 branch.Dr. Stephen Henson2007-02-031-1/+1
|
* New functions CRYPTO_set_idptr_callback(),Bodo Möller2006-06-231-13/+36
| | | | | | CRYPTO_get_idptr_callback(), CRYPTO_thread_idptr() for a 'void *' type thread ID, since the 'unsigned long' type of the existing thread ID does not always work well.
* Add BeOS support.Ulf Möller2006-04-111-0/+2
| | | | | | PR: 1312 Submitted by: Oliver Tappe <zooey@hirschkaefer.de> Reviewed by: Ulf Moeller
* Unify sparcv9 assembler naming and build rules among 32- and 64-bit builds.Andy Polyakov2005-12-161-1/+1
| | | | Engage run-time switch between bn_mul_mont_fpu and bn_mul_mont_int.
* WCE update, mostly typos.Andy Polyakov2005-08-031-2/+2
|
* WCE-specific fix for cryptlib.c.Andy Polyakov2005-08-021-16/+6
|
* Pull up Win64 support from 0.9.8.Andy Polyakov2005-07-051-1/+1
|
* Move _WIN32_WINNT definition from command line to e_os.h. The change isAndy Polyakov2005-05-211-2/+3
| | | | | inspired by VC6 failure report. In addition abstain from taking screen snapshots when running in NT service context.
* Cygwin doesn't expose Win32 [not "officially"].Andy Polyakov2005-05-031-1/+1
|
* Provide a default OPENSSL_ia32cap_loc for non-Intel platforms whereRichard Levitte2005-04-211-0/+2
| | | | | util/libeay.num is important when building shared libraries, like VMS.
* Fix typos.Andy Polyakov2005-04-131-2/+2
|
* Introduce OPENSSL_NONPIC_relocated to denote relocated DLLs.Andy Polyakov2005-04-131-0/+16
|
* Minor cryptlib.c update: compiler warnings in OPENSSL_showfatal andAndy Polyakov2005-04-131-5/+8
| | | | OPENSSL_stderr stub.
* Implement OPENSSL_showfatal and make it Win32 GUI and service awareAndy Polyakov2005-04-071-1/+136
| | | | | [meaning that it will detect in which context application is running and either write message to stderr, post a dialog or log an event].
* Harmonize cygwin/mingw and VC targets.Andy Polyakov2005-04-071-1/+1
|
* linux-x86_64 didn't link after EM64T RC4 tune-up...Andy Polyakov2004-11-231-1/+3
|
* OPENSSL_ia32cap final touches. Note that OPENSSL_ia32cap is no longer aAndy Polyakov2004-08-291-7/+7
| | | | | symbol, but a macro expanded as (*(OPENSSL_ia32cap_loc())). The latter is the only one to be exported to application.
* Cygwin fix-up for shared build.Andy Polyakov2004-08-011-0/+4
|
* DLLEntryPoint is a collective name, not what linker looks for. However,Andy Polyakov2004-08-011-5/+2
| | | | | | | if we explicitly intruct the linker to set entry point, then we become obliged to initialize run-time library. Instead we can pick name run-time will call and such name is DllMain. Note that this applies to both "native" Win32 environment and Cygwin:-)
* This is so to say "damage control" for jumbo "cpuid" patch, seeAndy Polyakov2004-07-261-1/+1
| | | | | | http://cvs.openssl.org/chngview?cn=12493. Now all platform should be operational, while SSE2 code pathes get engaged on ELF platforms only.
* Add framework for yet another assembler module dubbed "cpuid." IdeaAndy Polyakov2004-07-261-0/+33
| | | | | | | | | | | is to have a placeholder to small routines, which can be written only in assembler. In IA-32 case this includes processor capability identification and access to Time-Stamp Counter. As discussed earlier OPENSSL_ia32cap is introduced to control recently added SSE2 code pathes (see docs/crypto/OPENSSL_ia32cap.pod). For the moment the code is operational on ELF platforms only. I haven't checked it yet, but I have all reasons to believe that Windows build should fail to link too. I'll be looking into it shortly...
* (oops) Apologies all, that last header-cleanup commit was from the wrongGeoff Thorpe2004-04-191-3/+0
| | | | | tree. This further reduces header interdependencies, and makes some associated cleanups.
* Setting the ex_data index is unsafe in a threaded environment, soRichard Levitte2003-10-061-1/+2
| | | | let's wrap it with a lock.
* Define a STORE lock (the STORE type will be committed later).Richard Levitte2003-05-011-1/+2
|
* new lock for EC_PRE_COMP structuresBodo Möller2003-02-121-2/+3
| | | | Submitted by: Nils Larsch