File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 128128from lib .core .settings import PAYLOAD_DELIMITER
129129from lib .core .settings import PLATFORM
130130from lib .core .settings import PRINTABLE_CHAR_REGEX
131+ from lib .core .settings import PUSH_VALUE_EXCEPTION_RETRY_COUNT
131132from lib .core .settings import PYVERSION
132133from lib .core .settings import REFERER_ALIASES
133134from lib .core .settings import REFLECTED_BORDER_REGEX
@@ -2183,7 +2184,22 @@ def pushValue(value):
21832184 Push value to the stack (thread dependent)
21842185 """
21852186
2186- getCurrentThreadData ().valueStack .append (copy .deepcopy (value ))
2187+ _ = None
2188+ success = False
2189+
2190+ for i in xrange (PUSH_VALUE_EXCEPTION_RETRY_COUNT ):
2191+ try :
2192+ getCurrentThreadData ().valueStack .append (copy .deepcopy (value ))
2193+ success = True
2194+ break
2195+ except Exception , ex :
2196+ _ = ex
2197+
2198+ if not success :
2199+ getCurrentThreadData ().valueStack .append (None )
2200+
2201+ if _ :
2202+ raise _
21872203
21882204def popValue ():
21892205 """
Original file line number Diff line number Diff line change 2020from lib .core .revision import getRevisionNumber
2121
2222# sqlmap version and site
23- VERSION = "1.0.0.21 "
23+ VERSION = "1.0.0.22 "
2424REVISION = getRevisionNumber ()
2525STABLE = VERSION .count ('.' ) <= 2
2626VERSION_STRING = "sqlmap/%s#%s" % (VERSION , "stable" if STABLE else "dev" )
139139# Suffix used for naming meta databases in DBMS(es) without explicit database name
140140METADB_SUFFIX = "_masterdb"
141141
142+ # Number of times to retry the pushValue during the exceptions (e.g. KeyboardInterrupt)
143+ PUSH_VALUE_EXCEPTION_RETRY_COUNT = 3
144+
142145# Minimum time response set needed for time-comparison based on standard deviation
143146MIN_TIME_RESPONSES = 30
144147
You can’t perform that action at this time.
0 commit comments