summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Streamline X509_EXTENSION_create_by_OBJ()tb2024-07-121-9/+10
| | | | ok jsing
* Clean up X509_EXTENSION_create_by_NID()tb2024-07-121-9/+5
| | | | | | | | Remove unnecessary ret parameter and freeing of obj (which looks like a double free or freeing of unallocated memory but actually isn't due to various magic flags). Also make this const correct. ok jsing
* Rewrite X509v3_add_ext()tb2024-07-121-24/+23
| | | | | | | | | | | | | This is another brilliancy straight out of muppet labs. Overeager and misguided sprinkling of NULL checks, going through the trademark poor code review, made this have semantics not matching what almost every other function with this signature would be doing in OpenSSL land. This is a long standing mistake we can't fix without introducing portability traps, but at least annotate it. Simplify the elaborate dance steps and make this resemble actual code. ok jsing
* Simplify X509v3_get_ext() and X509v3_delete_ext()tb2024-07-121-7/+1
| | | | | | Drop unnecessary checks that are part of the stack API. ok jsing
* Align X509v3_get_ext_by_critical() with X509v3_get_ext_by_OBJ()tb2024-07-121-12/+9
| | | | | | Plus, replace a manual check with a call to X509_EXTENSION_get_critical(). ok jsing
* Clean up X509v3_get_ext_by_OBJ()tb2024-07-121-11/+7
| | | | | | | | Like most of its siblings, this function can be simplified significantly by making proper use of the API that is being built. Drop unnecessary NULL checks and other weirdness and add some const correctness. ok jsing
* use sigaction() to setup SIGARLM so we can set SA_RESTART, andderaadt2024-07-121-6/+8
| | | | | | remove the re-arming in the handler. Better than using siginterrupt(), and avoids the errno saving requirement in the handler also. ok guenther millert
* Despite being an ELF citizen, hppa is its own special snowflake and requiresmiod2024-07-121-1/+5
| | | | | | different asm stanzas to produce strong aliases. This unbreaks libssl on hppa after the recent switch to LIBRESSL_NAMESPACE.
* Despite being an ELF citizen, hppa is its own special snowflake and requiresmiod2024-07-111-1/+5
| | | | | | | different asm stanzas to produce strong aliases. This unbreaks libcrypto (and thus ssh, among other things) on hppa after the recent switch to LIBRESSL_CRYPTO_NAMESPACE.
* Adjust regress to match changes in SSL_select_next_proto() argstb2024-07-111-123/+99
|
* Adjust documentation for SSL_select_next_proto()tb2024-07-111-30/+48
| | | | | | | | Use better argument names, add a link to the relevant standards and add CAVEATS and BUGS sections pointing out a few pitfalls. discussed with davidben ok beck
* Follow BoringSSL's nomenclature in SSL_select_next_proto()tb2024-07-111-28/+30
| | | | | | | | | | | | | | | | | | | SSL_select_next_poto() was written with NPN in mind. NPN has a weird fallback mechanism which is baked into the API. This is makes no sense for ALPN, where the API behavior is undesirable since it a server should not end up choosing a protocol it doesn't (want to) support. Arguably, ALPN should simply have had its own API for protocol selection supporting the proper semantics, instead of shoehorning an NPN API into working for ALPN. Commit https://boringssl-review.googlesource.com/c/boringssl/+/17206/ renamed the arguments to work for both NPN and ALPN, with the slight downside of honoring client preference instead of the SHOULD in RFC 7301, section 3.2. This grates for most consumers in the wild, but so be it. The behavior is saner and safer. discussed with davidben ok beck
* Zap warning against __findenv usage, it is not exported by libcjca2024-07-101-3/+1
| | | | | The comment probably made sense before guenther restricted the symbols exported by libc in 2015.
* Remove the static symbols.namespace, and just generate the _libre_beck2024-07-102-3359/+3
| | | | | | symbols from symbols.list now that we have everything hidden ok tb@
* Teach symbols test about the namespacetb2024-07-102-3/+9
| | | | | | This ensures that when adding public symbols, the magic is not omitted. with/ok beck
* forgot to add a history section for the TLS PRF APItb2024-07-101-1/+4
|
* link EVP_PKEY_CTX_set_tls1_prf_md.3 to buildtb2024-07-101-1/+2
|
* Import EVP_PKEY_CTX_set_tls1_prf_md.3 from OpenSSL 1.1.1tb2024-07-101-0/+168
| | | | | With only slight application of color to this entelodont's lips. It's the usual deal - hard to say what's worse, the code or its docs...
* Including kdf.h isn't enough, you also need evp.htb2024-07-101-2/+3
| | | | | It will be a cold day in hell before I see an OpenSSL manpage without mistakes in it.
* Unwrap two linestb2024-07-101-7/+4
|
* Add another empty linetb2024-07-091-1/+2
|
* Turn tls1_prf_alg() into single exittb2024-07-091-9/+11
| | | | | requested by jsing on review ok beck
* Unwrap a few more linestb2024-07-091-9/+5
|
* Unwrap a couple of linestb2024-07-091-5/+3
|
* Align math with t1_enc.ctb2024-07-091-6/+8
| | | | suggested by jsing on review
* Minor cosmetics in pkey_tls1_prf_derive()tb2024-07-091-5/+3
| | | | noticed by jsing on review
* Replace explicit_bzero() plus free() with freezero()tb2024-07-091-3/+2
| | | | This is simpler, if slightly more expensive
* Improve test coverage for TLS1-PRFtb2024-07-091-4/+177
| | | | | | This is basically a copy of the libssl unit tests, moved to libcrypto to avoid starting the infection of libssl with this particular piece of EVP garbage.
* Add a minimal regress test for TLS1-PRFtb2024-07-091-1/+96
|
* Shuffle things into a more sensible ordertb2024-07-091-63/+58
| | | | no functional change
* Use better order in EVP_PKEY_CTRL_TLS_SECRETtb2024-07-091-6/+5
| | | | Also avoid an unnecessary NULL check.
* Add tls1_prf_pkey_meth to pkey_methodstb2024-07-091-1/+3
| | | | ok jsing
* Make a NULL check explicittb2024-07-091-2/+2
|
* Zap or align some ugly commentstb2024-07-091-4/+3
|
* Test & assign once moretb2024-07-091-4/+4
|
* sec_len -> secret_lentb2024-07-091-3/+3
|
* Test and assign in tls1_prf_P_hash()tb2024-07-091-5/+8
|
* Fix whitespace around '/'tb2024-07-091-4/+4
|
* Invert logic in tls1_prf_alg()tb2024-07-091-22/+22
|
* olen -> out_lentb2024-07-091-15/+15
|
* Add a few empty linestb2024-07-091-1/+7
|
* seedlen -> seed_lentb2024-07-091-10/+10
|
* seclen -> secret_lentb2024-07-091-7/+7
|
* slen -> secret_lentb2024-07-091-7/+8
|
* sec -> secrettb2024-07-091-17/+17
|
* Replace local typedef with spelling out the struct nametb2024-07-091-8/+8
|
* Remove a few useless commentstb2024-07-091-6/+1
|
* Apply a knfmt(8) sledgehammertb2024-07-091-226/+236
|
* Add an RCS tagtb2024-07-091-1/+1
|
* Replace license stub with full licensetb2024-07-091-5/+55
| | | | | This reverts to the license added in OpenSSL's initial import of this file in commit 1eff3485b63f84956b5f212aa4d853783bf6c8b5