summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/modes (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make sure that the tag buffer size is equal to the tag sizetb2019-05-081-2/+2
| | | | | | | | | in CRYPTO_ccm128_tag(). Otherwise the caller might end up using the part of the tag buffer that was left uninitialized. Issue found by Guido Vranken. ok inoguchi
* add c++ symbol annotationsbcook2018-07-241-1/+9
| | | | from Cameron Palmer
* Make the NEON codepaths conditional on __STRICT_ALIGNMENT not beingkettenis2018-01-242-3/+3
| | | | | | defined as they rely on unaligned access. ok joel@
* In the middle of CRYPTO_gcm128_finish() there is a complicated #ifdefderaadt2017-12-091-6/+8
| | | | | block which defines a variable late, after code. Place this chunk into a { subblock } to satisfy old compilers and old eyes.
* Checking sizeof size_t by SIZE_MAX instead of _LP64inoguchi2017-09-031-7/+7
| | | | ok bcook@
* Fix ifdef to if in gcm128.cinoguchi2017-08-301-2/+2
| | | | ok deraadt@ bcook@
* fix missing bracket on ARMbcook2017-08-141-15/+15
| | | | ok beck@
* move endian/word size checks from runtime to compile timebcook2017-08-133-292/+307
| | | | ok guenther@
* use freezero() instead of memset/explicit_bzero + free. Substantiallyderaadt2017-05-021-5/+2
| | | | | | | | | | reduces conditional logic (-218, +82). MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH cache alignment calculation bn/bn_exp.c wasn'tt quite right. Two other tricky bits with ASN1_STRING_FLAG_NDEF and BN_FLG_STATIC_DATA where the condition cannot be collapsed completely. Passes regress. ok beck
* Convert ARM assembly to unified syntax. Clang demands it, binutilspatrick2017-01-041-4/+5
| | | | | | supports it as long as it's marked as unified syntax. ok bcook@ kettenis@
* Explicitly export a list of symbols from libcrypto.jsing2016-12-211-1/+4
| | | | | | | | | | | | | | | | Move the "internal" BN functions from bn.h to bn_lcl.h and stop exporting the bn_* symbols. These are documented as only being intended for internal use, so why they were placed in a public header is beyond me... This hides 363 previously exported symbols, most of which exist in headers that are not installed and were never intended to be public. This also removes a few crusty old things that should have died long ago (like _ossl_old_des_read_pw). But don't worry... there are still 3451 symbols exported from the library. With input and testing from inoguchi@. ok beck@ inoguchi@
* Replace all uses of magic numbers when operating on OPENSSL_ia32_P[] bymiod2016-11-041-6/+13
| | | | | | | | | | | | | | | meaningful constants in a private header file, so that reviewers can actually get a chance to figure out what the code is attempting to do without knowing all cpuid bits. While there, turn it from an array of two 32-bit ints into a properly aligned 64-bit int. Use of OPENSSL_ia32_P is now restricted to the assembler parts. C code will now always use OPENSSL_cpu_caps() and check for the proper bits in the whole 64-bit word it returns. i386 tests and ok jsing@
* Remove I386_ONLY define. It was only used to prefer amiod2016-11-042-5/+4
| | | | | | | faster-on-genuine-80386-but-slower-on-80486-onwards innstruction sequence in the SHA512 code, and had not been enabled in years, if at all. ok tom@ bcook@
* Less S390.jsing2016-09-041-262/+0
| | | | ok deraadt@
* Less IA64.jsing2016-09-041-463/+0
| | | | ok deraadt@
* Correct spelling of OPENSSL_cleanse.jsing2015-09-101-2/+2
| | | | ok miod@
* unifdef -UCBC_HANDLES_TRUNCATED_IOmiod2015-07-191-19/+1
| | | | ok bcook@ doug@
* Remove assert() or OPENSSL_assert() of pointers being non-NULL. The policymiod2015-02-108-47/+8
| | | | | for libraries in OpenBSD is to deliberately let NULL pointers cause a SIGSEGV. ok doug@ jsing@
* Delete a lot of #if 0 code in libressl.doug2015-02-071-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | There are a few instances where #if 1 is removed but the code remains. Based on the following OpenSSL commits. Some of the commits weren't strictly deletions so they are going to be split up into separate commits. 6f91b017bbb7140f816721141ac156d1b828a6b3 3d47c1d331fdc7574d2275cda1a630ccdb624b08 dfb56425b68314b2b57e17c82c1df42e7a015132 c8fa2356a00cbaada8963f739e5570298311a060 f16a64d11f55c01f56baa62ebf1dec7f8fe718cb 9ccc00ef6ea65567622e40c49aca43f2c6d79cdb 02a938c953b3e1ced71d9a832de1618f907eb96d 75d0ebef2aef7a2c77b27575b8da898e22f3ccd5 d6fbb194095312f4722c81c9362dbd0de66cb656 6f1a93ad111c7dfe36a09a976c4c009079b19ea1 1a5adcfb5edfe23908b350f8757df405b0f5f71f 8de24b792743d11e1d5a0dcd336a49368750c577 a2b18e657ea1a932d125154f4e13ab2258796d90 8e964419603d2478dfb391c66e7ccb2dcc9776b4 32dfde107636ac9bc62a5b3233fe2a54dbc27008 input + ok jsing@, miod@, tedu@
* Doh, rev 1.4 had left out one routine with both 32-bit and 64-bit code, wheremiod2014-09-271-0/+2
| | | | the 64-bit code has to be disabled under OpenBSD/hppa.
* Explicitly include <openssl/opensslconf.h> in every file that referencesjsing2014-07-101-2/+4
| | | | | | | | | an OPENSSL_NO_* define. This avoids relying on something else pulling it in for us, plus it fixes several cases where the #ifndef OPENSSL_NO_XYZ is never going to do anything, since OPENSSL_NO_XYZ will never defined, due to the fact that opensslconf.h has not been included. This also includes some miscellaneous sorting/tidying of headers.
* Remove leading underscore from _BYTE_ORDER and _{LITTLE,BIG}_ENDIAN, to bemiod2014-07-093-37/+37
| | | | | more friendly to systems where the underscore flavours may be defined as empty. Found the hard way be bcook@; joint brainstrom with bcook beck and guenther
* hand-KNF macro the do { } while loopsderaadt2014-06-271-13/+13
|
* tags as requested by miod and teduderaadt2014-06-1210-0/+10
|
* malloc() result does not need a cast.deraadt2014-06-071-1/+1
| | | | ok miod
* Move the cts128 and gcm128 tests to regress.jsing2014-05-312-459/+0
|
* Get __STRICT_ALIGNMENT from <machine/endian.h> and decide upon it, rathermiod2014-05-078-31/+25
| | | | | | | | | | | | | | than defining it for not (i386 and amd64 (and sometimes s390)) only. Compile-time tests remain compile-time tests, and runtime-test remain runtime-test instead of being converted to compile-time tests, per matthew@'s explicit demand (rationale: this makes sure the compiler checks your code even if you won't run it). No functional change except on s390 (which we don't run on) and vax (which we run on, but noone cares about) ok matthew@
* More use of 64-bit registers which needs to be disabled under OpenBSD.miod2014-05-021-0/+2
|
* Do not output SOM-specific directives.miod2014-05-011-0/+6
|
* Make the implicit `l' in `impicit' explicit.miod2014-05-011-1/+1
|
* Fix include filename to get register name aliases under BSDmiod2014-05-011-6/+1
|
* Remove WIN32, WIN64 and MINGW32 tentacles.miod2014-04-281-5/+1
| | | | | | | | Also check for _LP64 rather than __arch64__ (the former being more reliable than __LP64__ or __arch64__) to tell 64-bit int platforms apart from 32-bit int platforms. Loosely based upon a diff from Martijn van Duren on tech@
* Unifdef -UPEDANTIC. ok beck@ tedu@miod2014-04-231-1/+1
|
* Figure out endianness at compile-time, using _BYTE_ORDER frommiod2014-04-234-50/+38
| | | | | | | <machine/endian.h>, rather than writing 1 to a 32-bit variable and checking whether the first byte is nonzero. tweaks and ok matthew@; ok beck@ tedu@
* Get rid of MS Visual C compiler and Intel C compiler specific defines.miod2014-04-171-12/+0
|
* Remove the benchmark part of the selftest. It uses the undocumentedmiod2014-04-171-43/+0
| | | | | | | OPENSSL_rdtsc() routine to get a high-precision timestamp, and (although this is the only user of this routine in libcrypto) forces every platform willing to provide fast assembly versions of some routines, to also provide OPENSSL_rdtsc().
* Change library to use intrinsic memory allocation functions instead ofbeck2014-04-171-2/+2
| | | | | | | | OPENSSL_foo wrappers. This changes: OPENSSL_malloc->malloc OPENSSL_free->free OPENSSL_relloc->realloc OPENSSL_freeFunc->free
* we don't use these files for buildingtedu2014-04-151-100/+0
|
* remove auto-generated dependencies from the old unused build system, soderaadt2014-04-141-41/+0
| | | | | that it is easier to find code pieces. They are getting in the way. ok miod
* Merge conflicts; remove MacOS, Netware, OS/2, VMS and Windows build machinery.miod2014-04-131-4/+1
|
* This commit was generated by cvs2git to track changes on a CVS vendormiod2014-04-139-74/+221
|\ | | | | branch.
| * Import OpenSSL 1.0.1gmiod2014-04-139-74/+221
| |
* | This commit was generated by cvs2git to track changes on a CVS vendormiod2014-04-131-1/+4
|\ \ | | | | | | branch.
| * | Import OpenSSL 1.0.1gmiod2014-04-131-1/+4
| | |
* | | This commit was generated by cvs2git to track changes on a CVS vendordjm2012-10-131-9/+68
|\| | | | | | | | branch.
| * | import OpenSSL-1.0.1cdjm2012-10-131-9/+68
| | |
* | | This commit was generated by cvs2git to track changes on a CVS vendordjm2012-10-1318-47/+7707
|\ \ \ | | |/ | |/| branch.
| * | import OpenSSL-1.0.1cdjm2012-10-1318-47/+7707
| | |
* | | This commit was generated by cvs2git to track changes on a CVS vendordjm2010-10-016-0/+1085
|\| | | |/ |/| branch.
| * import OpenSSL-1.0.0adjm2010-10-016-0/+1085
|