Files
YMS/ymspass.py
T

52 lines
1.4 KiB
Python
Executable File

#!/usr/bin/python3
import os
import sys
import configparser
from yms import database
from getpass import getpass
import bcrypt
cfg = {
'cfgfile': '~/.config/ymsgui.conf',
'host': 'localhost',
'db': 'yms',
'user': 'yms'
}
def set_pass():
newpass = getpass('New Password: ')
cryptpass = bcrypt.hashpw(newpass.encode(), bcrypt.gensalt())
print(cryptpass.decode())
sql = "UPDATE user SET pass=%s WHERE userid=%s"
def get_user():
username = input('Username: ')
sql = "SELECT userid FROM user WHERE login=%s"
db.cur.execute(sql, (username,))
row = db.cur.fetchone()
if not row:
print("User not found")
return -1
else:
return row[0]
if __name__ == "__main__":
config = configparser.ConfigParser()
configfile = os.path.expanduser(cfg['cfgfile']);
if not config.read(configfile):
print(f"Configuration file '{configfile}' not found.")
else:
cfg['host'] = config.get('DB', 'host')
cfg['db'] = config.get('DB', 'db')
cfg['user'] = config.get('DB', 'user')
cfg['pass'] = config.get('DB', 'pass')
db = database.Database(cfg['host'], cfg['db'])
if db.connect(cfg['user'], cfg['pass']):
print("Connected to database")
print(get_user())
db.disconnect()
else:
print("Cannot connect to database {}@{}".format(cfg['db'], cfg['host']))