mirror of https://github.com/n1nj4sec/pupy.git
Make pupyps more compatible
This commit is contained in:
parent
26a4f5a5f3
commit
feb0c674e4
|
@ -36,10 +36,13 @@ class IPModule(PupyModule):
|
|||
continue
|
||||
|
||||
color = ""
|
||||
if addr in data['stats'] and not data['stats'][addr].get('isup'):
|
||||
color = 'darkgrey'
|
||||
elif not any([ x.get('family') == socket.AF_INET for x in addresses ]):
|
||||
color = 'grey'
|
||||
if 'stats' in data and data['stats']:
|
||||
if addr in data['stats'] and not data['stats'][addr].get('isup'):
|
||||
color = 'darkgrey'
|
||||
elif not any([ x.get('family') == socket.AF_INET for x in addresses ]):
|
||||
color = 'grey'
|
||||
else:
|
||||
color = 'white'
|
||||
|
||||
self.stdout.write(colorize(addr.ljust(addrlen), color or 'cyan'))
|
||||
first = True
|
||||
|
|
|
@ -65,7 +65,8 @@ def gen_columns(record, colinfo):
|
|||
columns['memory_percent'] = '{:3}%'.format(int(mem)) if mem is not None else ' '*4
|
||||
|
||||
if colinfo:
|
||||
columns['username'] = '{{:{}}}'.format(colinfo['username']).format(columns['username'])
|
||||
if 'username' in colinfo:
|
||||
columns['username'] = '{{:{}}}'.format(colinfo['username']).format(columns['username'])
|
||||
columns['pid'] = '{{:{}}}'.format(colinfo['pid']).format(record['pid'])
|
||||
else:
|
||||
columns['pid'] = '{}'.format(parent)
|
||||
|
|
|
@ -198,21 +198,34 @@ def connections():
|
|||
|
||||
return connections
|
||||
|
||||
def _tryint(x):
|
||||
try:
|
||||
return int(x)
|
||||
except:
|
||||
return str(x)
|
||||
|
||||
def interfaces():
|
||||
return {
|
||||
'addrs': {
|
||||
try:
|
||||
addrs = {
|
||||
x:[
|
||||
{ k:v for k,v in z.__dict__.iteritems() } for z in y
|
||||
{ k:_tryint(getattr(z,k)) for k in dir(z) if not k.startswith('_') } for z in y
|
||||
] for x,y in psutil.net_if_addrs().iteritems()
|
||||
},
|
||||
'stats': {
|
||||
}
|
||||
except:
|
||||
addrs = None
|
||||
|
||||
try:
|
||||
stats = {
|
||||
x:{
|
||||
k:v for k,v in (
|
||||
y.__dict__.iteritems() if hasattr(y, '__dict__') else
|
||||
zip(('isup', 'duplex', 'speed', 'mtu'), y)
|
||||
)
|
||||
k:_tryint(getattr(y,k)) for k in dir(y) if not k.startswith('_')
|
||||
} for x,y in psutil.net_if_stats().iteritems()
|
||||
}
|
||||
except:
|
||||
stats = None
|
||||
|
||||
return {
|
||||
'addrs': addrs,
|
||||
'stats': stats
|
||||
}
|
||||
|
||||
def cstring(string):
|
||||
|
|
Loading…
Reference in New Issue