Skip to content
Snippets Groups Projects
Commit 6e38117a authored by Martin Teichmann's avatar Martin Teichmann
Browse files

fix use of Enum

how did this ever work?
parent e16f4697
No related branches found
No related tags found
No related merge requests found
...@@ -580,7 +580,7 @@ class EBPF: ...@@ -580,7 +580,7 @@ class EBPF:
def assemble(self): def assemble(self):
return b"".join( return b"".join(
pack("<BBHI", i.opcode, i.dst | i.src << 4, pack("<BBHI", i.opcode.value, i.dst | i.src << 4,
i.off % 0x10000, i.imm % 0x100000000) i.off % 0x10000, i.imm % 0x100000000)
for i in self.opcodes) for i in self.opcodes)
......
...@@ -10,7 +10,7 @@ opcodes.sort(reverse=True) ...@@ -10,7 +10,7 @@ opcodes.sort(reverse=True)
def Instruction(opcode, dst, src, off, imm): def Instruction(opcode, dst, src, off, imm):
if isinstance(opcode, OpcodeFlags): if isinstance(opcode, (Opcode, OpcodeFlags)):
return ebpf.Instruction(opcode, dst, src, off, imm) return ebpf.Instruction(opcode, dst, src, off, imm)
bigger = [(k, v) for k, v in opcodes if opcode >= k] bigger = [(k, v) for k, v in opcodes if opcode >= k]
for bk, bv in bigger: for bk, bv in bigger:
...@@ -29,7 +29,7 @@ def Instruction(opcode, dst, src, off, imm): ...@@ -29,7 +29,7 @@ def Instruction(opcode, dst, src, off, imm):
class Tests(TestCase): class Tests(TestCase):
def test_assemble(self): def test_assemble(self):
e = EBPF() e = EBPF()
e.append(0x24, 3, 4, 0x2c3d, 0x2d3e4f5e) e.append(Opcode.MUL, 3, 4, 0x2c3d, 0x2d3e4f5e)
self.assertEqual(e.assemble(), b"$C=,^O>-") self.assertEqual(e.assemble(), b"$C=,^O>-")
def test_assign(self): def test_assign(self):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment