查找Scapy supp字段的字节大小

2024-05-23 23:16:50 发布

您现在位置:Python中文网/ 问答频道 /正文

如何找到Scapy支持的特定字段的大小。例如LongField的大小是多少(以字节为单位)?我检查了scapy文档,但是找不到(http://www.secdev.org/projects/scapy/doc/build_dissect.html#fields)。 是否有任何功能来检查它,或任何共享此信息的文档。在


Tags: 文档orgbuildhttpdoc字节htmlwww
1条回答
网友
1楼 · 发布于 2024-05-23 23:16:50

看看源代码。Scapys构建的int字段使用struct.pack()将整数转换为各种长度的大小端表示。作为Field的实现的LongField将被序列化为fmt=Q,根据{a3}的python文档,它的大小为Q unsigned long long integer 8(另请参见struct.calcsize

请始终注意,字段可以高度特定于一个协议。但是,对于基于class Field的字段,可以尝试访问instancesfmt属性。但是,这可能不准确,因为您的字段可能具有重写的序列化方法。一个更通用的解决方案是生成该字段的一个实例,将其序列化并对其调用len()。在

(注意:指向非正式github镜像的链接)

相关问题 更多 >