diff --git a/lib/core/common.py b/lib/core/common.py index 1f9937210..0c8e0ee4b 100644 --- a/lib/core/common.py +++ b/lib/core/common.py @@ -935,12 +935,20 @@ def setColor(message, color=None, bold=False, level=None, istty=None): >>> setColor("Hello World", color="red", istty=True) '\\x1b[31mHello World\\x1b[0m' + >>> setColor("[INFO] Hello World", istty=True) + '[\\x1b[32mINFO\\x1b[0m] Hello World' + >>> setColor("[INFO] Hello [CRITICAL] World", istty=True) + '[INFO] Hello [CRITICAL] World' """ retVal = message if message and (IS_TTY or istty) and not conf.get("disableColoring"): # colorizing handler - level = level or extractRegexResult(r"\[(?P%s)\]" % '|'.join(_[0] for _ in getPublicTypeMembers(LOGGING_LEVELS)), message) + if level is None: + levels = re.findall(r"\[(?P%s)\]" % '|'.join(_[0] for _ in getPublicTypeMembers(LOGGING_LEVELS)), message) + + if len(levels) == 1: + level = levels[0] if bold or color: retVal = colored(message, color=color, on_color=None, attrs=("bold",) if bold else None) diff --git a/lib/core/settings.py b/lib/core/settings.py index 685e4d0f3..cf339f9d4 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -18,7 +18,7 @@ from lib.core.enums import OS from thirdparty.six import unichr as _unichr # sqlmap version (...) -VERSION = "1.4.3.2" +VERSION = "1.4.3.3" TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34} VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE)