Class: TTTLS13::Message::Extension::ECHHelloRetryRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/tttls1.3/message/extension/ech.rb

Overview

struct {

    opaque confirmation[8];
} ECHHelloRetryRequest;

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(confirmation) ⇒ ECHHelloRetryRequest

Returns a new instance of ECHHelloRetryRequest.

Parameters:

  • confirmation (String)


204
205
206
207
# File 'lib/tttls1.3/message/extension/ech.rb', line 204

def initialize(confirmation)
  @extension_type = ExtensionType::ENCRYPTED_CLIENT_HELLO
  @confirmation = confirmation
end

Instance Attribute Details

#confirmationObject (readonly)

Returns the value of attribute confirmation.



201
202
203
# File 'lib/tttls1.3/message/extension/ech.rb', line 201

def confirmation
  @confirmation
end

#extension_typeObject (readonly)

Returns the value of attribute extension_type.



201
202
203
# File 'lib/tttls1.3/message/extension/ech.rb', line 201

def extension_type
  @extension_type
end

Class Method Details

.deserialize(binary) ⇒ TTTLS13::Message::Extensions::ECHHelloRetryRequest

Parameters:

  • binary (String)

Returns:

  • (TTTLS13::Message::Extensions::ECHHelloRetryRequest)

Raises:



219
220
221
222
223
224
# File 'lib/tttls1.3/message/extension/ech.rb', line 219

def self.deserialize(binary)
  raise Error::ErrorAlerts, :internal_error if binary.nil?
  return nil if binary.length != 8

  ECHHelloRetryRequest.new(binary)
end

Instance Method Details

#serializeString

Returns:

  • (String)


210
211
212
# File 'lib/tttls1.3/message/extension/ech.rb', line 210

def serialize
  @extension_type + @confirmation.prefix_uint16_length
end