summaryrefslogtreecommitdiff
path: root/src/lib/libc/stdlib/system.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-05-03Do not compile the neon probe code until __ARM_ARCH__ >= 7. Neon-specific codemiod4-4/+28
will not get referenced if this condition is not met.
2014-05-03typosmiod2-4/+4
2014-05-03Correctly enable Montgomery code.miod2-2/+4
2014-05-03now that 5.5 has been released with compatibility for 2b hashes,tedu1-2/+2
switch to generating them by default. prodded by deraadt and sthen
2014-05-03Update the base64 regress test and enable a test that would previouslyjsing1-19/+28
have resulted in a segfault. Also update the resulting output bytes now that the invalid/corrupt input is detected and rejected; unless you're using BIO_FLAGS_BASE64_NO_NL, in which case you still get a stream of zero value bytes and no way of knowing that the data is invalid/corrupt.
2014-05-03Add checks for invalid base64 encoded data, specifically relating to thejsing2-0/+24
handling of padding. This fixes a crash that can be triggered by feeding base64 data followed by 64 or more padding characters, which results in a negative output length. This issue was reported by David Ramos, although the same bug has been sitting in the OpenSSL RT since 2011: https://rt.openssl.org/Ticket/Display.html?id=2608 Worse still, BIO_read seems to be completely unable to detect that the base64 input was invalid/corrupt - in particular, enabling BIO_FLAGS_BASE64_NO_NL results in a stream of zero value bytes rather than no input (possibly a good replacement for /dev/null...), which could result in nasty consequences. Prior to this fix some zero value bytes were also injected without this flag being enabled. The recently added base64 regress triggers and documents these issues (and also ensures that this change retains functional behaviour).
2014-05-031. Drop support for no minor. This variant doesn't exist anymore.tedu1-44/+30
2. Pull up the actual minor processing code into the switch that parses it. 3. atoi is actually simpler than strtonum in this case, but check the input beforehand so we don't get unexpected results. 4. Slightly more consistent style between various parse and check and increment operations on salt. ok deraadt
2014-05-03It is definitly not the correct spelling.jsing2-4/+4
2014-05-03KNF.jsing8-1864/+1820
2014-05-03Nuke more defines - we have setvbuf() and _IONBF.jsing2-16/+0
ok deraadt@
2014-05-03KNF.jsing8-990/+1028
2014-05-03Initial version of a base64 regress.jsing3-1/+382
2014-05-03Enable assembler bits for BN (Montgomery), SHA1 and SHA256.miod2-0/+88
Assembler bits for AES remain commented out as they run slower than the C code.
2014-05-03Detect Altivec support with the machdep.altivec sysctl rather than setmp andmiod4-204/+40
a SIGILL handler. Do not attempt to detect and use a 64-bit FPU yet.
2014-05-02Correctly enable assembler Montgomery routine.miod2-2/+4
2014-05-02More use of 64-bit registers which needs to be disabled under OpenBSD.miod4-0/+8
2014-05-02Correctly enable assembler Montgomery routine.miod2-2/+4
2014-05-02Reenable assembler code for SHA384 and SHA512 now that it no longer miscomputesmiod2-6/+6
things. Worth doing as it's twice faster than the C code.
2014-05-02The assembly sha512 code detects at runtime if it is running on a 64-bitmiod2-0/+12
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)
2014-05-02Simple sha{224,256,384,512} test using the FIPS 180-2 test vectors availablemiod2-2/+45
from http://csrc.nist.gov/groups/ST/toolkit/examples.html
2014-05-02Disable assembler version of SHA512 for now, it produces wrong results.miod2-6/+6
2014-05-02Add ChaCha as a cipher.jsing1-0/+3
ok beck@ miod@
2014-05-02remove crazy #undefs; ok jsingderaadt10-13/+0
2014-05-02Nuke OPENSSL_NO_SOCK since any half sane operating system has sockets.jsing9-35/+0
ok beck@
2014-05-02Sort and group includes. We also do not need to include openssl/evp.h morejsing1-45/+47
than once. ok beck@
2014-05-02Sort function prototypes and group/sort entries within the functions array.jsing1-237/+125
ok beck@
2014-05-01Enable use of assembly code for AES, BN (Montgomery), SHA1, SHA256 and SHA512.miod2-0/+100
RC4 assembler code is not used, as it runs about 35% slower than the C code.
2014-05-01Do not output SOM-specific directives.miod14-0/+80
2014-05-01Remove unreferenced OPENSSL_instrument_bus and OPENSSL_instrument_bus2 routines.miod4-210/+0
2014-05-01Make the implicit `l' in `impicit' explicit.miod2-2/+2
2014-05-01Enable use of the assembly code for BN (Montgomery) and SHA1.miod2-0/+80
2014-05-01Fix include filename to get register name aliases under BSDmiod6-36/+6
2014-05-01Pass -Werror in the !BN_LLONG !BN_UMULT_LOHI !BN_UMULT_HIGH case.miod2-8/+8
2014-05-01Enable use of the assembly code for AES, BN, SHA1, SHA256 and SHA512.miod2-0/+72
2014-05-01dead meatmiod4-5056/+0
2014-05-01tweak previous; ok sthenjmc1-3/+3
2014-05-01+ e_chacha.c, and bump minormiod3-3/+4
2014-05-01Update with recently added objects.jsing2-0/+36
ok miod@
2014-05-01KNF.jsing1-324/+296
2014-05-01Nuke unused evptests.txt - the real one is over in regress.jsing2-668/+0
ok miod@
2014-05-01Provide an EVP implementation for ChaCha.jsing14-0/+233
ok miod@
2014-05-01Add ChaCha to libcrypto, based on djb's public domain implementation.jsing10-2/+904
ok deraadt@
2014-05-01Add support for the french ANSSI FRP256v1 elliptic curve.miod4-2/+70
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@
2014-05-01Add Brainpool elliptic curves. From OpenSSL RT#2239 via ${DAYJOB}.miod4-2/+922
Be sure to rerun `make includes' after updating. ok tedu@ beck@ deraadt@
2014-05-01Remove fips_md_init() macro indirection for digest algorithms, used by themiod18-34/+22
OpenSSL FIPS module to prevent forbidden digests to be allowed. No functional change but readability. ok deraadt@
2014-05-01nibbles aren't enough random, use bytes. does a better job of pickingtedu1-14/+14
a free chunk at random and may allow to increase delayed chunk array. ok otto
2014-04-30first cut at documenting the change to malloc doing a partial 'junk' bysthen1-2/+7
default and the new 'j' option to disable this; ok jmc@
2014-04-30Avoid a potential null pointer dereference by checking that we actuallyjsing2-0/+4
managed to allocate a fragment, before trying to memcpy data into it. ok miod@
2014-04-30First pass at removing win64 support from the assembly generating Perljsing16-2132/+2
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@
2014-04-30i suck at math. b - 8 = 3, not 4. detected by Antoine Pitrou. thanks.tedu2-2/+2