File tree Expand file tree Collapse file tree 8 files changed +18
-14
lines changed
Expand file tree Collapse file tree 8 files changed +18
-14
lines changed Original file line number Diff line number Diff line change 1111import codecs
1212import contextlib
1313import copy
14- import distutils .version
1514import functools
1615import getpass
1716import hashlib
4746from extra .cloak .cloak import decloak
4847from lib .core .bigarray import BigArray
4948from lib .core .compat import cmp
49+ from lib .core .compat import LooseVersion
5050from lib .core .compat import round
5151from lib .core .compat import xrange
5252from lib .core .convert import base64pickle
@@ -591,7 +591,7 @@ def isVersionGreaterOrEqualThan(version):
591591
592592 if Backend .getVersion () is not None and version is not None :
593593 try :
594- retVal = distutils . version . LooseVersion (Backend .getVersion ()) >= distutils . version . LooseVersion (version )
594+ retVal = LooseVersion (Backend .getVersion ()) >= LooseVersion (version )
595595 except :
596596 retVal = str (Backend .getVersion ()) >= str (version )
597597
Original file line number Diff line number Diff line change @@ -257,3 +257,8 @@ def __hash__(self):
257257else :
258258 xrange = xrange
259259 buffer = buffer
260+
261+ try :
262+ from pkg_resources import parse_version as LooseVersion
263+ except ImportError :
264+ from distutils .version import LooseVersion
Original file line number Diff line number Diff line change 2020from thirdparty .six import unichr as _unichr
2121
2222# sqlmap version (<major>.<minor>.<month>.<monthly commit>)
23- VERSION = "1.5.10.5 "
23+ VERSION = "1.5.10.6 "
2424TYPE = "dev" if VERSION .count ('.' ) > 2 and VERSION .split ('.' )[- 1 ] != '0' else "stable"
2525TYPE_COLORS = {"dev" : 33 , "stable" : 90 , "pip" : 34 }
2626VERSION_STRING = "sqlmap/%s#%s" % ('.' .join (VERSION .split ('.' )[:- 1 ]) if VERSION .count ('.' ) > 2 and VERSION .split ('.' )[- 1 ] == '0' else VERSION , TYPE )
Original file line number Diff line number Diff line change 2424from lib .core .common import randomStr
2525from lib .core .common import shellExec
2626from lib .core .compat import round
27- from lib .core .compat import xrange
2827from lib .core .convert import encodeBase64
2928from lib .core .data import kb
3029from lib .core .data import logger
Original file line number Diff line number Diff line change 55See the file 'LICENSE' for copying permission
66"""
77
8- import distutils .version
98import re
109import socket
1110
1211from lib .core .common import filterNone
1312from lib .core .common import getSafeExString
13+ from lib .core .compat import LooseVersion
1414from lib .core .compat import xrange
1515from lib .core .data import conf
1616from lib .core .data import kb
@@ -109,7 +109,7 @@ def create_sock():
109109 if not success :
110110 errMsg = "can't establish SSL connection"
111111 # Reference: https://docs.python.org/2/library/ssl.html
112- if distutils . version . LooseVersion (PYVERSION ) < distutils . version . LooseVersion ("2.7.9" ):
112+ if LooseVersion (PYVERSION ) < LooseVersion ("2.7.9" ):
113113 errMsg += " (please retry with Python >= 2.7.9)"
114114
115115 if kb .sslSuccess and not self .retrying :
Original file line number Diff line number Diff line change 55See the file 'LICENSE' for copying permission
66"""
77
8- import distutils .version
98import os
109
1110from lib .core .agent import agent
1716from lib .core .common import ntToPosixSlashes
1817from lib .core .common import randomStr
1918from lib .core .common import unArrayizeValue
19+ from lib .core .compat import LooseVersion
2020from lib .core .data import kb
2121from lib .core .data import logger
2222from lib .core .data import paths
@@ -38,13 +38,13 @@ def udfSetRemotePath(self):
3838
3939 banVer = kb .bannerFp ["dbmsVersion" ]
4040
41- if banVer and distutils . version . LooseVersion (banVer ) >= distutils . version . LooseVersion ("5.0.67" ):
41+ if banVer and LooseVersion (banVer ) >= LooseVersion ("5.0.67" ):
4242 if self .__plugindir is None :
4343 logger .info ("retrieving MySQL plugin directory absolute path" )
4444 self .__plugindir = unArrayizeValue (inject .getValue ("SELECT @@plugin_dir" ))
4545
4646 # On MySQL 5.1 >= 5.1.19 and on any version of MySQL 6.0
47- if self .__plugindir is None and distutils . version . LooseVersion (banVer ) >= distutils . version . LooseVersion ("5.1.19" ):
47+ if self .__plugindir is None and LooseVersion (banVer ) >= LooseVersion ("5.1.19" ):
4848 logger .info ("retrieving MySQL base directory absolute path" )
4949
5050 # Reference: http://dev.mysql.com/doc/refman/5.1/en/server-options.html#option_mysqld_basedir
Original file line number Diff line number Diff line change 55See the file 'LICENSE' for copying permission
66"""
77
8- import distutils .version
98import os
109
1110from lib .core .common import Backend
1716from lib .core .common import isNoneValue
1817from lib .core .common import isStackingAvailable
1918from lib .core .common import randomStr
19+ from lib .core .compat import LooseVersion
2020from lib .core .data import kb
2121from lib .core .data import logger
2222from lib .core .data import paths
@@ -54,9 +54,9 @@ def udfSetLocalPaths(self):
5454 if not banVer or not banVer [0 ].isdigit ():
5555 errMsg = "unsupported feature on unknown version of PostgreSQL"
5656 raise SqlmapUnsupportedFeatureException (errMsg )
57- elif distutils . version . LooseVersion (banVer ) >= distutils . version . LooseVersion ("10" ):
57+ elif LooseVersion (banVer ) >= LooseVersion ("10" ):
5858 majorVer = banVer .split ('.' )[0 ]
59- elif distutils . version . LooseVersion (banVer ) >= distutils . version . LooseVersion ("8.2" ) and '.' in banVer :
59+ elif LooseVersion (banVer ) >= LooseVersion ("8.2" ) and '.' in banVer :
6060 majorVer = '.' .join (banVer .split ('.' )[:2 ])
6161 else :
6262 errMsg = "unsupported feature on versions of PostgreSQL before 8.2"
Original file line number Diff line number Diff line change 1818 sys .exit ("[!] wrong installation detected (missing modules). Visit 'https://github.com/sqlmapproject/sqlmap/#installation' for further details" )
1919
2020 import bdb
21- import distutils
2221 import glob
2322 import inspect
2423 import json
6463 from lib .core .common import MKSTEMP_PREFIX
6564 from lib .core .common import setColor
6665 from lib .core .common import unhandledExceptionMessage
66+ from lib .core .compat import LooseVersion
6767 from lib .core .compat import xrange
6868 from lib .core .exception import SqlmapBaseException
6969 from lib .core .exception import SqlmapShellQuitException
@@ -114,7 +114,7 @@ def checkEnvironment():
114114 logger .critical (errMsg )
115115 raise SystemExit
116116
117- if distutils . version . LooseVersion (VERSION ) < distutils . version . LooseVersion ("1.0" ):
117+ if LooseVersion (VERSION ) < LooseVersion ("1.0" ):
118118 errMsg = "your runtime environment (e.g. PYTHONPATH) is "
119119 errMsg += "broken. Please make sure that you are not running "
120120 errMsg += "newer versions of sqlmap with runtime scripts for older "
You can’t perform that action at this time.
0 commit comments