From 1e57a377ad5b2cd8411bd9081ba2f11cc8f1b9dc Mon Sep 17 00:00:00 2001 From: Miroslav Stampar Date: Tue, 29 Jul 2025 15:51:45 +0200 Subject: [PATCH] Potentially fixes #5934 --- data/txt/sha256sums.txt | 4 ++-- lib/core/bigarray.py | 19 ++++++++++--------- lib/core/settings.py | 2 +- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/data/txt/sha256sums.txt b/data/txt/sha256sums.txt index 8fd3eb29c..29bfa7f32 100644 --- a/data/txt/sha256sums.txt +++ b/data/txt/sha256sums.txt @@ -165,7 +165,7 @@ eed1db5da17eca4c65a8f999166e2246eef84397687ae820bbe4984ef65a09df extra/vulnserv 49bcd74281297c79a6ae5d4b0d1479ddace4476fddaf4383ca682a6977b553e3 lib/controller/handler.py 4608f21a4333c162ab3c266c903fda4793cc5834de30d06affe9b7566dd09811 lib/controller/__init__.py 216c9399853b7454d36dcb552baf9f1169ec7942897ddc46504684325cb6ce00 lib/core/agent.py -0c10a46c77d5366bc535a148c097d267f28aa82d981a328e76be66e11982a562 lib/core/bigarray.py +fbba89420acafcdb9ba1a95428cf2161b13cfa2d1a7ad7d5e70c14b0e04861f0 lib/core/bigarray.py e3b8f8cf9607d12f3de5e6bcd5031f21f50d4b331844b8e921493dfde2efe0f7 lib/core/common.py d53a8aecab8af8b8da4dc1c74d868f70a38770d34b1fa50cae4532cae7ce1c87 lib/core/compat.py ebe518089733722879f5a13e73020ebe55d46fb7410cacf292ca4ea1d9d1c56a lib/core/convert.py @@ -188,7 +188,7 @@ c4bfb493a03caf84dd362aec7c248097841de804b7413d0e1ecb8a90c8550bc0 lib/core/readl d1bd70c1a55858495c727fbec91e30af267459c8f64d50fabf9e4ee2c007e920 lib/core/replication.py 1d0f80b0193ac5204527bfab4bde1a7aee0f693fd008e86b4b29f606d1ef94f3 lib/core/revision.py d2eb8e4b05ac93551272b3d4abfaf5b9f2d3ac92499a7704c16ed0b4f200db38 lib/core/session.py -cf6b58d256247227e0d833b4c8a27229124594ac7a9e921123891276423da61e lib/core/settings.py +a4395bddab0187571065df9e0ee4e67a4078e4177d2333b00d139d2a0b557cf7 lib/core/settings.py 1c5eab9494eb969bc9ce118a2ea6954690c6851cbe54c18373c723b99734bf09 lib/core/shell.py 4eea6dcf023e41e3c64b210cb5c2efc7ca893b727f5e49d9c924f076bb224053 lib/core/subprocessng.py cdd352e1331c6b535e780f6edea79465cb55af53aa2114dcea0e8bf382e56d1a lib/core/target.py diff --git a/lib/core/bigarray.py b/lib/core/bigarray.py index b6e3e6791..fc3695435 100644 --- a/lib/core/bigarray.py +++ b/lib/core/bigarray.py @@ -116,15 +116,16 @@ class BigArray(list): self.append(_) def pop(self): - if len(self.chunks[-1]) < 1: - self.chunks.pop() - try: - with open(self.chunks[-1], "rb") as f: - self.chunks[-1] = pickle.loads(zlib.decompress(f.read())) - except IOError as ex: - errMsg = "exception occurred while retrieving data " - errMsg += "from a temporary file ('%s')" % ex - raise SqlmapSystemException(errMsg) + with self._lock: + if not self.chunks[-1] and len(self.chunks) > 1: + self.chunks.pop() + try: + with open(self.chunks[-1], "rb") as f: + self.chunks[-1] = pickle.loads(zlib.decompress(f.read())) + except IOError as ex: + errMsg = "exception occurred while retrieving data " + errMsg += "from a temporary file ('%s')" % ex + raise SqlmapSystemException(errMsg) return self.chunks[-1].pop() diff --git a/lib/core/settings.py b/lib/core/settings.py index 1438ddab5..30acafe5e 100644 --- a/lib/core/settings.py +++ b/lib/core/settings.py @@ -19,7 +19,7 @@ from lib.core.enums import OS from thirdparty import six # sqlmap version (...) -VERSION = "1.9.7.14" +VERSION = "1.9.7.15" 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)