fix for that SQLite3 vs SQLite2 issue

This commit is contained in:
Miroslav Stampar
2010-10-15 09:39:41 +00:00
parent d0df8cdac9
commit 207bef7f19
3 changed files with 35 additions and 17 deletions

View File

@@ -763,9 +763,9 @@ def parseTargetDirect():
elif dbmsName == "Firebird":
import kinterbasdb
except ImportError, _:
errMsg = "sqlmap requires %s third-party library " % data[1]
errMsg = "sqlmap requires '%s' third-party library " % data[1]
errMsg += "in order to directly connect to the database "
errMsg += "%s. Download from %s" % (dbmsName, data[2])
errMsg += "'%s'. Download from '%s'" % (dbmsName, data[2])
raise sqlmapMissingDependence, errMsg
def parseTargetUrl():

View File

@@ -38,12 +38,15 @@ def direct(query, content=True):
if not select:
output = timeout(func=conf.dbmsConnector.execute, args=(query,), duration=conf.timeout, default=None)
elif conf.hostname in kb.resumedQueries and query in kb.resumedQueries[conf.hostname] and "sqlmapoutput" not in query and "sqlmapfile" not in query:
output = base64unpickle(kb.resumedQueries[conf.hostname][query][:-1])
try:
output = base64unpickle(kb.resumedQueries[conf.hostname][query][:-1])
except:
output = timeout(func=conf.dbmsConnector.select, args=(query,), duration=conf.timeout, default=None)
infoMsg = "resumed from file '%s': " % conf.sessionFile
infoMsg += "%s..." % getUnicode(output)[:20]
logger.info(infoMsg)
elif select:
else:
output = timeout(func=conf.dbmsConnector.select, args=(query,), duration=conf.timeout, default=None)
if output is None or len(output) == 0: