1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
# Print lastlog2 database as JSON; used in ./login.js
import json
import os
import sqlite3
import sys
DB = "/var/lib/lastlog/lastlog2.db"
if not os.path.exists(DB):
sys.exit(f"{DB} does not exist")
con = sqlite3.connect(DB)
cur = con.cursor()
query = "SELECT Name, Time, TTY, RemoteHost FROM Lastlog2"
if len(sys.argv) == 2:
res = cur.execute(query + " WHERE Name = ?", [sys.argv[1]])
else:
res = cur.execute(query)
users = {}
for [name, time, tty, host] in res:
users[name] = {"time": time, "tty": tty, "host": host}
print(json.dumps(users))
|