class Metasm::COFF::Section

Attributes

encoded[RW]
relocs[RW]

Public Instance Methods

decode(coff) click to toggle source
Calls superclass method Metasm::SerialStruct#decode
# File metasm/exe_format/coff_decode.rb, line 60
def decode(coff)
        super(coff)
        coff.decode_section_body(self)
end
set_default_values(coff) click to toggle source

find good default values for section header members, defines rawaddr/rawsize as new_label for later fixup

Calls superclass method Metasm::SerialStruct#set_default_values
# File metasm/exe_format/coff_encode.rb, line 60
def set_default_values(coff)
        @name     ||= ''
        @virtsize ||= @encoded.virtsize
        @virtaddr ||= Expression[coff.label_at(@encoded, 0, 'sect_start'), :-, coff.label_at(coff.encoded, 0)]
        @rawsize  ||= coff.new_label('sect_rawsize')
        @rawaddr  ||= coff.new_label('sect_rawaddr')

        super(coff)
end