class TTTLS13::Message::Extension::PskKeyExchangeModes
Attributes
extension_type[R]
ke_modes[R]
Public Class Methods
deserialize(binary)
click to toggle source
@param binary [String]
@raise [TTTLS13::Error::ErrorAlerts]
@return [TTTLS13::Message::Extensions::PskKeyExchangeModes, nil]
# File lib/tttls1.3/message/extension/psk_key_exchange_modes.rb, line 35 def self.deserialize(binary) raise Error::ErrorAlerts, :internal_error if binary.nil? return nil if binary.empty? kem_len = Convert.bin2i(binary[0]) ke_modes = [] i = 1 while i < kem_len + 1 ke_modes << binary[i] i += 1 end return nil unless kem_len + 1 == binary.length PskKeyExchangeModes.new(ke_modes) end
new(ke_modes = [])
click to toggle source
@param ke_modes
[Array of PskKeyExchangeMode]
# File lib/tttls1.3/message/extension/psk_key_exchange_modes.rb, line 18 def initialize(ke_modes = []) @extension_type = ExtensionType::PSK_KEY_EXCHANGE_MODES @ke_modes = ke_modes || [] end
Public Instance Methods
serialize()
click to toggle source
@return [String]
# File lib/tttls1.3/message/extension/psk_key_exchange_modes.rb, line 24 def serialize binary = @ke_modes.join.prefix_uint8_length @extension_type + binary.prefix_uint16_length end