diff --git a/susmng.py b/susmng.py index 10238d1..290b08e 100755 --- a/susmng.py +++ b/susmng.py @@ -4,6 +4,8 @@ import sys import requests import hmac import hashlib +import pathlib +import os def get_args(): @@ -15,13 +17,21 @@ def get_args(): parser.add_argument('command') parser.add_argument('shortlink') parser.add_argument('value') - parser.add_argument('--secret', default="secret") + parser.add_argument('--secret-file', type=pathlib.Path, default=pathlib.Path(os.path.expanduser('~/.susmng_secret'))) parser.add_argument('--http', action='store_true') return parser.parse_args() def main(args): """ Entry point for script """ + + if not args.secret_file.exists(): + print(f"secret file does not exist at: {args.secret_file}") + return + + with open(args.secret_file) as fp: + secret = fp.read().strip() + r = requests.post(f"{'http' if args.http else 'https'}://{args.susserver}", data = { 'Command': args.command, @@ -30,7 +40,7 @@ def main(args): }, headers = { 'Signature': 'SUS-SIGNATURE-' + hmac.new( - args.secret.encode("UTF-8"), + secret.encode("UTF-8"), (args.command+":"+args.shortlink+":"+args.value).encode("UTF-8"), hashlib.sha256 ).hexdigest()