mirror of
				https://github.com/sqlmapproject/sqlmap.git
				synced 2025-10-31 07:57:47 +03:00 
			
		
		
		
	Fixes #3781
This commit is contained in:
		
							parent
							
								
									580dc2a4e2
								
							
						
					
					
						commit
						c938d77be9
					
				|  | @ -3129,6 +3129,9 @@ def isDBMSVersionAtLeast(minimum): | ||||||
|     False |     False | ||||||
|     >>> isDBMSVersionAtLeast("1.5") |     >>> isDBMSVersionAtLeast("1.5") | ||||||
|     True |     True | ||||||
|  |     >>> kb.dbmsVersion = "MySQL 5.4.3-log4" | ||||||
|  |     >>> isDBMSVersionAtLeast("5") | ||||||
|  |     True | ||||||
|     >>> kb.dbmsVersion = popValue() |     >>> kb.dbmsVersion = popValue() | ||||||
|     """ |     """ | ||||||
| 
 | 
 | ||||||
|  | @ -3137,11 +3140,6 @@ def isDBMSVersionAtLeast(minimum): | ||||||
|     if not any(isNoneValue(_) for _ in (Backend.getVersion(), minimum)) and Backend.getVersion() != UNKNOWN_DBMS_VERSION: |     if not any(isNoneValue(_) for _ in (Backend.getVersion(), minimum)) and Backend.getVersion() != UNKNOWN_DBMS_VERSION: | ||||||
|         version = Backend.getVersion().replace(" ", "").rstrip('.') |         version = Backend.getVersion().replace(" ", "").rstrip('.') | ||||||
| 
 | 
 | ||||||
|         if '.' in version: |  | ||||||
|             parts = version.split('.', 1) |  | ||||||
|             parts[1] = filterStringValue(parts[1], '[0-9]') |  | ||||||
|             version = '.'.join(parts) |  | ||||||
| 
 |  | ||||||
|         correction = 0.0 |         correction = 0.0 | ||||||
|         if ">=" in version: |         if ">=" in version: | ||||||
|             pass |             pass | ||||||
|  | @ -3150,23 +3148,31 @@ def isDBMSVersionAtLeast(minimum): | ||||||
|         elif '<' in version: |         elif '<' in version: | ||||||
|             correction = -VERSION_COMPARISON_CORRECTION |             correction = -VERSION_COMPARISON_CORRECTION | ||||||
| 
 | 
 | ||||||
|         version = float(filterStringValue(version, '[0-9.]')) + correction |         version = extractRegexResult(r"(?P<result>[0-9][0-9.]*)", version) | ||||||
| 
 | 
 | ||||||
|         if isinstance(minimum, six.string_types): |         if version: | ||||||
|             if '.' in minimum: |             if '.' in version: | ||||||
|                 parts = minimum.split('.', 1) |                 parts = version.split('.', 1) | ||||||
|                 parts[1] = filterStringValue(parts[1], '[0-9]') |                 parts[1] = filterStringValue(parts[1], '[0-9]') | ||||||
|                 minimum = '.'.join(parts) |                 version = '.'.join(parts) | ||||||
| 
 | 
 | ||||||
|             correction = 0.0 |             version = float(filterStringValue(version, '[0-9.]')) + correction | ||||||
|             if minimum.startswith(">="): |  | ||||||
|                 pass |  | ||||||
|             elif minimum.startswith(">"): |  | ||||||
|                 correction = VERSION_COMPARISON_CORRECTION |  | ||||||
| 
 | 
 | ||||||
|             minimum = float(filterStringValue(minimum, '[0-9.]')) + correction |             if isinstance(minimum, six.string_types): | ||||||
|  |                 if '.' in minimum: | ||||||
|  |                     parts = minimum.split('.', 1) | ||||||
|  |                     parts[1] = filterStringValue(parts[1], '[0-9]') | ||||||
|  |                     minimum = '.'.join(parts) | ||||||
| 
 | 
 | ||||||
|         retVal = version >= minimum |                 correction = 0.0 | ||||||
|  |                 if minimum.startswith(">="): | ||||||
|  |                     pass | ||||||
|  |                 elif minimum.startswith(">"): | ||||||
|  |                     correction = VERSION_COMPARISON_CORRECTION | ||||||
|  | 
 | ||||||
|  |                 minimum = float(filterStringValue(minimum, '[0-9.]')) + correction | ||||||
|  | 
 | ||||||
|  |             retVal = version >= minimum | ||||||
| 
 | 
 | ||||||
|     return retVal |     return retVal | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -18,7 +18,7 @@ from lib.core.enums import OS | ||||||
| from thirdparty.six import unichr as _unichr | from thirdparty.six import unichr as _unichr | ||||||
| 
 | 
 | ||||||
| # sqlmap version (<major>.<minor>.<month>.<monthly commit>) | # sqlmap version (<major>.<minor>.<month>.<monthly commit>) | ||||||
| VERSION = "1.3.6.55" | VERSION = "1.3.6.56" | ||||||
| TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" | TYPE = "dev" if VERSION.count('.') > 2 and VERSION.split('.')[-1] != '0' else "stable" | ||||||
| TYPE_COLORS = {"dev": 33, "stable": 90, "pip": 34} | 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) | VERSION_STRING = "sqlmap/%s#%s" % ('.'.join(VERSION.split('.')[:-1]) if VERSION.count('.') > 2 and VERSION.split('.')[-1] == '0' else VERSION, TYPE) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user