aboutsummaryrefslogtreecommitdiff
path: root/scapy
diff options
context:
space:
mode:
authorPierre LALET <pierre.lalet@cea.fr>2018-01-15 16:26:50 +0100
committerPierre LALET <pierre.lalet@cea.fr>2018-01-15 16:26:50 +0100
commit60a1d1c7d0e1cea9498dbb0ec983c75fe4dcb035 (patch)
tree58bf0fb9d1a24c8f9191f4c5a829bded2a09ba18 /scapy
parent343303a435e9c49503cc8655001bddd5f736ebaa (diff)
downloadscapy-60a1d1c7d0e1cea9498dbb0ec983c75fe4dcb035.tar.gz
Python 3: fix make_table() sort with integers & IPs
Diffstat (limited to 'scapy')
-rw-r--r--scapy/utils.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/scapy/utils.py b/scapy/utils.py
index 2f363190..b6d481bb 100644
--- a/scapy/utils.py
+++ b/scapy/utils.py
@@ -1411,40 +1411,40 @@ def pretty_list(rtlst, header, sortBy=0):
rt = "\n".join([fmt % x for x in rtlst])
return rt
-def __make_table(yfmtfunc, fmtfunc, endline, list, fxyz, sortx=None, sorty=None, seplinefunc=None):
+def __make_table(yfmtfunc, fmtfunc, endline, data, fxyz, sortx=None, sorty=None, seplinefunc=None):
vx = {}
vy = {}
vz = {}
vxf = {}
vyf = {}
l = 0
- for e in list:
+ for e in data:
xx, yy, zz = [str(s) for s in fxyz(e)]
l = max(len(yy),l)
vx[xx] = max(vx.get(xx,0), len(xx), len(zz))
vy[yy] = None
vz[(xx,yy)] = zz
- vxk = sorted(vx.keys())
- vyk = sorted(vy.keys())
+ vxk = list(vx)
+ vyk = list(vy)
if sortx:
- vxk.sort(sortx)
+ vxk.sort(key=sortx)
else:
try:
- vxk.sort(lambda x,y:int(x)-int(y))
+ vxk.sort(key=int)
except:
try:
- vxk.sort(lambda x,y: cmp(atol(x),atol(y)))
+ vxk.sort(key=atol)
except:
vxk.sort()
if sorty:
- vyk.sort(sorty)
+ vyk.sort(key=sorty)
else:
try:
- vyk.sort(lambda x,y:int(x)-int(y))
+ vyk.sort(key=int)
except:
try:
- vyk.sort(lambda x,y: cmp(atol(x),atol(y)))
+ vyk.sort(key=atol)
except:
vyk.sort()