別のクラスのフィールドに応じてクラスのフィールド型を動的に定義する方法は不思議ですか? 私は、別のクラスへのクラスからの例をフィールドを定義してリンクする方法を意味する:他のクラスのフィールドに応じて動的にフィールド型を取得する(Scapyツールを使用する - Python)
class TemplateRecord(Packet):
name = "Template Record"
fields_desc = [ ShortField("Type", 0),
ShortField("Length", 0) ]
def extract_padding(self, s):
return "", s
class DataRecord(Packet):
name = "Data Record"
fields_desc = [ ==> Here i would like something like this :
"if Type == 0 from Class TemplateRecord:
IPField("ipsrc", "0.0.0.0"),
if Type == 1 from Class TemplateRecord
IPField("ipdst", "0.0.0.0"),
if Type == 2 from Class TemplateRecord
ByteField("DstMask", 0),
....etc..."
]
def extract_padding(self, s):
return "", s