Sha256: 698f19675cca4f87e2db8393799d57f2c50cd9c77257e65ab87348eec49113a9
Contents?: true
Size: 947 Bytes
Versions: 2
Compression:
Stored size: 947 Bytes
Contents
# This file is part of Metasm, the Ruby assembly manipulation suite # Copyright (C) 2006-2009 Yoann GUILLOT # # Licence is LGPL, see LICENCE in the top-level directory require 'metasm/main' module Metasm class BPF < CPU class Reg attr_accessor :v def initialize(v) @v = v end def symbolic(di=nil) ; @v ; end end class Memref attr_accessor :base, :offset, :msz def memtype :mem end def initialize(base, offset, msz) @base = base @offset = offset @msz = msz end def symbolic(di=nil) p = Expression[memtype] p = Expression[p, :+, @base.symbolic] if base p = Expression[p, :+, @offset] if offset Indirection[p, @msz, (di.address if di)] end end class Pktref < Memref def memtype :pkt end end def initialize(family = :latest) super() @endianness = :big @size = 32 @family = family end def init_opcode_list send("init_#@family") @opcode_list end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
metasm-1.0.5 | metasm/cpu/bpf/main.rb |
metasm-1.0.4 | metasm/cpu/bpf/main.rb |