Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 3c1cead

Browse files
committed
WHERE condition for error-based technique for --tables with --exclude-sysdbs was logically wrong, fixed now
1 parent b957b47 commit 3c1cead

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

plugins/generic/databases.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -254,14 +254,15 @@ def getTables(self, bruteForce=None):
254254
condition = rootQuery.inband.condition if 'condition' in rootQuery.inband else None
255255

256256
if condition:
257+
if not Backend.isDbms(DBMS.SQLITE):
258+
query += " WHERE %s" % condition
259+
query += " IN (%s)" % ",".join("'%s'" % unsafeSQLIdentificatorNaming(db) for db in sorted(dbs))
257260
if conf.excludeSysDbs:
258-
query += " WHERE "
261+
if Backend.isDbms(DBMS.SQLITE):
262+
query += " WHERE "
259263
query += " AND ".join("%s != '%s'" % (condition, unsafeSQLIdentificatorNaming(db)) for db in self.excludeDbsList)
260264
infoMsg = "skipping system database%s '%s'" % ("s" if len(self.excludeDbsList) > 1 else "", ", ".join(db for db in self.excludeDbsList))
261265
logger.info(infoMsg)
262-
elif not Backend.isDbms(DBMS.SQLITE):
263-
query += " WHERE %s" % condition
264-
query += " IN (%s)" % ",".join("'%s'" % unsafeSQLIdentificatorNaming(db) for db in sorted(dbs))
265266

266267
if len(dbs) < 2 and ("%s," % condition) in query:
267268
query = query.replace("%s," % condition, "", 1)

0 commit comments

Comments
 (0)