#
ccf5fc62 |
| 09-Jul-2024 |
beck <beck@openbsd.org> |
Don't push the error stack in ssl_sigalg_select()
Doing so breaks certificate selection if a TLS 1.3 client does not support EC certs, and needs to fall back to RSA.
ok tb@
|
#
689a9b7e |
| 03-Feb-2024 |
beck <beck@openbsd.org> |
Remove GOST and STREEBOG support from libssl.
This version of GOST is old and not anywhere close to compliant with modern GOST standards. It is also very intrusive in libssl and makes a mess everywh
Remove GOST and STREEBOG support from libssl.
This version of GOST is old and not anywhere close to compliant with modern GOST standards. It is also very intrusive in libssl and makes a mess everywhere. Efforts to entice a suitably minded anyone to care about it have been unsuccessful.
At this point it is probably best to remove this, and if someone ever showed up who truly needed a working version, it should be a clean implementation from scratch, and have it use something closer to the typical API in libcrypto so it would integrate less painfully here.
This removes it from libssl in preparation for it's removal from libcrypto with a future major bump
ok tb@
show more ...
|
#
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 ...
|
#
1fd41f50 |
| 02-Jul-2022 |
tb <tb@openbsd.org> |
Stop using ssl{_ctx,}_security() outside of ssl_seclevel.c
The API is ugly and we can easily abstract it away. The SSL_SECOP_* stuff is now confined into ssl_seclevel.c and the rest of the library c
Stop using ssl{_ctx,}_security() outside of ssl_seclevel.c
The API is ugly and we can easily abstract it away. The SSL_SECOP_* stuff is now confined into ssl_seclevel.c and the rest of the library can make use of the more straightforward wrappers, which makes it a lot easier on the eyes.
ok beck jsing
show more ...
|
#
c5270c5d |
| 02-Jul-2022 |
tb <tb@openbsd.org> |
Rename uses 'curve' to 'group' and rework tls1 group API.
This reworks various tls1_ curve APIs to indicate success via a boolean return value and move the output to an out parameter. This makes the
Rename uses 'curve' to 'group' and rework tls1 group API.
This reworks various tls1_ curve APIs to indicate success via a boolean return value and move the output to an out parameter. This makes the caller code easier and more consistent.
Based on a suggestion by jsing
ok jsing
show more ...
|
#
4fde5609 |
| 29-Jun-2022 |
tb <tb@openbsd.org> |
Check sigalg security level when selecting them.
ok beck jsing
|
#
9ba7321c |
| 29-Jun-2022 |
tb <tb@openbsd.org> |
Check the security bits of the sigalgs' pkey
ok beck jsing
|
#
678f3880 |
| 29-Jun-2022 |
tb <tb@openbsd.org> |
Check the security level when building sigalgs
ok beck jsing
|
#
fe57aeed |
| 29-Jun-2022 |
tb <tb@openbsd.org> |
Annotate sigalgs with their security level.
ok beck jsing
|
#
02876cc3 |
| 05-Feb-2022 |
jsing <jsing@openbsd.org> |
Bye bye S3I.
S3I has served us well, however now that libssl is fully opaque it is time to say goodbye. Aside from removing the calloc/free/memset, the rest is mechanical sed.
ok inoguchi@ tb@
|
#
0a11d68f |
| 20-Jan-2022 |
tb <tb@openbsd.org> |
Remove the remaining three parens in return statements.
|
#
8e8b8cac |
| 20-Jan-2022 |
tb <tb@openbsd.org> |
Use correct spelling of NULL.
|
#
5c273ab3 |
| 26-Nov-2021 |
tb <tb@openbsd.org> |
Stop reaching into EVP_PKEY in the rest of libssl.
ok inoguchi jsing
|
#
1312944b |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Pull up and dedup the TLS version check in ssl_sigalg_pkey_ok().
Suggested by tb@
|
#
b3e0802a |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Simplify RSA PSS key size comment.
Wording provided by tb@
|
#
468bde53 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Change ssl_sigalg_from_value() to take SSL * instead of a TLS version.
This simplifies callers, as only the negotiated TLS version needs to be used here.
Requested by tb@
|
#
58ed3333 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Make various sigalg functions static now that they're only used internally.
|
#
21424b10 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Provide a ssl_sigalg_for_peer() function and use in the TLSv1.3 code.
Provide an ssl_sigalg_for_peer() function that knows how to figure out which signature algorithm should be used for a peer provi
Provide a ssl_sigalg_for_peer() function and use in the TLSv1.3 code.
Provide an ssl_sigalg_for_peer() function that knows how to figure out which signature algorithm should be used for a peer provided signature, performing appropriate validation to ensure that the peer provided value is suitable for the protocol version and key in use.
In the TLSv1.3 code, this replaces the need for separate calls to lookup the sigalg from the peer provided value, then perform validation.
ok inoguchi@ tb@
show more ...
|
#
9bba4ac0 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Move the RSA-PSS check for TLSv1.3 to ssl_sigalg_pkey_ok().
Also, rather than passing in a check_curve flag, pass in the SSL * and handle version checks internally to ssl_sigalg_pkey_ok(), simplifyi
Move the RSA-PSS check for TLSv1.3 to ssl_sigalg_pkey_ok().
Also, rather than passing in a check_curve flag, pass in the SSL * and handle version checks internally to ssl_sigalg_pkey_ok(), simplifying the callers.
ok inoguchi@ tb@
show more ...
|
#
ca7ca908 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Factor out handling of legacy default signature algorithms.
In the case of TLSv1.0 and TLSv1.1 there is no signature algorithms extension and default signature algorithms are used - similar applies
Factor out handling of legacy default signature algorithms.
In the case of TLSv1.0 and TLSv1.1 there is no signature algorithms extension and default signature algorithms are used - similar applies to TLSv1.2 when the signature algorithms extension has been omitted.
ok inoguchi@ tb@
show more ...
|
#
ef6df8b9 |
| 29-Jun-2021 |
jsing <jsing@openbsd.org> |
Mop up now unused variables.
|
#
d2a2fa5f |
| 27-Jun-2021 |
jsing <jsing@openbsd.org> |
Change ssl_sigalgs_from_value() to perform sigalg list selection.
Rather that passing in a sigalg list at every call site, pass in the appropriate TLS version and have ssl_sigalgs_from_value() perfo
Change ssl_sigalgs_from_value() to perform sigalg list selection.
Rather that passing in a sigalg list at every call site, pass in the appropriate TLS version and have ssl_sigalgs_from_value() perform the sigalg list selection itself. This allows the sigalg lists to be made internal to the sigalgs code.
ok tb@
show more ...
|
#
36e55595 |
| 27-Jun-2021 |
jsing <jsing@openbsd.org> |
Rename ssl_sigalg() to ssl_sigalg_from_value().
This makes the code more self-documenting and avoids the ambiguity between ssl_sigalg the struct and ssl_sigalg the function.
ok tb@
|
#
c4b0c3ce |
| 27-Jun-2021 |
jsing <jsing@openbsd.org> |
Change ssl_sigalgs_build() to perform sigalg list selection.
Rather that doing sigalg list selection at every call site, pass in the appropriate TLS version and have ssl_sigalgs_build() perform the
Change ssl_sigalgs_build() to perform sigalg list selection.
Rather that doing sigalg list selection at every call site, pass in the appropriate TLS version and have ssl_sigalgs_build() perform the sigalg list selection itself. This reduces code duplication, simplifies the calling code and is the first step towards internalising the sigalg lists.
ok tb@
show more ...
|
#
eb6a17d1 |
| 27-Jun-2021 |
jsing <jsing@openbsd.org> |
Tidy some comments and simplify some code.
ok tb@
|