summaryrefslogtreecommitdiff
path: root/lib/libcrypto/crypto
AgeCommit message (Collapse)Author
2016-09-01remove sparc supportTed Unangst
2016-08-31Crank minor due to API additionBob Beck
2016-08-07Update the link for the getentropy(2) manual to man.openbsd.org/Theo Buehler
ok deraadt@
2016-06-30Tighten behavior of _rs_allocate failure for portable arc4random ↵Brent Cook
implementations. In the event of a failure in _rs_allocate for rsx, we still have a reference to freed memory for rs on return. Not a huge deal since we subsequently abort in _rs_init, but it looks strange on its own. ok deraadt@
2016-06-30Tighten behavior of _rs_allocate on Windows.Brent Cook
For Windows, we are simply using calloc, which has two annoyances: the memory has more permissions than needed by default, and it comes from the process heap, which looks like a memory leak since this memory is rightfully never freed. This switches _rs_alloc on Windows to use VirtualAlloc, which restricts the memory to READ|WRITE and keeps the memory out of the process heap. ok deraadt@
2016-05-11remove hppa64 port, which we never got going beyond broken single users.Theo de Raadt
hppa reverse-stack gives us a valuable test case, but most developers don't have a 2nd one to proceed further with this. ok kettenis
2016-04-28Crank majors for lib{crypto,ssl,tls} due to symbol removals, symbolJoel Sing
additions and functionality changes.
2016-04-19fix typo in comment; ok beckT.J. Townsend
2016-01-04Calling clone(2) with CLONE_NEWPID yields multiple processes with pid=1.Brent Cook
Work around this particular case by reseeding whenever pid=1, but as guenther@ notes, directly calling clone(2), and then forking to match another pid, provides other ways to bypass new process detection on Linux. Hopefully at some point Linux implements something like MAP_INHERIT_ZERO, and does not invent a corresponding mechanism to subvert it. Noted by Sebastian Krahmer and the opmsg team. See http://stealth.openwall.net/crypto/randup.c for a test program. ok beck@
2015-12-09bump the major for libcrypto/ssl/tls for a CRYPTO_chacha_20 ABI changeBrent Cook
ok jsing@, deraadt@, beck@
2015-11-02bump minors after adding EVP_aead_chacha20_poly1305_ietf()Reyk Floeter
OK jsing@
2015-10-19Stop supporing "legcay" time formats that OpenSSL supports. Rewrite theBob Beck
utctime and gentime wrappers accordingly. Along with some other cleanup. this also removes the need for timegm. ok bcook@ sthen@ jsing@
2015-10-02Flense the greasy black guts of unreadble string parsing code out of three areasBob Beck
in asn1 and x509 code, all dealing with an ASN1_TIME. This brings the parsing together in one function that converts into a struct tm. While we are at it this also brings us into conformance with RFC 5280 for times allowed in an X509 cert, as OpenSSL is very liberal with what it allows. input and fixes from deraadt@ jsing@ guethther@ and others. ok krw@, guenther@, jsing@
2015-09-14Temporarily revive MD4 for MS CHAP support.Doug Hogan
2015-09-13Crank major version due to removal of SHA-0 and MD4 from libcrypto.Doug Hogan
2015-09-13Remove MD4 support from LibreSSL.Doug Hogan
MD4 should have been removed a long time ago. Also, RFC 6150 moved it to historic in 2011. Rides the major crank from removing SHA-0. Discussed with many including beck@, millert@, djm@, sthen@ ok jsing@, input + ok bcook@
2015-09-13Remove SHA-0 support.Doug Hogan
SHA-0 was withdrawn shortly after publication 20 years ago and replaced with SHA-1. This will require a major crank. ok bcook@, jsing@
2015-09-13Merge ech_ossl.c into ech_key.c - not much point having one file with aJoel Sing
four line function and a tonne of license text. ok beck@
2015-09-13Nuke openssl/e_os2.h, since nothing should be using it.Joel Sing
ok deraadt@ "hurray! finally!" miod@ "Yay!" sthen@
2015-09-13Add a new interface, OPENSSL_cpu_caps(), to return the currently runningMiod Vallat
cpu's specific hardware capabilities users of libcrypto might be interested in, as an integer value. This deprecates the existing OPENSSL_ia32cap() macro and the OPENSSL_ia32cap_loc() function (which returns the pointer so that you can mess with stuff you shouldn't mess with). Interpreting the value returned by OPENSSL_cpu_caps() is, of course, machine-dependent. Minor version bump for libcrypto. ok beck@ jsing@
2015-09-11Pass "openbsd" instead of "openbsd-elf" as the "flavour" to the perl assemblerMiod Vallat
machinery. OpenBSD has never been not ELF on amd64, and changing this will actually make -portable life slightly easier in the near future.
2015-09-11unify files furtherTheo de Raadt
2015-08-25unify versions, so they are easier to diff.Theo de Raadt
2015-08-25KNFTheo de Raadt
2015-07-19Remove OpenSSL engine RSAX.Doug Hogan
OpenSSL stopped building it last year and removed it this year. Based on OpenSSL commit c436e05bdc7f49985a750df64122c960240b3ae1. Also cranked major version in libcrypto, libssl and libtls. "fine with me" bcook@ miod@
2015-06-27Fix pointer to unsigned long conversion.Doug Hogan
bcook@ notes that this check really only impacted 64-bit Windows. Also, changed the check to be unsigned for consistency. ok bcook@
2015-06-20Crank major for libcrypto, ssl and tls due to MDC-2DES removal.Doug Hogan
ok miod@ jsing@
2015-06-20Remove obsolete MDC-2DES from libcrypto.Doug Hogan
ok deraadt@ jsing@ miod@
2015-06-19Disable ENGINE_load_dynamic (dynamic engine support).Brent Cook
We do not build, test or ship any dynamic engines, so we can remove the dynamic engine loader as well. This leaves a stub initialization function in its place. ok beck@, reyk@, miod@
2015-06-13Remove unneeded sys/sysctl.h on linux.Brent Cook
This only provides the sysctl wrapper in glibc, which we do not use and is not available in other libc implementations for Linux. Thanks to ncopa from github.
2015-05-17*** empty log message ***Mark Kettenis
2015-04-27Not all Linux libc's include linux/sysctl.h in sys/sysctl.h.Brent Cook
Include it if we have the sysctl syscall.
2015-04-27Support AIX versions without WPAR support.Brent Cook
From Michael Felt.
2015-04-11Send OPENSSL_issetugid() straight to hell, no final cigarette.Theo de Raadt
The issetugid() API is supposed to make a strong promise where "0 means it is safe to look at the environment". Way back in the past someone on the OpenSSL team responded to the environment access danger by creating a wrapper called OPENSSL_issetugid, and went to use it a number of places. However, by default on systems lacking true issetugid(), OPENSSL_issetugid returns 0. 0 indicating safely. False safety. Which means OPENSSL_issetugid() fails to make any sort of promise about safety, in fact it is just the opposite. Can you believe the OpenSSL team? This nastiness was noticed over the years, however noone could gain traction and get it fixed in OpenSSL. Also see a paragraph about this in http://www.tedunangst.com/flak/post/worst-common-denominator-programming ok jsing
2015-03-30add initial AIX getentropy/arc4random files. Thanks to Michael Felt.Brent Cook
2015-03-22sys/sysctl.h includes linux/sysctl.h, remove the extra unchecked includeBrent Cook
2015-03-18In the neverending saga of enabling and disabling assembler code for shaMiod Vallat
routines on hppa, the cause for sha512-parisc subtly misbehaving has been found: despite having fallback pa1.1 code when running on a 32-bit cpu, the shift constants used in the sigma computations in sha512 are >= 32 and are silently truncated to 5 bits by the assembler, so there is no chance of getting this code to work on a non-pa2.0 processor. However, the pa1.1 fallback code for sha256 is safe, as it never attempts to shift by more than 31, so reenable it again.
2015-03-05Do not use sha512-parisc for now, as it is subtly bugged - passes the shaMiod Vallat
regress tests but causes tls ciphersuite using sha386 to fail; found the hard way by henning@. I can't see anything wrong in the generated assembly code yet, but building a libcrypto with no assembler code but sha512_block_data_order() is enough to trigger Henning's issue, so the bug lies there. No ABI change; ok deraadt@
2015-02-22Bump libcrypto and libssl majors, due to various recent churn.Joel Sing
Discussed with/requested by deraadt@ at the conclusion of s2k15.
2015-02-10unifdef OPENSSL_NO_RFC3779 - this is currently disabled and unlikely toJoel Sing
be enabled, mostly since people use SANs instead. ok beck@ guenther@
2015-02-10Remove RC5 code - this is not currently enabled and is not likely to everJoel Sing
be enabled. Removes one symbol from libcrypto, however there is no ABI change. ok beck@ miod@ tedu@
2015-02-10Remove crypto/store - part of which is "currently highly experimental".Joel Sing
This code is not compiled in and OPENSSL_NO_STORE is already defined in opensslfeatures.h. No symbol removal for libcrypto. ok beck@
2015-02-07Crank major for libcrypto since symbols have been removed.Joel Sing
Requested by deraadt@
2015-02-07Combine c_allc.c and c_alld.c into c_all.c - there is not much point havingJoel Sing
this split across files, especially when two of them have less code than license text. ok bcook@ beck@ doug@ miod@
2015-01-22Add X509_STORE_load_mem() to load certificates from a memory bufferReyk Floeter
instead of disk. OpenSSL didn't provide a built-in API from loading certificates in a chroot'ed process that doesn't have direct access to the files. X509_STORE_load_mem() provides a new backend that will be used by libssl and libtls to implement such privsep-friendly functionality. Adopted for LibreSSL based on older code from relayd (by pyr@ and myself) With feedback and OK bluhm@
2015-01-19Add arc4random/getentropy shims for NetBSD.Brent Cook
The latest NetBSD (6.1.5) arc4random does not appear to reseed the CRNG state after a fork, so provide an override until the fork-safe version in CVS appears in a release. These are the same as the FreeBSD shims. ok deraadt@
2015-01-15back in september I did the large abstraction refactoring to allow theseTheo de Raadt
other systems to fit into the same mold, so add copyright
2015-01-07mix in more virtual memory and process informationBrent Cook
2015-01-06add initial HP-UX getentropy/arc4random support.Brent Cook
patch from Kinichiro Inoguchi, tested on HP-UX 11.31 ok deraadt@
2014-12-07Revert to the use of C code for the basic BN routines (bn_add_words,Miod Vallat
bn_div_words, bn_mul_add_words, bn_mul_words, bn_sqr_words, bn_sub_words) on sgi, because the generated assembly code isn't R4000-safe.