Bug fix (previously removing temporary directory even if it is needed afterwards)

This commit is contained in:
Miroslav Stampar 2016-05-31 13:21:08 +02:00
parent 26d4dec5fb
commit af7c8cff92
2 changed files with 8 additions and 2 deletions

View File

@ -19,7 +19,7 @@ from lib.core.enums import OS
from lib.core.revision import getRevisionNumber from lib.core.revision import getRevisionNumber
# sqlmap version (<major>.<minor>.<month>.<monthly commit>) # sqlmap version (<major>.<minor>.<month>.<monthly commit>)
VERSION = "1.0.5.125" VERSION = "1.0.5.126"
REVISION = getRevisionNumber() REVISION = getRevisionNumber()
STABLE = VERSION.count('.') <= 2 STABLE = VERSION.count('.') <= 2
VERSION_STRING = "sqlmap/%s#%s" % (VERSION, "stable" if STABLE else "dev") VERSION_STRING = "sqlmap/%s#%s" % (VERSION, "stable" if STABLE else "dev")

View File

@ -13,6 +13,7 @@ from lib.utils import versioncheck # this has to be the first non-standard impo
import bdb import bdb
import distutils import distutils
import glob
import inspect import inspect
import logging import logging
import os import os
@ -45,6 +46,7 @@ try:
from lib.core.data import kb from lib.core.data import kb
from lib.core.data import paths from lib.core.data import paths
from lib.core.common import unhandledExceptionMessage from lib.core.common import unhandledExceptionMessage
from lib.core.common import MKSTEMP_PREFIX
from lib.core.exception import SqlmapBaseException from lib.core.exception import SqlmapBaseException
from lib.core.exception import SqlmapShellQuitException from lib.core.exception import SqlmapShellQuitException
from lib.core.exception import SqlmapSilentQuitException from lib.core.exception import SqlmapSilentQuitException
@ -254,7 +256,11 @@ def main():
dataToStdout("\n[*] shutting down at %s\n\n" % time.strftime("%X"), forceOutput=True) dataToStdout("\n[*] shutting down at %s\n\n" % time.strftime("%X"), forceOutput=True)
if kb.get("tempDir"): if kb.get("tempDir"):
shutil.rmtree(kb.tempDir, ignore_errors=True) for prefix in (MKSTEMP_PREFIX.IPC, MKSTEMP_PREFIX.TESTING, MKSTEMP_PREFIX.COOKIE_JAR, MKSTEMP_PREFIX.BIG_ARRAY):
for filepath in glob.glob(os.path.join(kb.tempDir, "%s*" % prefix)):
os.remove(filepath)
if not glob.glob(os.path.join(kb.tempDir, '*')):
shutil.rmtree(kb.tempDir, ignore_errors=True)
if conf.get("hashDB"): if conf.get("hashDB"):
try: try: