class SvcbRrPatch::SvcParams::Ech::ECHConfigContents::Extension

Attributes

octet[R]

Public Class Methods

decode_vectors(octet) click to toggle source

@return [Array of Extension]

# File lib/svcb_rr_patch/svc_params/ech/echconfig_contents/extension.rb, line 17
def self.decode_vectors(octet)
  i = 0
  extensions = []
  while i < octet.length
    raise ::Resolv::DNS::DecodeError if i + 4 > octet.length

    ex_len = octet.slice(i + 2, 2)
    i += 4
    raise ::Resolv::DNS::DecodeError if i + ex_len > octet.length

    extensions << new(octet.slice(i, ex_len)) # TODO
    i += ex_len
  end
  raise ::Resolv::DNS::DecodeError if i != octet.length

  extensions
end
new(octet) click to toggle source

@param octet [String]

# File lib/svcb_rr_patch/svc_params/ech/echconfig_contents/extension.rb, line 7
def initialize(octet)
  @octet = octet # TODO
end

Public Instance Methods

encode() click to toggle source

@return [String]

# File lib/svcb_rr_patch/svc_params/ech/echconfig_contents/extension.rb, line 12
def encode
  @octet # TODO
end