summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2024-09-17getdents(2) was pushed into rpath because it exposes pathnameTheo de Raadt
information, similar to getcwd(2). Move it to the right place, and also say why. report from henryfordkjv@gmail.com
2024-09-15remove unused variablesJonathan Gray
2024-09-09Make error 235 resolve to "no application protocol"Theo Buehler
We accidentally have two errors 235 since we didn't notice that OpenSSL removed the unused SSL_R_TRIED_TO_USE_UNSUPPORTED_CIPHER and later that becamse SSL_R_NO_APPLICATION_PROTOCOL. Getting an "unsupported cipher" error when fiddling with ALPN is confusing, so fix that. ok jsing
2024-09-09Fix alert callback in the QUIC layerTheo Buehler
Only close_notify and user_cancelled are warning alerts. All others should be fatal. In order for the lower layers to behave correctly, the return code for fatal alerts needs to be TLS13_IO_ALERT instead of TLS13_IO_SUCCESS. Failure to signal handshake failure in the public API led to a crash in HAProxy when forcing the tls cipher to TLS_AES_128_CCM_SHA256 as found by haproxyfred while investigating https://github.com/haproxy/haproxy/issues/2569 Kenjiro Nakayama found misbehavior of ngtcp2-based servers, wrote a similar patch and tested this version. Fixes https://github.com/libressl/portable/issues/1093 ok jsing
2024-09-09Add and use tls13_record_layer_alert_sent()Theo Buehler
This is a small refactoring that wraps a direct call to the record layer's alert_sent() callback into a handler for upcoming reuse in the QUIC code. No functional change. ok jsing
2024-09-06Reenable AES-NI in libcryptoTheo Buehler
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...
2024-09-06Adjust documentation to work without X509_LOOKUP_by_subject()Theo Buehler
X509_LOOKUP_by_subject() was made internal a while back. Its documentation was very detailed, so this was a bit of a tangle to undo.
2024-09-05Avoid out-of-bounds pointer arithmetic in inflateCopy().Theo Buehler
from upstream, no ABI or API change. ok beck deraadt
2024-09-05Update libexpat to version 2.6.3.Alexander Bluhm
Relevant for OpenBSD are security fixes #887 #890 #888 #891 #889 #892, other changes #886 #885, infrastructure #880. No library bump necessary. CVE-2024-45490 CVE-2024-45491 CVE-2024-45492 OK tb@ deraadt@
2024-09-03typo in comment; Effectivly -> Effectively; ok gilles@Omar Polo
2024-09-03typo in comment; saveguard -> safeguard; ok gilles@Omar Polo
2024-09-03wild white spaceTheo de Raadt
2024-09-03check_sym: adjust logic not to exit 1 in the default dynamic modeTheo Buehler
ok guenther
2024-09-02Remove X509_check_trust documentationTheo Buehler
2024-09-02The X509at_* manuals are no longer neededTheo Buehler
2024-09-02Also remove .Xr to X509at_*Theo Buehler
2024-09-02Excise X509at_* from X509_REQ_* documentationTheo Buehler
2024-09-02Rename lastpos to start_after to match other, similar manualsTheo Buehler
2024-09-02More X509at_* removalTheo Buehler
2024-09-02Remove mention of the no longer public X509at_* functionsTheo Buehler
2024-09-02Adjust function signatures for const X509_LOOKUP_METHODTheo Buehler
2024-08-31Rewrite X509V3_add_value() to a single exit idiomTheo Buehler
ok jsing
2024-08-31Remove redundant COPYRIGHT file.Joel Sing
This is already included at the top of each file in this directory. Prompted by tb@
2024-08-31Make fcrypt_body() static and remove prototype.Joel Sing
2024-08-31Unifdef DES_PTR, DES_RISC1 and DES_RISC2.Joel Sing
These are all go fast knobs that convolute the code and can be dangerous. Lets presume that we have a modern and somewhat capable C compiler instead. ok tb@
2024-08-31Unifdef OPENBSD_DES_ASM.Joel Sing
There are no assembly implementations now. ok tb@
2024-08-31Inline and remove spr.h.Joel Sing
This is only included once in des_enc.c - inline the tables instead. Prompted by tb@
2024-08-31Combine DES code into a smaller set of files.Joel Sing
Discussed with tb@
2024-08-31Merge fcrypt_b.c into fcrypt.c.Joel Sing
There is no need for these to be separate (presumably done due to assembly implementations, even though there are #ifdef as well). Discussed with tb@
2024-08-31Remove now unused ncbc_enc.c.Joel Sing
2024-08-31Expand DES_ncbc_encrypt() in des_enc.c.Joel Sing
Copy ncbc_enc.c where it was previously #included, then clean up with `unifdef -m -UCBC_ENC_C__DONT_UPDATE_IV`. Discussed with tb@
2024-08-31Expand DES_cbc_encrypt() in cbc_enc.c.Joel Sing
Copy ncbc_enc.c where it was previously #included, then clean up with `unifdef -m -DCBC_ENC_C__DONT_UPDATE_IV`. Discussed with tb@
2024-08-31Update for OPENSSL_cpu_caps() now being machine independent.Joel Sing
ok tb@
2024-08-31Make OPENSSL_cpu_caps() machine independent.Joel Sing
OPENSSL_cpu_caps() is currently machine dependent and exposes CPUID data on amd64 and i386. However, what it is really used for is to indicate whether specific algorithms are accelerated on the given hardware. Change OPENSSL_cpu_caps() so that it returns a machine indepent value, which decouples it from amd64/i386 and will allow it to be used appropriately on other platforms in the future. ok tb@
2024-08-31major bump for libcrypto libssl and libtlsTheo Buehler
2024-08-31Bump LIBRESSL_VERSION_NUMBERTheo Buehler
2024-08-31Remove SSL_add_compression_methodTheo Buehler
2024-08-31Expose X509_get_signature_infoTheo Buehler
To compensate for all the removals, a single, small, constructive piece of this bump: expose X509_get_signature_info() so that libssl's security level API can handle RSA-PSS certificates correctly. ok beck jsing
2024-08-31Make X509at_* API internalTheo Buehler
The only consumer, yara, has been adjusted. It will be some more work to remove this idiocy internally, but at least we will no longer have to care about external consumers. ok beck jsing
2024-08-31Unexport OPENSSL_cpuid_setup and OPENSSL_ia32cap_PTheo Buehler
This allows us in particular to get rid of the MD Symbols.list which were needed on amd64 and i386 for llvm 16 a while back. OPENSSL_ia32cap_P was never properly exported since the symbols were marked .hidden in the asm. ok beck jsing
2024-08-31Zap HMAC_InitTheo Buehler
Long deprecated, last users have been fixed. ok beck jsing
2024-08-31Nuke the whrlpool (named after the galaxy) from orbitTheo Buehler
It's just gross. Only used by a popular disk encryption utility on an all-too-popular OS one or two decades back. ok beck jsing
2024-08-31Remove DES_enc_{read,write} and DES_rw_modeTheo Buehler
Unfortunately we'll probably never be able to get rid of DES entirely. One part of it that is old enough to be a grandparent can go, though. ok beck jsing
2024-08-31Garbage collec UI_UTIL remnantsTheo Buehler
ok beck jsing
2024-08-31Remove EVP_PKEY.*attr* APITheo Buehler
I ranted enough about this recently. PKCS#12. Microsoft. 'nuff said. ok beck jsing
2024-08-31Move BIT_STRING_BITNAME tables to constTheo Buehler
Another bunch of const correctness fixes for global tables. These are used to map ns cert types, key usage types and CRL reasons to strings and vice versa. By the looks of it, nobody ever figured out how to use this (need I mention that it's convoluted?). ok beck jsing
2024-08-31const correct X509_LOOKUP_METHODTheo Buehler
With this another family of global tables becomes const as it should always have been. ok beck jsing
2024-08-31Remove X509_REQ_{set,get}_extension_nids()Theo Buehler
LibreSSL no longer supports non-standard OIDs for use in the extensions attribute of CSRs. The API that enabled that (and nobody used of course) can now go. ok beck jsing
2024-08-31Make X509_VAL opaqueTheo Buehler
Nothing needs to reach into this structure, which is part of certificates. So hide its innards. ok beck jsing
2024-08-31Remove X509_check_trust() and some related definesTheo Buehler
Someone thought it would be a good idea to append non-standard trust information to the certs in the trust store. This API is used to inspect that depending on the intended purpose of the cert. Only M2Crypto thought it necessary to expose this. It was adjusted. ok beck jsing