From 848d89a918422014c4c70ca852838eb8ee6cad14 Mon Sep 17 00:00:00 2001 From: Sven Czarnian Date: Thu, 2 Dec 2021 23:06:51 +0100 Subject: [PATCH] define the route to create a new key and send information --- aman/app.py | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/aman/app.py b/aman/app.py index 8134bec..374c25c 100644 --- a/aman/app.py +++ b/aman/app.py @@ -2,6 +2,7 @@ import json import os +import subprocess from flask import Flask, Response, request from json import JSONEncoder @@ -31,7 +32,7 @@ aman = AMAN() app = Flask('AMAN') version = '0.0.0' -with open(os.environ['AMAN_PATH'] + '\\VERSION') as file: +with open(os.path.join(os.environ['AMAN_PATH'], 'VERSION')) as file: version = file.readline() if __name__ == '__main__': @@ -47,6 +48,28 @@ def airports(): data = json.dumps({ 'version' : version, 'airports' : retval }, ensure_ascii=True) return Response(data, status=200, mimetype='application/json') +@app.route('/aman/newuser') +def newUser(): + toolpath = os.path.join(os.path.join(os.environ['AMAN_PATH'], 'tools'), 'KeyPairCreator.py') + serverKeypath = os.path.join(os.path.join(os.path.join(AMAN.findConfigPath(), 'keys'), 'server'), 'server.key') + clientKeypath = os.path.join(os.path.join(AMAN.findConfigPath(), 'keys'), 'clients') + + cmd = ['python', toolpath, '--directory=' + clientKeypath, '--publickey=' + serverKeypath] + + stdout = subprocess.check_output(cmd) + keys = stdout.splitlines() + server = keys[0].decode('ascii') + public = keys[1].decode('ascii') + private = keys[2].decode('ascii') + + dictionary = { + 'server' : server, + 'public' : public, + 'private' : private, + } + data = json.dumps(dictionary, ensure_ascii=True) + return Response(data, status=200, mimetype='application/json') + @app.route('/aman/configuration/') def configuration(icao): airport = aman.findAirport(icao.upper())