| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Let the compiler optimize these. Even older versions of gcc generate
equal or better quality code than the inline asm.
ok miod@
|
|
|
|
|
|
|
|
|
|
|
| |
These macros and asm inlines simulate a function returning a value, but
nothing ever uses this return value. Remove the pseudo-returns and
(void) casts discarding the unused values.
This, maybe unsurprisingly, speeds things up a bit. It also removes the
GCC 4.9 warnings about unused values.
ok miod@ deraadt@
|
|
|
|
| |
like the sysctl path
|
|
|
|
|
|
|
|
|
|
|
| |
This enables support for the new getrandom(2) syscall in Linux 3.17.
If the call exists and fails, return a failure in getentropy(2) emulation as
well. This adds a EINTR check in case the urandom pool is not initialized.
Tested on Fedora Rawhide with 3.17rc0 and Ubuntu 14.04
ok deraadt@
|
|
|
|
| |
millert@ and jmc@ agree that "overriden" is wrong
|
|
|
|
|
| |
case of failing to map the 2nd object.
found by Paul Maurers
|
|
|
|
|
| |
Without the cast/mask, the compiler is allowed to optimize this directly
to the correct CPU intrinsic for rotate.
|
|
|
|
|
|
|
|
|
| |
Most assembly blocks remain inactive if OPENSSL_NO_ASM is not defined,
only enabling inline assembly, but the RSA / RC4-5 blocks (used only in
amd64 systems) turn on implicitly. Guard these two as well.
This simplifies enabling just inline ASM in portable, no effective
change in OpenBSD.
|
|
|
|
|
|
|
|
|
|
|
| |
- make sure the output buffer is always NUL terminated if buf_len
was initially greater than zero.
- reject OIDs that are too long, too short, or not in proper base-127
Based on
https://git.openssl.org/gitweb/?p=openssl.git;a=commit;h=0042fb5fd1c9d257d713b15a1f45da05cf5c1c87
ok bcook@
|
|
|
|
|
|
|
|
| |
behaviour that allows a PEM block to be fed through the base64 decoder.
Reported by Dmitry Eremin-Solenikov on tech@
ok deraadt@ tedu@
|
|
|
|
|
|
|
|
| |
and UI_add_verify_string() return -1 (and maybe -2?) on failure and
>=0 on success, instead of always zero on success
problem reported by Mark Patruck (mark (at) wrapped.cx)
ok miod@
|
|
|
|
| |
ok guenther@ jsing@
|
|
|
|
|
|
|
|
|
|
|
| |
the details are under embargo. The original plan was to wait for the
embargo to lift, but we've been waiting for quite some time, and there's no
indication of when or even if it will end. No sense in dragging this out
any longer.
The SRP code has never been enabled in OpenBSD, though I understand it is
in use by some other people. However, in light of this and other issues,
we're officially saying SRP is outside the scope of libressl. (For now.)
|
| |
|
|
|
|
|
|
| |
Remove unnecessary NULL check.
ok miod@
|
|
|
|
|
|
|
| |
up and return failure, be sure the cleanup work does NOT free objects which
are still being referenced by other objects.
ok guenther@
|
|
|
|
|
|
|
| |
within libcrypto are safe, but until we can change this function prototype to
use size_t instead of int, better be safe than sorry.
tweaks and ok guenther@
|
|
|
|
|
|
| |
value is happily dereferenced without checking it for being non-NULL).
ok beck@
|
|
|
|
|
|
|
| |
EVP_CTRL_RAND_KEY method handlers, rather than generating a random odd key and
not even checking it against the weak keys list.
ok beck@
|
|
|
|
|
|
|
|
|
|
|
| |
it is not one of the weak and semi-weak keys.
Even though the probability of generating a weak key with incorrect parity is
abysmally small, there is no reason to be correct (although, if you're in a
need for fresh DES keys nowadays, you should seriously consider switching to
a stronger symmetric cipher algorithm).
ok beck@
|
|
|
|
|
| |
NULL before an intrinsic strdup.
ok miod@
|
| |
|
| |
|
|
|
|
|
|
|
| |
Also, zero the SHA256 context.
suggested by "eric" in a comment on an opensslrampage.org post
ok miod@ deraadt@
|
| |
|
|
|
|
|
|
|
|
| |
Move <sys/mman.h> and raise(SIGKILL) calls to OS-specific headers.
On OpenBSD, move thread_private.h as well to arc4random.h.
On Windows, use TerminateProcess on getentropy failure.
ok deraadt@
|
|
|
|
|
| |
It may make sense to later replace this with a Critical Section later.
ok guenther@
|
|
|
|
|
|
| |
it shows up in libraries. Even the system call is probably not finalized.
Bit dissapointed it has turned out to be a descriptor-less read() with
EINVAL and EINTR error conditions, but we can work with it.
|
|
|
|
| |
ok bcook@
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
into one if a system has an awesome getentropy(). In that case it
is valid to totally throw away the rsx state in the child. If the
getentropy() is not very good and has a lazy reseed operation, this
combining is a bad idea, and the reseed should probably continue to
use the "something old, something new" mix. _rs_allocate() can
accomodate either method, but not on the fly.
ok matthew
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Use "len" parameter instead of sizeof(*rs).
2. Simplify the atfork handler to be strictly async signal safe by
simply writing to a global volatile sig_atomic_t object, and then
checking for this in _rs_forkdetect(). (Idea from discussions with
Szabolcs Nagy and Rich Felker.)
3. Use memset(rs, 0, sizeof(*rs)) to match OpenBSD's MAP_INHERIT_ZERO
fork semantics to avoid any skew in behavior across platforms.
ok deraadt
|
|
|
|
|
| |
making it much easier for libressl -portable to fill in the gaps.
ok bcook beck
|
| |
|
|
|
|
|
|
|
|
| |
leaks.
From miod@
OK from miod@ and guenther@
|
|
|
|
|
|
|
| |
Linux (such as Ubuntu 12.04LTS) that don't have it yet. Seems the AT_XXX
defines are pulled in by <link.h> now.
ok beck@
|
|
|
|
| |
locked throughout.
|
|
|
|
| |
ok tedu
|
|
|
|
|
|
| |
intrinsics. This is the easy ones, a few left to check one at
a time.
ok miod@ deraadt@
|
|
|
|
| |
OK from beck@ and miod@
|
| |
|
|
|
|
| |
ok jsing@
|
|
|
|
|
|
|
| |
into the hash; hoping the system has some ASLR or PIE. This replaces and
substantially improves upon &main which proved problematic with some picky
linkers.
Work with kettenis, testing by beck
|
|
|
|
| |
ok beck
|
|
|
|
| |
EVP_MD_CTX_cleanup() to be called.
|