этот вопрос относится к этому другому
Я хотел бы проверить значение поля в scapy:
def compute(fields):
print fields
print fields[1].name
print fields[1].size
print fields[1].default
return 23
class Foo(Packet):
array=[
BitField("foo",0x0,2),
BitField("foo1",0x0,2),
BitField("bar",0x0,2),
BitField("blub",None,2)
]
def post_build(self, p, pay):
print dir(self.array[1])
res = compute(self.array)
p = struct.pack(">b", res)
return p
if __name__ == "__main__":
interact(mydict=globals(), mybanner="")
Код не является полнымработает, но важные части есть.Вывод:
[<Field ().foo>, <Field ().foo1>, <Field ().bar>, <Field ().blub>]
foo1
2
0
Теперь проблема в том, что я изменяю значение в командной строке:
>>> a=Foo()
>>> a.foo1=0x23
>>> a.show2()
Как узнать (в моем методе вычисления), какое значение foo1есть?Я думаю, что это не очень сложный вопрос, но я не могу понять, чего мне здесь не хватает: / Было бы здорово, если бы вы могли мне помочь:)
С наилучшими пожеланиями