Проблема заключается в том, что я не могу написать пакет с инвертированным app_data wrp>. Когда я пытаюсь написать этот объект с помощью инвертированного app_data, этот флаг не установлен.
кажется, что wrpcap () < /code> делает копию заданного объекта, а атрибут инверта не копируется -> всегда это значение по умолчанию. это фактически написано.
Код: Выделить всё
pkt = MyProto(invert = True, app_data = b'Hello', ...)
wrpcap(file, pkt, append=True)
# id(pkt) = 123
# pkt.invert = True
...
class MyProto(Packet):
invert = False
...
def post_build(self, pkt, pay):
# id(self) = 789
# self.invert = False
Я могу себе представить, что добавит дополнительное поле, которое копируется в процессе копии WRPCAP (DeepCopy), но это включает в себя дополнительную логику в моем __init __ и post_build , не является чистым и, возможно, не является правильным способом. Идея?
Подробнее здесь: https://stackoverflow.com/questions/796 ... new-object