misc: add get_current_user_info function

This commit is contained in:
Izalia Mae 2021-07-24 20:28:31 -04:00
parent 1b296026c6
commit 8fa54b3eaf

View file

@ -1,17 +1,19 @@
import hashlib, platform, random, signal, socket, statistics, string, time, timeit
import grp, hashlib, os, platform, random, signal, socket, statistics, string, time, timeit
from datetime import datetime
from getpass import getpass
from getpass import getpass, getuser
from importlib import util
from pathlib import Path
from . import izzylog
from .dotdict import DotDict
__all__ = [
'ap_date',
'boolean',
'catch_kb_interrupt',
'get_current_user_info',
'get_ip',
'hasher',
'import_from_path',
@ -101,6 +103,28 @@ def catch_kb_interrupt(function, *args, **kwargs):
izzylog.verbose('Bye! UvU')
def get_current_user_info():
data = DotDict({
'name': getuser(),
'group': None,
'groups': None,
'uid': os.getuid(),
'gid': os.getgid(),
'gids': os.getgroups()
})
try:
data.gids.remove(data.gid)
except:
pass
data.group = grp.getgrgid(data.gid).gr_name
data.groups = [grp.getgrgid(v).gr_name for v in data.gids]
return data
def get_ip():
'''
Get the IP address of the machine