1414from lib .core .common import isTechniqueAvailable
1515from lib .core .common import safeSQLIdentificatorNaming
1616from lib .core .common import safeStringFormat
17+ from lib .core .common import singleTimeLogMessage
1718from lib .core .common import unArrayizeValue
1819from lib .core .common import unsafeSQLIdentificatorNaming
1920from lib .core .data import conf
@@ -94,8 +95,12 @@ def getTables(self):
9495 for db in dbs :
9596 if conf .excludeSysDbs and db in self .excludeDbsList :
9697 infoMsg = "skipping system database '%s'" % db
97- logger .info (infoMsg )
98+ singleTimeLogMessage (infoMsg )
99+ continue
98100
101+ if conf .exclude and db in conf .exclude .split (',' ):
102+ infoMsg = "skipping database '%s'" % db
103+ singleTimeLogMessage (infoMsg )
99104 continue
100105
101106 for query in (rootQuery .inband .query , rootQuery .inband .query2 , rootQuery .inband .query3 ):
@@ -113,8 +118,12 @@ def getTables(self):
113118 for db in dbs :
114119 if conf .excludeSysDbs and db in self .excludeDbsList :
115120 infoMsg = "skipping system database '%s'" % db
116- logger .info (infoMsg )
121+ singleTimeLogMessage (infoMsg )
122+ continue
117123
124+ if conf .exclude and db in conf .exclude .split (',' ):
125+ infoMsg = "skipping database '%s'" % db
126+ singleTimeLogMessage (infoMsg )
118127 continue
119128
120129 infoMsg = "fetching number of tables for "
@@ -199,8 +208,12 @@ def searchTable(self):
199208
200209 if conf .excludeSysDbs and db in self .excludeDbsList :
201210 infoMsg = "skipping system database '%s'" % db
202- logger .info (infoMsg )
211+ singleTimeLogMessage (infoMsg )
212+ continue
203213
214+ if conf .exclude and db in conf .exclude .split (',' ):
215+ infoMsg = "skipping database '%s'" % db
216+ singleTimeLogMessage (infoMsg )
204217 continue
205218
206219 if any (isTechniqueAvailable (_ ) for _ in (PAYLOAD .TECHNIQUE .UNION , PAYLOAD .TECHNIQUE .ERROR , PAYLOAD .TECHNIQUE .QUERY )) or conf .direct :
@@ -271,8 +284,8 @@ def searchColumn(self):
271284 infoMsgDb = ""
272285 colList = conf .col .split (',' )
273286
274- if conf .excludeCol :
275- colList = [_ for _ in colList if _ not in conf .excludeCol .split (',' )]
287+ if conf .exclude :
288+ colList = [_ for _ in colList if _ not in conf .exclude .split (',' )]
276289
277290 origTbl = conf .tbl
278291 origDb = conf .db
@@ -318,8 +331,7 @@ def searchColumn(self):
318331 _ = conf .db .split (',' )
319332 infoMsgDb = " in database%s '%s'" % ("s" if len (_ ) > 1 else "" , ", " .join (db for db in _ ))
320333 elif conf .excludeSysDbs :
321- msg = "skipping system database%s '%s'" % ("s" if len (self .excludeDbsList ) > 1 else "" , ", " .join (db for db in self .excludeDbsList ))
322- logger .info (msg )
334+ infoMsgDb = " not in system database%s '%s'" % ("s" if len (self .excludeDbsList ) > 1 else "" , ", " .join (db for db in self .excludeDbsList ))
323335 else :
324336 infoMsgDb = " across all databases"
325337
@@ -334,6 +346,9 @@ def searchColumn(self):
334346 if conf .excludeSysDbs and db in self .excludeDbsList :
335347 continue
336348
349+ if conf .exclude and db in conf .exclude .split (',' ):
350+ continue
351+
337352 if any (isTechniqueAvailable (_ ) for _ in (PAYLOAD .TECHNIQUE .UNION , PAYLOAD .TECHNIQUE .ERROR , PAYLOAD .TECHNIQUE .QUERY )) or conf .direct :
338353 query = rootQuery .inband .query % (db , db , db , db , db , db )
339354 query += " AND %s" % colQuery .replace ("[DB]" , db )
0 commit comments