summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2023-04-18Move some includes out of OPENSSL_NO_DEPRECATEDTheo Buehler
Some headers were included conditionally on OPENSSL_NO_DEPRECATED in hopes that eventually the mess of everything includes everything will magically resolve itself. Of course everyone would end up building openssl with OPENSSL_NO_DEPRECATED over time... Right. Surprisingly, the ecosystem has come to rely on these implicit inclusions, so about two dozen ports would fail to build because of this. Patching this would be easy but really not worth the effort. ok jsing
2023-04-17Drop two useless READMEsTheo Buehler
"go ahead" jsing
2023-04-17c_zlib.c needs bio_local.h with -DZLIB.Theo Buehler
Apparently nobody tried to compile libcrypto with ZLI since Jan 2022. Maybe this means that we can unifdef -U ZLIB or maybe not...
2023-04-17Tweak indent and use named registers.Joel Sing
No functional change.
2023-04-17Hook sha3 up to build.Joel Sing
ok tb@
2023-04-17Move BN_bn2mpi()/BN_mpi2bn() into bn_convert.cJoel Sing
2023-04-17Use C99 initializers for the default_pctx and mark it static constTheo Buehler
2023-04-17Add missing const qualifiers to the v3_* externsTheo Buehler
ok jsing
2023-04-17Fix whitespace in DHparam_print_fp()Theo Buehler
2023-04-17Remove now unused dh_prn.cTheo Buehler
2023-04-17Drop dh_prn.cTheo Buehler
2023-04-17Move DHparam_print_fp() next to DHparam_print()Theo Buehler
As usual with the fp suffix, the former wraps the latter with a file BIO. There is no reason for this function to be in a separate file.
2023-04-17remove bad Pp;Jason McIntyre
(sorry, otto, for not spotting in the updated diff)
2023-04-17fix double wordJonathan Gray
2023-04-16Fix previous: add a missing andTheo Buehler
2023-04-16Dump (leak) info using utrace(2) and compile the code always inOtto Moerbeek
except for bootblocks. This way we have built-in leak detecction always (if enable by malloc flags). See man pages for details.
2023-04-16Garbage collect the now unused obfuscating macro string_stack_free()Theo Buehler
2023-04-16Inline the three uses of string_stack_free()Theo Buehler
sk_OPENSSL_STRING_pop_free() is much more explicit and isn't that much more complicated. x509_util.c can also use it directly... No binary change
2023-04-16Remove the now unused vpm_int.hTheo Buehler
2023-04-16x509_vfy.c and x509_vpm.c don't need vpm_int.h anymoreTheo Buehler
2023-04-16Move X509_VERIFY_PARAM_st from vpm_int.h to x509_local.hTheo Buehler
2023-04-16Provide EVP methods for SHA3 224/256/384/512.Joel Sing
ok tb@
2023-04-16Provide EVP methods for SHA512/224 and SHA512/256.Joel Sing
ok tb@
2023-04-16Bounds check mdlen that is passed to sha3_init().Joel Sing
While here, use KECCAK_BYTE_WIDTH instead of hardcoding the value.
2023-04-16Shuffle ext_cmp() and ext_list_free() up a bitTheo Buehler
2023-04-16Remove unnecessary prototypes in the middle of the codeTheo Buehler
In addition, ext_cmp() was already prototyped earlier...
2023-04-16Use more usual version of inlined nitems(). No binary change.Theo Buehler
2023-04-16Fix comment formatting and grammar, drop usless and outdated commentTheo Buehler
2023-04-16Remove now empty/unused ext_dat.hTheo Buehler
2023-04-16Merge ext_dat.h back into x509_lib.cTheo Buehler
There is no point in having this in a separate internal header. discussed with jsing
2023-04-16Mark X9.31 BN API for removalTheo Buehler
This supports a mostly forgotten, seemingly unused and long retired standard. No need for this in our public API Dyson sphere. ok jsing
2023-04-16The BN reciprocal API will also become internal-onlyTheo Buehler
This is unused outside of the library and could do with some reworking. That's easier without having to care about outside consumers. ok jsing
2023-04-16Various BN*init() will be removed from the public APITheo Buehler
With the corresponding structs now being opaque, the only thing they are good for outside the library are memory leaks. They will be removed completely or become internal only. ok jsing
2023-04-16Mark public bn_nist and ec_nist API for removalTheo Buehler
The faster nist code is rife with problematic C. While this is generally considered to be a pleonasm nowadays, here it specifically refers to aliasing issues and other flavors of undefined behavior. With compilers and standardization committees becoming seemingly more determined about making C even more unusable than it already is, this code has resulted in miscompilations and generally is a target rich environment for fuzzers to feast on. We're better off without it. Go look while it's still there. It's some of the very worst we have to offer. ok jsing
2023-04-16Mark EC_KEY_{get,insert}_method_data() for removalTheo Buehler
This is unused and in the way of some house keeping. Thus it will be relocated to the attic. ok jsing
2023-04-16Mark TS_VERIFY_CTX_init() for removalTheo Buehler
With opaque TS_VERIFY_CTX the init function dangerous and useless. It will be dropped. ok jsing
2023-04-16Prepare addition of X509_STORE_CTX_get1_{certs,crls}(3)Theo Buehler
X509_STORE_get1_{certs,crls}(3) was added to the OpenSSL 1.1 API with the usual care. At some point later it was noticed that they didn't deal with an X509_STORE at all, but rather with an X509_STORE_CTX, so were misnamed. The fact that X509_STORE_CTX and X509_STORE have their roles reversed when compared to other FOO vs FOO_CTX in this API may or may not be related. Anyway, the X509_STORE versions will be demoted to compat defines and the X509_STORE_CTX will be added to match OpenSSL 1.1 API more closely. This was pointed out by schwarze a long time ago and missed in a few bumps. Hopefully we'll manage to do it this time around. ok jsing
2023-04-16Mark remaining policy tree public API for removalTheo Buehler
ok jsing
2023-04-16Annotate policy tree STACK_OF() goo for removal from public APITheo Buehler
ok jsing
2023-04-16The policy tree types become internal ony. Annotate them.Theo Buehler
ok jsing
2023-04-16Cipher text stealing will go away. Mark it for removal.Theo Buehler
ok jsing
2023-04-16Mark proxy policy API for removal in upcoming bumpTheo Buehler
ok jsing
2023-04-16Remove the now unused ex_pcpathlen from the X509 structTheo Buehler
ok jsing
2023-04-16More ProxyCertInfo tentacles go to the atticTheo Buehler
This removes ProxyCertInfo from extension caching, issuer checking and it also drops the special path validation for proxy certs from the legacy verifier. ok jsing
2023-04-16Remove some dead code from the new verifierTheo Buehler
The new verifier API is currently unused as we still operate the verifier in legacy mode. Therefore ctx->xsc is always set and the EXFLAG_PROXY will soon be dropped from the library, so this error on encountering proxy certs is effectively doubly dead code. ok jsing
2023-04-16Drop support for the ProxyCertInfo extensionTheo Buehler
This removes the ProxyCertInfo extension from RFC 3820 from the list of supported extensions. Since it is a critical extension, this means that certificates containing it will no longer be considered valid by default. ok jsing
2023-04-16Make pcy_int.h pull in x509_local.h it will need it soonTheo Buehler
ok jsing
2023-04-15Use size_t rather than int.Joel Sing
Also buy a vowel for rsiz.
2023-04-15Add SHA3 digest length define that was previously missed.Joel Sing
2023-04-15Remove sha3() function, which will not be used or exposed.Joel Sing