4

我想知道哪个hexdump()scapy 使用,因为我想修改它,但我根本找不到任何东西。

我发现的是:

def hexdump(self, lfilter=None):

  for i in range(len(self.res)):

     p = self._elt2pkt(self.res[i])
     if lfilter is not None and not lfilter(p):
           continue
     print "%s %s %s" % (conf.color_theme.id(i,"%04i"),
                         p.sprintf("%.time%"),
                         self._elt2sum(self.res[i]))
     hexdump(p)

但这只是 的替代方法pkt.hexdump(),它pkt.summary()具有以下功能hexdump(pkt)

谁能告诉我在哪里可以找到hexdump(pkt)源代码?

我想要的是十六进制数据包,几乎就像str(pkt[0])(我可以通过 逐字节检查str(pkt[0])[0]),但除了十六进制值之外别无其他,就像显示在hexdump(pkt).

也许你们可以帮我解决这个问题:)

4

1 回答 1

5

找到它,所以,回答我自己的问题,它位于 utils.py

def hexdump(x):

   x=str(x)
   l = len(x)
   i = 0
   while i < l:
       print "%04x  " % i,
       for j in range(16):
           if i+j < l:
               print "%02X" % ord(x[i+j]),
           else:
               print "  ",
           if j%16 == 7:
               print "",
       print " ",
       print sane_color(x[i:i+16])
       i += 16
于 2012-06-13T10:32:19.693 回答