History log of /openbsd-src/lib/libcrypto/modes/gcm128.c (Results 1 – 25 of 28)
Revision Date Author Comments
# 4ffa82da 06-Sep-2024 tb <tb@openbsd.org>

Reenable AES-NI in libcrypto

The OPENSSL_cpu_caps() change after the last bump missed a crucial bit:
there is more MD mess in the MI code than anticipated, with the result
that AES is now used witho

Reenable AES-NI in libcrypto

The OPENSSL_cpu_caps() change after the last bump missed a crucial bit:
there is more MD mess in the MI code than anticipated, with the result
that AES is now used without AES-NI on amd64 and i386, hurting machines
that previously greatly benefitted from it.

Temporarily add an internal crypto_cpu_caps_ia32() API that returns the
OPENSSL_ia32cap_P or 0 like OPENSSL_cpu_caps() previously did. This can
be improved after the release.

Regression reported and fix tested by Mark Patruck.
No impact on public ABI or API.

with/ok jsing

PS: Next time my pkg_add feels very slow, I should perhaps not mechanically
blame IEEE 802.11...

show more ...


# 05958c5e 10-Aug-2023 jsing <jsing@openbsd.org>

Improve byte order handling in gcm128.

Replace a pile of byte order handling mess with htobe*() and be*toh().

ok tb@


# 0e3d1220 08-Jul-2023 beck <beck@openbsd.org>

Hide symbols in modes.h

ok tb@


# 0451f6ce 08-Jul-2023 beck <beck@openbsd.org>

Hit modes with the loving mallet of knfmt

ok tb@


# c9675a23 26-Nov-2022 tb <tb@openbsd.org>

Make internal header file names consistent

Libcrypto currently has a mess of *_lcl.h, *_locl.h, and *_local.h names
used for internal headers. Move all these headers we inherited from
OpenSSL to *_l

Make internal header file names consistent

Libcrypto currently has a mess of *_lcl.h, *_locl.h, and *_local.h names
used for internal headers. Move all these headers we inherited from
OpenSSL to *_local.h, reserving the name *_internal.h for our own code.
Similarly, move dtls_locl.h and ssl_locl.h to dtls_local and ssl_local.h.
constant_time_locl.h is moved to constant_time.h since it's special.

Adjust all .c files in libcrypto, libssl and regress.

The diff is mechanical with the exception of tls13_quic.c, where
#include <ssl_locl.h> was fixed manually.

discussed with jsing,
no objection bcook

show more ...


# b663a887 24-Jan-2018 kettenis <kettenis@openbsd.org>

Make the NEON codepaths conditional on __STRICT_ALIGNMENT not being
defined as they rely on unaligned access.

ok joel@


# 5167c6e1 09-Dec-2017 deraadt <deraadt@openbsd.org>

In the middle of CRYPTO_gcm128_finish() there is a complicated #ifdef
block which defines a variable late, after code. Place this chunk into
a { subblock } to satisfy old compilers and old eyes.


# b7f97684 03-Sep-2017 inoguchi <inoguchi@openbsd.org>

Checking sizeof size_t by SIZE_MAX instead of _LP64

ok bcook@


# e37f1ed1 30-Aug-2017 inoguchi <inoguchi@openbsd.org>

Fix ifdef to if in gcm128.c
ok deraadt@ bcook@


# c6b339a5 14-Aug-2017 bcook <bcook@openbsd.org>

fix missing bracket on ARM

ok beck@


# 42077c12 13-Aug-2017 bcook <bcook@openbsd.org>

move endian/word size checks from runtime to compile time

ok guenther@


# 7de8a684 02-May-2017 deraadt <deraadt@openbsd.org>

use freezero() instead of memset/explicit_bzero + free. Substantially
reduces conditional logic (-218, +82).

MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH cache alignment calculation bn/bn_exp.c
wasn'tt quite

use freezero() instead of memset/explicit_bzero + free. Substantially
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

show more ...


# e60c46c4 04-Nov-2016 miod <miod@openbsd.org>

Replace all uses of magic numbers when operating on OPENSSL_ia32_P[] by
meaningful constants in a private header file, so that reviewers can actually
get a chance to figure out what the code is attem

Replace all uses of magic numbers when operating on OPENSSL_ia32_P[] by
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@

show more ...


# 4647d16f 04-Nov-2016 miod <miod@openbsd.org>

Remove I386_ONLY define. It was only used to prefer a
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 t

Remove I386_ONLY define. It was only used to prefer a
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@

show more ...


# 0f777b12 10-Sep-2015 jsing <jsing@openbsd.org>

Correct spelling of OPENSSL_cleanse.

ok miod@


# fb6600ec 10-Feb-2015 miod <miod@openbsd.org>

Remove assert() or OPENSSL_assert() of pointers being non-NULL. The policy
for libraries in OpenBSD is to deliberately let NULL pointers cause a SIGSEGV.
ok doug@ jsing@


# 700744f6 07-Feb-2015 doug <doug@openbsd.org>

Delete a lot of #if 0 code in libressl.

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 deletion

Delete a lot of #if 0 code in libressl.

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@

show more ...


# 4b3ddfed 09-Jul-2014 miod <miod@openbsd.org>

Remove leading underscore from _BYTE_ORDER and _{LITTLE,BIG}_ENDIAN, to be
more friendly to systems where the underscore flavours may be defined as empty.
Found the hard way be bcook@; joint brainstr

Remove leading underscore from _BYTE_ORDER and _{LITTLE,BIG}_ENDIAN, to be
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

show more ...


# f1c87bae 27-Jun-2014 deraadt <deraadt@openbsd.org>

hand-KNF macro the do { } while loops


# c3d6a26a 12-Jun-2014 deraadt <deraadt@openbsd.org>

tags as requested by miod and tedu


# 4163340b 07-Jun-2014 deraadt <deraadt@openbsd.org>

malloc() result does not need a cast.
ok miod


# 96a54dfd 31-May-2014 jsing <jsing@openbsd.org>

Move the cts128 and gcm128 tests to regress.


# d57444e6 07-May-2014 miod <miod@openbsd.org>

Get __STRICT_ALIGNMENT from <machine/endian.h> and decide upon it, rather
than defining it for not (i386 and amd64 (and sometimes s390)) only.

Compile-time tests remain compile-time tests, and runti

Get __STRICT_ALIGNMENT from <machine/endian.h> and decide upon it, rather
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@

show more ...


# 21951995 23-Apr-2014 miod <miod@openbsd.org>

Figure out endianness at compile-time, using _BYTE_ORDER from
<machine/endian.h>, rather than writing 1 to a 32-bit variable and checking
whether the first byte is nonzero.

tweaks and ok matthew@; o

Figure out endianness at compile-time, using _BYTE_ORDER from
<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@

show more ...


# ad9dab52 17-Apr-2014 miod <miod@openbsd.org>

Remove the benchmark part of the selftest. It uses the undocumented
OPENSSL_rdtsc() routine to get a high-precision timestamp, and (although
this is the only user of this routine in libcrypto) forces

Remove the benchmark part of the selftest. It uses the undocumented
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().

show more ...


12