| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
These did not get removed from here when they got removed
from Symbols.list after a major bump.
ok tb@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This cache was added because our time conversion used timegm()
and gmtime() which aren't very cheap. These calls were noticably
expensive when profiling things like rpki-client which do many
X.509 validations.
Now that we convert times using julien seconds from the unix
epoch, BoringSSL style, instead of a julien days from a
Byzantine date, we no longer use timegm() and gmtime().
Since the julien seconds calculaitons are cheap for conversion,
we don't need to bother caching this, it doesn't have a noticable
performance impact.
While we are at this correct a bug where
x509_verify_asn1_time_to_time_t was not NULL safe.
Tested for performance regressions by tb@ and job@
ok tb@ job@
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This makes it where people can't put dumb values in certs without
trying harder, and changes the regress to test this.
GENERALIZED times outside of the RFC5280 spec are required for OCSP
but these should be constructed with the GENERALIZED time string
setters.
ok tb@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an API to add an OID attribute to the set of SMIMECapabilities.
While attributes are complicated in general, this only supports simple
capabilities encoded as an OID with an optional integer parameter (e.g.,
the key size of a cipher).
Make this API transactional, i.e., don't leave a new empty set behind on
failure or leak the key size if setting the parameter on the X509_ALGOR
fails.
Also convert to single exit and add a doc comment with a reference.
ok beck
|
|
|
|
|
|
|
|
|
| |
Vincent Lee spotted that I failed to update numbers that count how many
functions are documented here when removing {CRYPTO,OPENSSL}_realloc.
This isn't helpful information and nobody will remember to go look for
such numbers next time this page is adjusted, so remove the counts.
agreement from jmc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unlike for previous TLS versions, TLSv1.3 servers can send the supported
groups extension to inform a client of the server's preferences. The
intention is that a client can adapt for subsequent commits. We ignore
this info for now, but sthen ran into java-based servers that do this.
Thus, rejecting the extension outright was incorrect. Instead, only allow
the extension in TLSv1.3 encrypted extensions. This way the F5 workaround
is also disabled, but we continue to interoperate with TLSv1.3 servers that
do follow the last paragraph of RFC 8446, section 4.2.7.
This mostly adjusts outdated/misleading comments.
ok jsing sthen
|
|
|
|
|
|
|
|
| |
groups extension from the server). It triggers 'CONNECT_CR_SRVR_HELLO:tlsv1
alert decode error' when connecting to a (modern) java server (tomcat 10.1.18
on openjdk 17.0.10).
"please revert" tb@
|
|
|
|
| |
ok jsing
|
|
|
|
| |
system will allocate a port.
|
|
|
|
|
|
| |
HMAC_CTX_reset() and HMAC_Init() had missing LCRYPTO_ALIAS().
ok beck jsing
|
|
|
|
|
|
|
|
|
| |
If namespace builds are enabled, static links don't work due to missing
_lcry_* symbols. Make LCRYPTO_UNUSED() match LCRYPTO_USED() with an extra
deprecated attribute. This way we can remove the !LIBRESSL_INTERNAL #ifdef
wrapping in public headers.
ok beck joshua
|
|
|
|
|
|
|
| |
This is only there to pretend a quic method was set on the SSL, but
apparently some compilers warn about an uninitialized variable.
from Christian Andersen
|
|
|
|
|
|
| |
Appeases some compiler.
from Christian Andersen
|
|
|
|
|
|
| |
This is a wrapper around lh_free() which is already tested.
From Christian Andersen
|
|
|
|
|
|
|
|
|
|
| |
page size, rather than relying upon mprotect to round up to the actual mmu
page size.
This repairs malloc operation on systems where the malloc page size
(1 << _MAX_PAGE_SHIFT) is larger than the mmu page size.
ok otto@
|
|
|
|
| |
ok jsing
|
|
|
|
| |
ok tb
|
|
|
|
| |
ok tb@
|
|
|
|
| |
ok tb
|
|
|
|
|
| |
This increases the chance of triggering bugs due to input and/or randomised
padding.
|
|
|
|
| |
ok jsing
|
| |
|
|
|
|
| |
ok jsing
|
|
|
|
| |
Requested by tb@
|
|
|
|
| |
Nothing does flag handling in these tests.
|
| |
|
|
|
|
|
|
|
| |
Always provide AES_{encrypt,decrypt}() via C functions, which then either
use a C implementation or call the assembly implementation.
ok tb@
|
| |
|
| |
|
| |
|
|
|
|
| |
These files are now built on all platforms.
|
|
|
|
| |
ok tb
|
| |
|
|
|
|
|
|
|
| |
This is a legacy algorithm and the assembly is only marginally faster than
the C code.
Discussed with beck@ and tb@
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds support for Edwards curve digital signature algorithms in the
cryptographic message syntax, as specified in RFC 8419. Only Ed25519 is
supported since that is the only EdDSA algorithm that LibreSSL supports
(this is unlikely to change ever, but, as they say - never is a very
long time).
This has the usual curly interactions between EVP and CMS with poorly
documented interfaces and lots of confusing magic return values and
controls. This improves upon existing control handlers by documenting
what is being done and why. Unlike other (draft) implementations we
also happen to use the correct hashing algorithm.
There are no plans to implement RFC 8418.
joint work with job at p2k23
ok jsing
|
|
|
|
| |
This is now built on all platforms.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
If any OBJ_dup() fails along the way, a partially copied policy stack
would remain on the params object. This makes no sense. Implement and
use an sk_ASN1_OBJECT_deep_copy(), that copies the full stack or else
returns NULL.
Remove unnecessary NULL check and streamline some other logic.
ok jsing
|
|
|
|
|
|
| |
Streamline some checks and use more idiomatic sk_push() error check
ok jsing
|
|
|
|
|
|
|
|
| |
Always include aes_core.c and provide AES_set_{encrypt,decrypt}_key() via C
functions, which then either use a C implementation or call the assembly
implementation.
ok tb@
|
|
|
|
| |
discussed with jsing
|
|
|
|
|
|
|
|
|
|
| |
The streaming BIO API is full of missing error checks. This diff reverts
the logic so that the single call to ASN1_item_i2d_bio() is error checked
(it has the usual 1/0 return values), unindents the bulk of the code and
propagates the SMIME_crlf_copy() return value (alos 1/0) to be the actual
error.
ok jsing
|
|
|
|
|
|
|
| |
Buy a vowel at the same time, since we're no longer limited to 8.3 file
names.
Discussed with tb@
|
| |
|
|
|
|
| |
ok jsing tb
|
|
|
|
| |
This is now built on all platforms.
|