feature: check for deps on start

This commit is contained in:
Dobin Rutishauser
2024-06-17 11:00:45 +02:00
parent 0d320b38d0
commit 5109561418
3 changed files with 21 additions and 1 deletions
+2 -1
View File
@@ -1,4 +1,3 @@
import shutil
import argparse
from typing import Dict
import os
@@ -19,12 +18,14 @@ from model.settings import Settings
from model.defs import *
from log import setup_logging
from model.carrier import DataReuseEntry
from utils import check_deps
def main():
"""Argument parsing for when called from command line"""
logger.info("Super Mega")
config.load()
check_deps()
settings = Settings()
parser = argparse.ArgumentParser(description='SuperMega shellcode loader')
+15
View File
@@ -3,6 +3,7 @@ import os
import pathlib
import glob
import logging
import shutil
from config import config
from model.defs import *
@@ -10,6 +11,20 @@ from model.defs import *
logger = logging.getLogger("Utils")
def check_deps():
cl = config.get("path_cl")
if shutil.which(cl) == None:
logger.error("Missing dependency: " + cl)
logger.error("Start in x64 Native Tools Command Prompt for VS 2022")
exit(1)
ml = config.get("path_ml64")
if shutil.which(ml) == None:
logger.error("Missing dependency: " + ml)
logger.error("Start in x64 Native Tools Command Prompt for VS 2022")
exit(1)
def delete_all_files_in_directory(directory_path):
files = glob.glob(os.path.join(directory_path, '*'))
for file_path in files:
+4
View File
@@ -9,10 +9,14 @@ from app.views import views
from app.views_project import views_project
from app.views_shcdev import views_shcdev
from log import setup_logging
from utils import check_deps
if __name__ == "__main__":
logging.getLogger('werkzeug').setLevel(logging.ERROR)
setup_logging()
check_deps()
parser = argparse.ArgumentParser()
parser.add_argument('--listenip', type=str, help='IP to listen on', default="0.0.0.0")
parser.add_argument('--listenport', type=int, help='Port to listen on', default=5001)