summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Detect Altivec support with the machdep.altivec sysctl rather than setmp andmiod2014-05-032-102/+20
| | | | | a SIGILL handler. Do not attempt to detect and use a 64-bit FPU yet.
* Correctly enable assembler Montgomery routine.miod2014-05-022-2/+4
|
* More use of 64-bit registers which needs to be disabled under OpenBSD.miod2014-05-022-0/+4
|
* Correctly enable assembler Montgomery routine.miod2014-05-022-2/+4
|
* Reenable assembler code for SHA384 and SHA512 now that it no longer miscomputesmiod2014-05-022-6/+6
| | | | things. Worth doing as it's twice faster than the C code.
* The assembly sha512 code detects at runtime if it is running on a 64-bitmiod2014-05-021-0/+6
| | | | | | | | | | | | processor (PA2.0) and, if so, switches to 64-bit code. However, when running under a 32-bit OpenBSD/hppa kernel, there is no guarantee that the upper part of the registers will be preserved accross context switches (or even userland->kernel boundaries), which causes this code to fail. Wrap the generated code within #ifndef __OpenBSD__ in that case, to avoid using the 64-bit code completely. (OpenBSD/hppa64, once stable, will not be affected by this)
* Disable assembler version of SHA512 for now, it produces wrong results.miod2014-05-022-6/+6
|
* Enable use of assembly code for AES, BN (Montgomery), SHA1, SHA256 and SHA512.miod2014-05-012-0/+100
| | | | RC4 assembler code is not used, as it runs about 35% slower than the C code.
* Do not output SOM-specific directives.miod2014-05-017-0/+40
|
* Remove unreferenced OPENSSL_instrument_bus and OPENSSL_instrument_bus2 routines.miod2014-05-012-105/+0
|
* Make the implicit `l' in `impicit' explicit.miod2014-05-011-1/+1
|
* Enable use of the assembly code for BN (Montgomery) and SHA1.miod2014-05-012-0/+80
|
* Fix include filename to get register name aliases under BSDmiod2014-05-013-18/+3
|
* Pass -Werror in the !BN_LLONG !BN_UMULT_LOHI !BN_UMULT_HIGH case.miod2014-05-011-4/+4
|
* Enable use of the assembly code for AES, BN, SHA1, SHA256 and SHA512.miod2014-05-012-0/+72
|
* dead meatmiod2014-05-012-2528/+0
|
* + e_chacha.c, and bump minormiod2014-05-013-3/+4
|
* Update with recently added objects.jsing2014-05-011-0/+18
| | | | ok miod@
* Nuke unused evptests.txt - the real one is over in regress.jsing2014-05-011-334/+0
| | | | ok miod@
* Provide an EVP implementation for ChaCha.jsing2014-05-016-0/+108
| | | | ok miod@
* Add ChaCha to libcrypto, based on djb's public domain implementation.jsing2014-05-014-1/+320
| | | | ok deraadt@
* Add support for the french ANSSI FRP256v1 elliptic curve.miod2014-05-012-1/+35
| | | | | | | | | | While not to be considered a good choice of elliptic curve (refer to http://safecurves.cr.yp.to/ for more details), it is nevertheless deemed a good decision to allow developers with requirements to use such a curve, to be able to do this via a crypto library allowing for much better choices to be made, without having to change (much of) their code to get better crypto. ok beck@ deraadt@
* Add Brainpool elliptic curves. From OpenSSL RT#2239 via ${DAYJOB}.miod2014-05-012-1/+461
| | | | | Be sure to rerun `make includes' after updating. ok tedu@ beck@ deraadt@
* Remove fips_md_init() macro indirection for digest algorithms, used by themiod2014-05-019-17/+11
| | | | | | | OpenSSL FIPS module to prevent forbidden digests to be allowed. No functional change but readability. ok deraadt@
* First pass at removing win64 support from the assembly generating Perljsing2014-04-308-1066/+1
| | | | | | | scripts. We certainly do not need an identical copy of the win64 exception handler in each script (surely one copy would be sufficient). ok miod@
* Remove WIN32, WIN64 and MINGW32 tentacles.miod2014-04-2814-65/+7
| | | | | | | | 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@
* Leftover includes and local declarations; from Gebruiker Schootmiod2014-04-281-5/+0
|
* typo in commentmiod2014-04-273-3/+3
|
* Use C99 initializers for the various FOO_METHOD structs. More readable, andmiod2014-04-2757-1123/+836
| | | | | | | | | | | | | | | | | | | | | | | | | | | | avoid unreadable/unmaintainable constructs like that: const EVP_PKEY_ASN1_METHOD cmac_asn1_meth = { EVP_PKEY_CMAC, EVP_PKEY_CMAC, 0, "CMAC", "OpenSSL CMAC method", 0,0,0,0, 0,0,0, cmac_size, 0, 0,0,0,0,0,0,0, cmac_key_free, 0, 0,0 }; ok matthew@ deraadt@
* static const char * = "" -> static const char[] = "", to produce shorter code.miod2014-04-273-3/+3
| | | | No functional change.
* Unifdef -U OPENSSL_BUILD_SHLIBCRYPTO, since all it causes under Unix is tomiod2014-04-275-30/+1
| | | | redefine OPENSSL_EXTERN from `extern' to `extern'.
* Put explicit (void) in function declarations and shuffle keywords in somemiod2014-04-2716-18/+18
| | | | | declaration to pass -Wextra, should we want to add it to CFLAGS. No binary change.
* We do not need a separate file for two compatibility wrapper functions.jsing2014-04-273-71/+20
| | | | ok miod@
* Fix leak last commit introduced. Spotted by Sebastian Kapfer.beck2014-04-271-0/+1
|
* Replace all use of ERR_add_error_data with ERR_asprintf_error_data.beck2014-04-2634-126/+106
| | | | | | | | This avoids a lot of ugly gymnastics to do snprintfs before sending the bag of strings to ERR, and eliminates at least one place in dso_dlfctn.c where it was being called with the incorrect number of arguments and using random things off the stack as addresses of strings. ok krw@, jsing@
* More KNF.jsing2014-04-262-6/+10
|
* KNF.jsing2014-04-265-424/+414
|
* This is not FreeBSD.jsing2014-04-261-18/+0
| | | | ok miod@
* Do you really want to build OpenSSL for 16-bit Windows? Well, we don't.jsing2014-04-261-6/+0
| | | | ok miod@
* KNF.jsing2014-04-252-255/+251
|
* Clean up the remaining TTY related remnants.jsing2014-04-251-41/+8
| | | | ok miod@
* Use const char *.jsing2014-04-251-1/+1
| | | | Suggested by miod@
* Try to clean the maze of <openssl/bn.h> defines regarding the BN internals.miod2014-04-2410-227/+25
| | | | | | | | | | | | | | | | | | | | | | | The intent of this change is to only keep support for two kind of architectures: - those with 32-bit int and long, and 64-bit long long, where ``long * long -> long long'' multiplication routines are available. - those with 64-bit int and long, and no 128-bit long long type. This gets rid of the SIXTY_FOUR_BIT_LONG, SIXTY_FOUR_BIT (not the same!), THIRTY_TWO_BIT, SIXTEEN_BIT and EIGHT_BIT defines. After this change, the types and defines are as follows: arch: 64bit 32bit rationale BN_LLONG undefined defined defined if l * l -> ll BN_ULLONG undefined u long long result of BN_LONG * BN_LONG BN_ULONG u long u int native register size BN_LONG long int the same, signed BN_BITS 128 64 size of 2*BN_ULONG in bits BN_BYTES 8 4 size of 2*BN_ULONG in bytes BN_BITS2 64 32 BN_BITS / 2 Tested on various 32-bit and 64-bit OpenBSD systems of various endianness.
* unifdef MSDOSgiovanni2014-04-241-12/+1
| | | | ok miod@
* Remove some malloc/strlcpy/strlcat horror. Just use asprintf and avoid anjsing2014-04-241-25/+12
| | | | | | unchecked malloc at the same time. ok beck@
* add ERR_asprintf_error_data, A tool to be used to get rid of the far toobeck2014-04-242-25/+26
| | | | | | | | | frequent construct of 30 lines of pointer and strlcat insanity followed by an ERR_add_error_data. I will sweep through here like a chubby mongol horde in the next few days pillaging crappy ERR_add_error_data's. Oh and while we're at it fix the nasty vdata function to use something less hard on the eyes. ok jsing@
* You want signals?!? I'll give you signals!!! Oh, and we have termios asjsing2014-04-241-36/+0
| | | | | | well... ok beck@
* More KNF.jsing2014-04-242-37/+37
|
* repair missing semicolon. from Ian Mcwilliamtedu2014-04-241-1/+1
|
* Unifdef -UPKCS1_CHECK and remove SSL_OP_PKCS1_CHECK_[12], this is leftovermiod2014-04-231-3/+0
| | | | | | | | ``debug'' code from a 15+ years old bugfix and the SSL_OP_PKCS1_CHECK_* constants have had a value of zero since ages. No production code should use them. ok beck@