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 ) )
2013-07-13 21:25:49 +04:00
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 :
2013-07-13 21:25:49 +04:00
__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 ) )
2017-02-28 00:14:52 +03:00
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 )