Client preference orders are often not fixed but are determined at runtime based on the hardware capabilities on the device in question. So multiple devices in a single series with difference hardware (such as different processors like one AMD and one Intel, or one Snapdragon and one Tensor), could end up with different precedence orders based on what is available on the system at that time.
This may work on a fixed environment, but since this is a runtime decision, making it fixed using broadly available libraries is likely to require special modes of operation for the client instead of out of the box support which is not ideal since it makes deployment for solutions more difficult.
This is still a concern in 2.1. Is there a specific reason for requiring the TLS client to provide this listing since it should be more important on the server side?
Client preference orders are often not fixed but are determined at runtime based on the hardware capabilities on the device in question. So multiple devices in a single series with difference hardware (such as different processors like one AMD and one Intel, or one Snapdragon and one Tensor), could end up with different precedence orders based on what is available on the system at that time.
This may work on a fixed environment, but since this is a runtime decision, making it fixed using broadly available libraries is likely to require special modes of operation for the client instead of out of the box support which is not ideal since it makes deployment for solutions more difficult.