sqlmap/lib/utils/versioncheck.py

30 lines
966 B
Python
Raw Normal View History

2019-03-21 16:00:09 +03:00
#!/usr/bin/env python2
2013-02-06 13:28:17 +04:00
"""
2019-01-05 23:38:52 +03:00
Copyright (c) 2006-2019 sqlmap developers (http://sqlmap.org/)
2017-10-11 15:50:46 +03:00
See the file 'LICENSE' for copying permission
2013-02-06 13:28:17 +04:00
"""
2019-04-30 12:41:03 +03:00
import os
2013-02-06 13:28:17 +04:00
import sys
2018-09-27 10:15:53 +03:00
import time
2013-02-06 13:28:17 +04:00
PYVERSION = sys.version.split()[0]
2019-04-30 12:41:03 +03:00
if (PYVERSION >= "3" or PYVERSION < "2.6") and not int(os.environ.get("SQLMAP_DREI", 0)):
2019-03-04 18:36:19 +03:00
sys.exit("[%s] [CRITICAL] incompatible Python version detected ('%s'). To successfully run sqlmap you'll have to use version 2.6.x or 2.7.x (visit 'https://www.python.org/downloads/')" % (time.strftime("%X"), PYVERSION))
2018-09-09 00:36:08 +03:00
errors = []
2018-05-24 11:07:35 +03:00
extensions = ("bz2", "gzip", "pyexpat", "ssl", "sqlite3", "zlib")
2018-09-09 00:36:08 +03:00
for _ in extensions:
try:
__import__(_)
2018-09-09 00:36:08 +03:00
except ImportError:
errors.append(_)
if errors:
errMsg = "missing one or more core extensions (%s) " % (", ".join("'%s'" % _ for _ in errors))
errMsg += "most likely because current version of Python has been "
2018-09-09 00:36:08 +03:00
errMsg += "built without appropriate dev packages"
2019-03-04 18:36:19 +03:00
sys.exit(errMsg)