class TurboRex::MSRPC::MIDL::TypeFormatString

Constants

HANDLER_TABLE

Public Class Methods

new(typefs_stream, cparser) click to toggle source
# File lib/turborex/msrpc/midl.rb, line 456
def initialize(typefs_stream, cparser)
  @typefs_stream = typefs_stream
  @cparser = cparser
end

Public Instance Methods

decompile() click to toggle source

return an object of the subclass of DataType

# File lib/turborex/msrpc/midl.rb, line 462
def decompile
  fc = @typefs_stream.read(1).unpack('C').first
  select_handler(fc).new(@typefs_stream, @cparser).decompile
end
fs_length() click to toggle source
# File lib/turborex/msrpc/midl.rb, line 467
def fs_length

end
select_handler(type_fc) click to toggle source
# File lib/turborex/msrpc/midl.rb, line 471
def select_handler(type_fc)
  HANDLER_TABLE.each do |h|
    if h[:type].include?(type_fc)
      return h[:handler] 
    end
  end

  raise TurboRex::Exception::MSRPC::InvalidTypeFormatString
end