Merge branch 'master' of https://git.kmlabz.com/BiztProtoBois/server
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
DESKTOP-DPA61F8\Benedek 2021-04-25 18:09:51 +02:00
commit 81ea634b3a
3 changed files with 30 additions and 24 deletions

View File

@ -13,7 +13,7 @@ from Crypto.PublicKey import RSA
from Crypto.PublicKey.RSA import RsaKey
auth_logger = logging.getLogger('AUTH APPLICATION ')
auth_logger.root.setLevel(logging.INFO)
auth_logger.setLevel(logging.INFO)
class Authetication:
ABSOLUTE_PATH = os.path.abspath(os.path.dirname(sys.argv[0]))
@ -120,7 +120,7 @@ class Authetication:
with open(self.CONFIG_FILE_LOCATION) as json_file:
data = json.load(json_file)
dictionary: dict
dictionary = dict()
for user in data['user']:
key = data['publicKey']

View File

@ -36,8 +36,8 @@ class NetWrapper:
cipher = PKCS1_OAEP.new(self.currentClientPublicKey)
identMsg = json.dumps(
{'type': 'IDY', 'source': self.network.own_addr,
'message': b64encode(cipher.encrypt(retmsg.encode('UTF-8')))}).decode(
'ASCII')
'message': b64encode(cipher.encrypt(retmsg.encode('UTF-8'))).decode('ASCII')}).encode(
'UTF-8')
self.network.send_msg(self.clientAddr, identMsg)
def sendMessage(self, message: bytes) -> None:

View File

@ -35,14 +35,14 @@ class Server:
self.homeDirectory = ""
self.executor.baseDir = Executor(self.homeDirectory)
def parseCommand(self, command: str) -> str:
def parseCommand(self, command: str) -> None:
if command == "LINOK":
return "LINOK"
self.networkInstance.sendMessage("LINOK".encode('UTF-8'))
elif command == "LINERROR":
return "LINERROR"
self.networkInstance.sendMessage("LINERROR".encode('UTF-8'))
parsedCommand = command.split(" ")
if len(parsedCommand) > 3:
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
# TODO: Ez igy gecironda, ezt meg kene csinalni rendesen.
elif len(parsedCommand) == 1:
return self.execute(parsedCommand[0])
@ -51,42 +51,48 @@ class Server:
elif len(parsedCommand) == 3:
return self.execute(parsedCommand[0], parsedCommand[1], parsedCommand[2])
def execute(self, command: str, firstParam: str = "", secondParam: str = "") -> str:
def execute(self, command: str, firstParam: str = "", secondParam: str = "") -> None:
if self.homeDirectory == "" or self.executor.currentDirectory == "" or self.executor.baseDir == "":
raise Exception("Directories must not be empty string. Did the user log in?")
if command == "MKD":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.createDirectory(firstParam)
self.executor.createDirectory(firstParam)
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "RMD":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.removeDirectory(firstParam)
self.executor.removeDirectory(firstParam)
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "GWD":
if secondParam != "" or firstParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.getCurrentDirectory()
self.executor.getCurrentDirectory()
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "CWD":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.setCurrentDirectory(firstParam)
self.executor.setCurrentDirectory(firstParam)
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "LST":
if secondParam != "" or firstParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.listCurrentDirectoryContent()
self.executor.listCurrentDirectoryContent()
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "RMF":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
return self.executor.removeFileInCurrentDirectory(firstParam)
self.executor.removeFileInCurrentDirectory(firstParam)
self.networkInstance.sendMessage("OK".encode('UTF-8'))
elif command == "UPL":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
# TODO
# Megkapod a filenevet argumentumneknt
@ -97,7 +103,7 @@ class Server:
pass
elif command == "DNL":
if secondParam != "":
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
else:
# TODO
# Megkapod a filenevet arguemntumkent
@ -107,7 +113,7 @@ class Server:
# Ha sikeres, OK valaszt megkapod, kulonben ERROR valaszt megkapod
pass
else:
return "ERROR"
self.networkInstance.sendMessage("ERROR".encode('UTF-8'))
def startServer(self):
while True: