scapy - 如何将位字段标志显示为关闭?

时间:2016-12-08 03:26:43

标签: scapy

scapy提供FlagsField,显示为

   flag1+flag2+flag5

可以打印出来吗?

   flag1=on
   flag2=on
   flag3=off
   flag4=off
   flag5=on

flagField采取数组 - 但是类可以是一个枚举/字典,用于索引位位置。

1 个答案:

答案 0 :(得分:0)

工作了

class CFlagsField(FlagsField):
    def i2repr(self, pkt, x):
        flgs = []
        for (k, v) in self.names.iteritems():
            tf = 'True' if x & (1<<k) else 'False'
            flgs.append('{:<20}={:^7}'.format(v, tf))
        return "\n".join(flgs)