Class: TurboRex::MSRPC::RPCBase::MIDL_SYNTAX_INFO_Klass

Inherits:
Structures_Klass show all
Defined in:
lib/turborex/msrpc/rpcbase.rb

Instance Attribute Summary

Attributes inherited from Structures_Klass

#xrefs

Instance Method Summary collapse

Methods inherited from Structures_Klass

#[], #initialize, #link_and_xref, #method_missing, #to_s, #xref_from

Constructor Details

This class inherits a constructor from TurboRex::MSRPC::RPCBase::Structures_Klass

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class TurboRex::MSRPC::RPCBase::Structures_Klass

Instance Method Details

#DispatchTableObject



695
696
697
# File 'lib/turborex/msrpc/rpcbase.rb', line 695

def DispatchTable
  @dispatch_table_link_to || @value_table[:DispatchTable] 
end


699
700
701
702
703
# File 'lib/turborex/msrpc/rpcbase.rb', line 699

def link_to(struct)
  if struct.is_a? RPC_DISPATCH_TABLE_Klass
    link_and_xref :dispatch_table_link_to, struct
  end
end

#parse_struct(cstruct) ⇒ Object



680
681
682
683
684
685
686
687
688
689
690
691
692
693
# File 'lib/turborex/msrpc/rpcbase.rb', line 680

def parse_struct(cstruct)
  @value_table = {
    TransferSyntax: cstruct['transferSyntax'],
    DispatchTable: cstruct['dispatchTable'].value,
    ProcString: cstruct['procString'].value,
    FmtStringOffset: cstruct['fmtStringOffset'].value,
    TypeString: cstruct['typeString'].value,
    aUserMarshalQuadruple: cstruct['aUserMarshalQuadruple'].value,
    pMethodProperties: cstruct['pMethodProperties'].value,
    pReserved2: cstruct['pReserved2'].value
  }

  @dispatch_table_link_to = nil
end