I made this issue on LibreSSL's github... https://github.com/libressl-portable/portable/issues/537
It's about ... TLSEXT_TYPE_psk_kex_modes: from openssl/tls1.h 1.1.1b # define TLSEXT_TYPE_psk_kex_modes 45 from libressl/2.9.2 tls1.h #define TLSEXT_TYPE_psk_key_exchange_modes 45 They argue that the names they defined follow the RFC <https://tools.ietf.org/html/rfc8446#section-4.2> <https://tools.ietf.org/html/rfc8446#section-4.2> https://tools.ietf.org/html/rfc8446#section-4.2 <https://tools.ietf.org/html/rfc8446#section-4.2> <https://tools.ietf.org/html/rfc8446#section-4.2> <https://tools.ietf.org/html/rfc8446#section-4.2> pre_shared_key(41), psk_key_exchange_modes(45), are what the names should be based on, and that OpenSSL's definition is also inaccurate TLSEXT_TYPE_psk_kex_modes TLSEXT_TYPE_psk https://github.com/openssl/openssl/blob/master/include/openssl/tls1.h#L143-L147 instead of 'pre_shared_key' and 'key_exchange_modes' (sorry, this looks kind of ragged, get what I'm sayin?)