From 115c654429536999adae45dcd2042ca4373a8d5f Mon Sep 17 00:00:00 2001 From: Dobin Date: Fri, 1 Mar 2024 19:04:05 +0000 Subject: [PATCH] refactor: move stuff to working/ --- app/views.py | 4 ++-- build/.gitkeep | 0 helper.py | 2 +- log.py | 4 +++- logs/.gitkeep | 0 model/defs.py | 4 +++- observer.py | 7 ++++--- out/.gitkeep | Bin 6 -> 0 bytes phases/templater.py | 4 ++-- supermega.py | 2 +- 10 files changed, 16 insertions(+), 11 deletions(-) delete mode 100644 build/.gitkeep delete mode 100644 logs/.gitkeep delete mode 100644 out/.gitkeep diff --git a/app/views.py b/app/views.py index b1281df..5d9536d 100644 --- a/app/views.py +++ b/app/views.py @@ -90,12 +90,12 @@ def project(): id = 0 asm_a = "" # for diff asm_b = "" - for file in os.listdir("logs"): + for file in os.listdir(f"{logs_dir}/"): if file.startswith("."): continue print("Handle: ", file) - with open(os.path.join("logs", file), "r") as f: + with open(os.path.join(f"{logs_dir}/", file), "r") as f: if file.endswith(".bin"): continue data = f.read() diff --git a/build/.gitkeep b/build/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/helper.py b/helper.py index 2f88462..470370a 100644 --- a/helper.py +++ b/helper.py @@ -49,7 +49,7 @@ def run_process_checkret(args, check=True): logger.warn(f"An error occurred: {e}") # Handle other exceptions - with open("logs/cmdoutput.log", "ab") as f: + with open(f"{logs_dir}/cmdoutput.log", "ab") as f: cmd = "------------------------------------\n" cmd += "--- " + " ".join(args) + "\n" f.write(cmd.encode('utf-8')) diff --git a/log.py b/log.py index e296332..3953923 100644 --- a/log.py +++ b/log.py @@ -1,5 +1,7 @@ import logging +from model.defs import * + log_messages = [] @@ -46,7 +48,7 @@ class ListHandler(logging.Handler): def writelog(): # write log to file - with open("logs/supermega.log", "w") as f: + with open(f"{logs_dir}/supermega.log", "w") as f: for line in log_messages: f.write(line + "\n") diff --git a/logs/.gitkeep b/logs/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/model/defs.py b/model/defs.py index 34b573e..fc619fe 100644 --- a/model/defs.py +++ b/model/defs.py @@ -37,7 +37,9 @@ class SourceStyle(Enum): iat_reuse = "iat_reuse" -build_dir = "build" +# no slash at end +build_dir = "working/build" +logs_dir = "working/logs" main_c_file = os.path.join(build_dir, "main.c") main_asm_file = os.path.join(build_dir, "main.asm") diff --git a/observer.py b/observer.py index 22ea8f5..69c0f16 100644 --- a/observer.py +++ b/observer.py @@ -5,6 +5,7 @@ from capstone import Cs, CS_ARCH_X86, CS_MODE_64 from model import * from peparser.r2helper import r2_disas from helper import delete_all_files_in_directory +from model.defs import * class Observer(): @@ -32,16 +33,16 @@ class Observer(): def write_to_file(self, filename, data): if not self.active: return - with open("logs/{}-{}".format(self.idx, filename), "w") as f: + with open("{}/{}-{}".format(logs_dir, self.idx, filename), "w") as f: f.write(data) def write_to_file_bin(self, filename, data): if not self.active: return - with open("logs/{}-{}".format(self.idx, filename), "wb") as f: + with open("{}/{}-{}".format(logs_dir, self.idx, filename), "wb") as f: f.write(data) def clean_files(self): - delete_all_files_in_directory("logs/") + delete_all_files_in_directory(f"{logs_dir}/") self.idx = 0 self.logs = [] diff --git a/out/.gitkeep b/out/.gitkeep deleted file mode 100644 index 49cc8ef0e116cef009fe0bd72473a964bbd07f9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6 NcmezWkC%aq0RRg=0u=xN diff --git a/phases/templater.py b/phases/templater.py index dc8a209..91b5e55 100644 --- a/phases/templater.py +++ b/phases/templater.py @@ -74,12 +74,12 @@ def create_c_from_template( observer.add_text("main_c_rendered", rendered_template) # TODO PEB - shutil.copy("data/source/peb_walk/peb_lookup.h", "build/peb_lookup.h") + shutil.copy("data/source/peb_walk/peb_lookup.h", f"{build_dir}/peb_lookup.h") else: observer.add_text("main_c", file_readall_text("data/source/peb_walk/main.c")) shutil.copy("data/source/peb_walk/main.c", main_c_file) # TODO PEB - shutil.copy("data/source/peb_walk/peb_lookup.h", "build/peb_lookup.h") + shutil.copy("data/source/peb_walk/peb_lookup.h", f"{build_dir}/peb_lookup.h") elif source_style == SourceStyle.iat_reuse: if use_templates: diff --git a/supermega.py b/supermega.py index c860883..c1020c2 100644 --- a/supermega.py +++ b/supermega.py @@ -137,7 +137,7 @@ def start(settings: Settings): # Delete: all old files if settings.cleanup_files_on_start: clean_files() - delete_all_files_in_directory("logs/") + delete_all_files_in_directory(f"{logs_dir}/") exit_code = 0 # 0 = success # Load our input