From a569f21ad721aa6613b62d4e7a35aaf6f8c0fc1a Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Fri, 28 Dec 2018 18:25:56 +0100 Subject: [PATCH] Bug fix (--smoke hasn't tested wrapped functions) --- lib/core/decorators.py | 7 +++++++ lib/core/settings.py | 2 +- txt/checksum.md5 | 4 ++-- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/core/decorators.py b/lib/core/decorators.py index 0dfdbdaa3..ae3635ca6 100644 --- a/lib/core/decorators.py +++ b/lib/core/decorators.py @@ -5,6 +5,7 @@ Copyright (c) 2006-2018 sqlmap developers (http://sqlmap.org/) See the file 'LICENSE' for copying permission """ +import functools import hashlib from lib.core.threads import getCurrentThreadData @@ -16,6 +17,7 @@ def cachedmethod(f, cache={}): Reference: http://code.activestate.com/recipes/325205-cache-decorator-in-python-24/ """ + @functools.wraps(f) def _(*args, **kwargs): key = int(hashlib.md5("|".join(str(_) for _ in (f, args, kwargs))).hexdigest(), 16) & 0x7fffffffffffffff if key not in cache: @@ -26,6 +28,11 @@ def cachedmethod(f, cache={}): return _ def stackedmethod(f): + """ + Method using pushValue/popValue functions (fallback function for stack realignment) + """ + + @functools.wraps(f) def _(*args, **kwargs): threadData = getCurrentThreadData() originalLevel = len(threadData.valueStack) diff --git a/lib/core/settings.py b/lib/core/settings.py index 2aea22271..5aa9f9800 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -19,7 +19,7 @@ from lib.core.enums import DBMS_DIRECTORY_NAME from lib.core.enums import OS # sqlmap version (...) -VERSION = "1.2.12.43" +VERSION = "1.2.12.44" 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) diff --git a/txt/checksum.md5 b/txt/checksum.md5 index 330e65059..0c1c5975a 100644 --- a/txt/checksum.md5 +++ b/txt/checksum.md5 @@ -33,7 +33,7 @@ c347f085bd561adfa26d3a9512e5f3b9 lib/core/bigarray.py 0d082da16c388b3445e656e0760fb582 lib/core/convert.py 9f87391b6a3395f7f50830b391264f27 lib/core/data.py 72016ea5c994a711a262fd64572a0fcd lib/core/datatype.py -4086fb55f42e27de5330505605baad0f lib/core/decorators.py +2e62f7c5e89442e5a76e6d797d54be2c lib/core/decorators.py fbb55cc6100318ff922957b6577dc58f lib/core/defaults.py ac7c070b2726d39fbac1916b1a5f92b2 lib/core/dicts.py 760de985e09f5d11aacd3a8f2d8e9ff2 lib/core/dump.py @@ -49,7 +49,7 @@ c8c386d644d57c659d74542f5f57f632 lib/core/patch.py 0c3eef46bdbf87e29a3f95f90240d192 lib/core/replication.py a7db43859b61569b601b97f187dd31c5 lib/core/revision.py fcb74fcc9577523524659ec49e2e964b lib/core/session.py -2e1f9bb9dce79f8681b8e1c83591d346 lib/core/settings.py +659309102048735a13747b78c300120e lib/core/settings.py a971ce157d04de96ba6e710d3d38a9a8 lib/core/shell.py a7edc9250d13af36ac0108f259859c19 lib/core/subprocessng.py 1581be48127a3a7a9fd703359b6e7567 lib/core/target.py