mirror of
https://github.com/google/boringssl.git
synced 2026-10-28 16:47:07 +08:00
Previously, servers could set SSL_OP_CIPHER_SERVER_PREFERENCE to configure behavior where the server's own preferences for TLS curves (supported_groups) are prioritized over the client's. Since servers can configure equipreference groups in their own preference lists to allow client preferences to be partially respected, there is little reason not to always prioritize the server's preference. This CL makes the SSL_OP_CIPHER_SERVER_PREFERENCE behavior always enabled for TLS curves, and setting the SSL_OP_CIPHER_SERVER_PREFERENCE option is now a no-op for TLS curves (supported_groups). There is no change yet to TLS 1.2 ciphers, which still require SSL_OP_CIPHER_SERVER_PREFERENCE to enable prioritization of server preference. Update-Note: SSL_OP_CIPHER_SERVER_PREFERENCE is now a no-op for TLS curves (supported_groups), and its behavior is always enabled. That is, for a server, the server's own preferences are prioritized over the client's. Callers that want the old default behavior for TLS curves can use `SSL_CTX_set1_group_ids_with_flags` and configure every group into a single equipreference group, but this is not recommended. Bug: 550356540 Change-Id: If1655413e62dea779f3c970aa6cfff4e6a6a6964 Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/104728 Commit-Queue: Lily Chen <chlily@google.com> Reviewed-by: David Benjamin <davidben@google.com>