This function calls a class to extract information from the given DBMS banner based upon the data in XML file
(banner)
| 84 | self._servicePack = self._servicePack.replace(" ", "") |
| 85 | |
| 86 | def bannerParser(banner): |
| 87 | """ |
| 88 | This function calls a class to extract information from the given |
| 89 | DBMS banner based upon the data in XML file |
| 90 | """ |
| 91 | |
| 92 | xmlfile = None |
| 93 | |
| 94 | if Backend.isDbms(DBMS.MSSQL): |
| 95 | xmlfile = paths.MSSQL_XML |
| 96 | elif Backend.isDbms(DBMS.MYSQL): |
| 97 | xmlfile = paths.MYSQL_XML |
| 98 | elif Backend.isDbms(DBMS.ORACLE): |
| 99 | xmlfile = paths.ORACLE_XML |
| 100 | elif Backend.isDbms(DBMS.PGSQL): |
| 101 | xmlfile = paths.PGSQL_XML |
| 102 | |
| 103 | if not xmlfile: |
| 104 | return |
| 105 | |
| 106 | if Backend.isDbms(DBMS.MSSQL): |
| 107 | handler = MSSQLBannerHandler(banner, kb.bannerFp) |
| 108 | parseXmlFile(xmlfile, handler) |
| 109 | |
| 110 | handler = FingerprintHandler(banner, kb.bannerFp) |
| 111 | parseXmlFile(paths.GENERIC_XML, handler) |
| 112 | else: |
| 113 | handler = FingerprintHandler(banner, kb.bannerFp) |
| 114 | parseXmlFile(xmlfile, handler) |
| 115 | parseXmlFile(paths.GENERIC_XML, handler) |
no test coverage detected
searching dependent graphs…