Class: EchSpec::Spec::Spec5_1_10::NotSameOrderExtensions
- Inherits:
-
TTTLS13::Message::Extensions
- Object
- TTTLS13::Message::Extensions
- EchSpec::Spec::Spec5_1_10::NotSameOrderExtensions
- Defined in:
- lib/echspec/spec/5.1-10.rb
Instance Method Summary collapse
-
#remove_and_replace!(_) ⇒ TTTLS13::Message::Extensions
For EncodedClientHelloInner.
Instance Method Details
#remove_and_replace!(_) ⇒ TTTLS13::Message::Extensions
Returns for EncodedClientHelloInner.
200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 |
# File 'lib/echspec/spec/5.1-10.rb', line 200 def remove_and_replace!(_) outer_extensions = [ TTTLS13::Message::ExtensionType::KEY_SHARE, TTTLS13::Message::ExtensionType::SUPPORTED_VERSIONS ] tmp1 = filter { |k, _| !outer_extensions.include?(k) } tmp2 = filter { |k, _| outer_extensions.include?(k) } clear replaced = TTTLS13::Message::Extensions.new tmp1.each_value { |v| self << v; replaced << v } tmp2.each_value { |v| self << v } # extensions in ClientHelloOuter and OuterExtensions are not in the same order. replaced << TTTLS13::Message::Extension::ECHOuterExtensions.new( tmp2.keys.reverse ) replaced end |