fix for a Ctrl+C bug reported by nightman@email.de

This commit is contained in:
Miroslav Stampar 2011-06-07 17:16:01 +00:00
parent 26062ec71e
commit e7e23d1b79
3 changed files with 13 additions and 15 deletions

View File

@ -517,7 +517,7 @@ mitchell <mitchell@tufala.net>
for reporting a bug
nightman <nightman@email.de>
for reporting several bugs
for reporting considerable amount of bugs
pacman730 <pacman730@users.sourceforge.net>
for reporting a bug

View File

@ -319,6 +319,11 @@ def errorUse(expression, expected=None, resumeValue=True, dump=False):
stopLimit = 1
try:
threadData = getCurrentThreadData()
numThreads = min(conf.threads, stopLimit-startLimit)
threadData.shared.limits = range(startLimit, stopLimit)
threadData.shared.outputs = []
if stopLimit > TURN_OFF_RESUME_INFO_LIMIT:
kb.suppressResumeInfo = True
infoMsg = "suppressing possible resume console info because of "
@ -329,11 +334,6 @@ def errorUse(expression, expected=None, resumeValue=True, dump=False):
for lock in lockNames:
kb.locks[lock] = threading.Lock()
threadData = getCurrentThreadData()
numThreads = min(conf.threads, stopLimit-startLimit)
threadData.shared.limits = range(startLimit, stopLimit)
threadData.shared.outputs = []
def errorThread():
threadData = getCurrentThreadData()
@ -361,8 +361,6 @@ def errorUse(expression, expected=None, resumeValue=True, dump=False):
runThreads(numThreads, errorThread)
outputs = threadData.shared.outputs
except KeyboardInterrupt:
warnMsg = "user aborted during enumeration. sqlmap "
warnMsg += "will display partial output"
@ -375,6 +373,7 @@ def errorUse(expression, expected=None, resumeValue=True, dump=False):
logger.critical(errMsg)
finally:
outputs = threadData.shared.outputs
kb.suppressResumeInfo = False
if not outputs:

View File

@ -259,6 +259,11 @@ def unionUse(expression, unpack=True, dump=False):
stopLimit = 1
try:
threadData = getCurrentThreadData()
numThreads = min(conf.threads, stopLimit-startLimit)
threadData.shared.limits = range(startLimit, stopLimit)
threadData.shared.value = ""
if stopLimit > TURN_OFF_RESUME_INFO_LIMIT:
kb.suppressResumeInfo = True
infoMsg = "suppressing possible resume console info because of "
@ -269,11 +274,6 @@ def unionUse(expression, unpack=True, dump=False):
for lock in lockNames:
kb.locks[lock] = threading.Lock()
threadData = getCurrentThreadData()
numThreads = min(conf.threads, stopLimit-startLimit)
threadData.shared.limits = range(startLimit, stopLimit)
threadData.shared.value = ""
def unionThread():
threadData = getCurrentThreadData()
@ -325,8 +325,6 @@ def unionUse(expression, unpack=True, dump=False):
runThreads(numThreads, unionThread)
value = threadData.shared.value
if conf.verbose == 1:
clearConsoleLine(True)
@ -342,6 +340,7 @@ def unionUse(expression, unpack=True, dump=False):
logger.critical(errMsg)
finally:
value = threadData.shared.value
kb.suppressResumeInfo = False
if not value: