Class: MachO::SegmentCommand

Inherits:
LoadCommand show all
Defined in:
lib/macho/load_commands.rb

Overview

A load command indicating that part of this file is to be mapped into the task’s address space. Corresponds to LC_SEGMENT.

Instance Attribute Summary collapse

Attributes inherited from LoadCommand

#cmd, #cmdsize, #offset

Instance Method Summary collapse

Methods inherited from LoadCommand

new_from_bin, #to_s

Methods inherited from MachOStructure

bytesize, new_from_bin

Constructor Details

#initialize(offset, cmd, cmdsize, segname, vmaddr, vmsize, fileoff, filesize, maxprot, initprot, nsects, flags) ⇒ SegmentCommand

Returns a new instance of SegmentCommand.



353
354
355
356
357
358
359
360
361
362
363
364
365
# File 'lib/macho/load_commands.rb', line 353

def initialize(offset, cmd, cmdsize, segname, vmaddr, vmsize, fileoff,
    filesize, maxprot, initprot, nsects, flags)
  super(offset, cmd, cmdsize)
  @segname = segname
  @vmaddr = vmaddr
  @vmsize = vmsize
  @fileoff = fileoff
  @filesize = filesize
  @maxprot = maxprot
  @initprot = initprot
  @nsects = nsects
  @flags = flags
end

Instance Attribute Details

#fileoffObject (readonly)

Returns the value of attribute fileoff.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def fileoff
  @fileoff
end

#filesizeObject (readonly)

Returns the value of attribute filesize.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def filesize
  @filesize
end

#flagsObject (readonly)

Returns the value of attribute flags.



347
348
349
# File 'lib/macho/load_commands.rb', line 347

def flags
  @flags
end

#initprotObject (readonly)

Returns the value of attribute initprot.



347
348
349
# File 'lib/macho/load_commands.rb', line 347

def initprot
  @initprot
end

#maxprotObject (readonly)

Returns the value of attribute maxprot.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def maxprot
  @maxprot
end

#nsectsObject (readonly)

Returns the value of attribute nsects.



347
348
349
# File 'lib/macho/load_commands.rb', line 347

def nsects
  @nsects
end

#segnameObject (readonly)

Returns the value of attribute segname.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def segname
  @segname
end

#vmaddrObject (readonly)

Returns the value of attribute vmaddr.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def vmaddr
  @vmaddr
end

#vmsizeObject (readonly)

Returns the value of attribute vmsize.



346
347
348
# File 'lib/macho/load_commands.rb', line 346

def vmsize
  @vmsize
end

Instance Method Details

#segment_nameString

Returns the segment’s name, with any trailing NULL characters removed.

Returns:

  • (String)

    the segment’s name, with any trailing NULL characters removed



368
369
370
# File 'lib/macho/load_commands.rb', line 368

def segment_name
  @segname.delete("\x00")
end