|
42 | 42 | from lib.core.data import conf |
43 | 43 | from lib.core.data import kb |
44 | 44 | from lib.core.data import logger |
| 45 | +from lib.core.data import paths |
45 | 46 | from lib.core.data import queries |
46 | 47 | from lib.core.data import temp |
47 | 48 | from lib.core.exception import sqlmapMissingMandatoryOptionException |
48 | 49 | from lib.core.exception import sqlmapNoneDataException |
49 | 50 | from lib.core.exception import sqlmapUnsupportedFeatureException |
| 51 | +from lib.core.exception import sqlmapUserQuitException |
50 | 52 | from lib.core.session import setOs |
51 | 53 | from lib.core.settings import SQL_STATEMENTS |
52 | 54 | from lib.core.shell import autoCompletion |
@@ -695,7 +697,17 @@ def getTables(self): |
695 | 697 | if kb.dbms == "MySQL" and not kb.data.has_information_schema: |
696 | 698 | errMsg = "information_schema not available, " |
697 | 699 | errMsg += "back-end DBMS is MySQL < 5.0" |
698 | | - raise sqlmapUnsupportedFeatureException, errMsg |
| 700 | + logger.error(errMsg) |
| 701 | + |
| 702 | + message = "do you want to use common table existance check? [Y/n/q]" |
| 703 | + test = readInput(message, default="Y") |
| 704 | + |
| 705 | + if test[0] in ("n", "N"): |
| 706 | + return |
| 707 | + elif test[0] in ("q", "Q"): |
| 708 | + raise sqlmapUserQuitException |
| 709 | + else: |
| 710 | + return self.tableExists(paths.COMMON_TABLES) |
699 | 711 |
|
700 | 712 | self.forceDbmsEnum() |
701 | 713 |
|
|
0 commit comments