From f465abd87262d270e14739072f87aa44856312ee Mon Sep 17 00:00:00 2001 From: ohyeah521 Date: Tue, 19 Dec 2023 16:28:24 +0800 Subject: [PATCH] Windows Python tempfile permission error fix (#2309) * Fix PermissionError: [Errno 13] Permission denied Windows Python tempfile permission error fix --- mobsf/StaticAnalyzer/views/android/code_analysis.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/mobsf/StaticAnalyzer/views/android/code_analysis.py b/mobsf/StaticAnalyzer/views/android/code_analysis.py index d42918c3..2b1cd702 100755 --- a/mobsf/StaticAnalyzer/views/android/code_analysis.py +++ b/mobsf/StaticAnalyzer/views/android/code_analysis.py @@ -1,6 +1,7 @@ # -*- coding: utf_8 -*- """Module holding the functions for code analysis.""" +import os import logging import tempfile from pathlib import Path @@ -37,9 +38,11 @@ def get_perm_rules(perm_rules, android_permissions): dynamic_rules.append(p) rules = yaml.dump(dynamic_rules) if rules: - tmp = tempfile.NamedTemporaryFile(mode='w') + tmp = tempfile.NamedTemporaryFile( + mode='w', + delete=False) tmp.write(rules) - tmp.flush() + tmp.close() return tmp except Exception: logger.error('Getting Permission Rules') @@ -98,7 +101,7 @@ def code_analysis(app_dir, typ, manifest_file, android_permissions): [src], {})) logger.info('Android Permission Mapping Completed') - rule_file.close() + os.unlink(rule_file.name) # NIAP Scan niap_findings = niap_scan( niap_rules.as_posix(),