diff --git a/lib/core/common.py b/lib/core/common.py index eb706f6ad..ac74fb1bb 100644 --- a/lib/core/common.py +++ b/lib/core/common.py @@ -1259,8 +1259,8 @@ def getConsoleWidth(default=80): return width if width else default -def clearConsoleLine(): - dataToStdout("\r%s\r" % (" " * (getConsoleWidth() - 1))) +def clearConsoleLine(forceOutput=False): + dataToStdout("\r%s\r" % (" " * (getConsoleWidth() - 1)), forceOutput) def parseXmlFile(xmlFile, handler): stream = StringIO(readCachedFileContent(xmlFile)) diff --git a/lib/core/testing.py b/lib/core/testing.py index d41707afe..1e9e8e3d7 100644 --- a/lib/core/testing.py +++ b/lib/core/testing.py @@ -17,9 +17,9 @@ import tempfile import time from lib.controller.controller import start +from lib.core.common import clearConsoleLine from lib.core.common import dataToStdout from lib.core.common import getCompiledRegex -from lib.core.common import getConsoleWidth from lib.core.common import readXmlFile from lib.core.data import conf from lib.core.data import logger @@ -65,7 +65,7 @@ def smokeTest(): status = '%d/%d (%d%s) ' % (count, length, round(100.0*count/length), '%') dataToStdout("\r[%s] [INFO] complete: %s" % (time.strftime("%X"), status)) - dataToStdout("\r%s\r" % (" "*(getConsoleWidth()-1))) + clearConsoleLine() if retVal: logger.info("smoke test final result: PASSED") else: diff --git a/lib/techniques/brute/use.py b/lib/techniques/brute/use.py index d1f50c080..b37e470bd 100644 --- a/lib/techniques/brute/use.py +++ b/lib/techniques/brute/use.py @@ -10,8 +10,8 @@ See the file 'doc/COPYING' for copying permission import time from lib.core.agent import agent +from lib.core.common import clearConsoleLine from lib.core.common import dataToStdout -from lib.core.common import getConsoleWidth from lib.core.common import getFileItems from lib.core.common import popValue from lib.core.common import pushValue @@ -42,8 +42,8 @@ def tableExists(tableFile): result = Request.queryPage(agent.payload(newValue=query)) if result: - infoMsg = "\r[%s] [INFO] retrieved: %s" % (time.strftime("%X"), table) - infoMsg = "%s%s\n" % (infoMsg, " "*(getConsoleWidth()-1-len(infoMsg))) + clearConsoleLine(True) + infoMsg = "\r[%s] [INFO] retrieved: %s\n" % (time.strftime("%X"), table) dataToStdout(infoMsg, True) retVal.append(table) @@ -53,7 +53,7 @@ def tableExists(tableFile): conf.verbose = popValue() - dataToStdout("\n", True) + clearConsoleLine(True) if not retVal: warnMsg = "no table found" @@ -93,8 +93,8 @@ def columnExists(columnFile): result = Request.queryPage(agent.payload(newValue=query)) if result: - infoMsg = "\r[%s] [INFO] retrieved: %s" % (time.strftime("%X"), column) - infoMsg = "%s%s\n" % (infoMsg, " "*(getConsoleWidth()-1-len(infoMsg))) + clearConsoleLine(True) + infoMsg = "\r[%s] [INFO] retrieved: %s\n" % (time.strftime("%X"), column) dataToStdout(infoMsg, True) retVal.append(column) @@ -104,7 +104,7 @@ def columnExists(columnFile): conf.verbose = popValue() - dataToStdout("\n", True) + clearConsoleLine(True) if not retVal: warnMsg = "no column found"