class ArrPM::V2::HeaderHeader

The header of an rpm has … a header. Funky naming :)

Constants

MAGIC
MAGIC_LENGTH

Attributes

bytesize[RW]
entries[RW]
version[RW]

Public Class Methods

validate_magic(value) click to toggle source
# File lib/arr-pm/v2/header_header.rb, line 33
def self.validate_magic(value)
  raise ArrPM::V2::Error::InvalidHeaderMagicValue, value if value != MAGIC
end

Public Instance Methods

dump() click to toggle source
# File lib/arr-pm/v2/header_header.rb, line 29
def dump
  [magic, 1, 0, @entries, @bytesize].pack("a3Ca4NN")
end
load(io) click to toggle source
# File lib/arr-pm/v2/header_header.rb, line 14
def load(io)
  data = io.read(16)
  parse(data)
end
parse(data) click to toggle source
# File lib/arr-pm/v2/header_header.rb, line 19
def parse(data)
  magic, version, reserved, entries, bytesize = data.unpack("a3Ca4NN")
  self.class.validate_magic(magic.bytes)

  @version = version
  @entries = entries
  @bytesize = bytesize
  nil
end