Changeset 5840

Show
Ignore:
Timestamp:
08/19/10 23:57:57 (3 years ago)
Author:
diogo
Message:

fixed bugs: scan save, and nmap scan result parsing

Location:
network-scanner/branches/GSoC2010/umit/gui
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • network-scanner/branches/GSoC2010/umit/gui/MainWindow.py

    r5829 r5840  
    2626import gtk 
    2727import sys 
     28from subprocess import Popen, PIPE 
    2829from os.path import split, isfile, join 
    2930import xml.sax.saxutils 
     
    4041from umit.gui.FileChoosers import SaveResultsFileChooserDialog 
    4142from umit.gui.FileChoosers import ExportHTMLResultsFileChooserDialog 
    42 from umit.gui.ScanNotebook import ScanNotebook, ScanNotebookPage 
     43from umit.gui.ScanNotebook import ScanNotebook, ScanNotebookPage, NmapScanNotebookPage 
    4344from umit.gui.ScanPage import ScanPage 
    4445from umit.gui.ProfileEditor import ProfileEditor 
     
    389390                self._load_script_manager_cb 
    390391            ), 
     392             
     393            # QuickScan 
     394 
     395            ('QuickScan', 
     396                gtk.STOCK_INDEX, 
     397                _('QuickScan'), 
     398                "<Alt>Q", 
     399                _('Launch QuickScan'), 
     400                self._launch_quickscan 
     401            ), 
    391402 
    392403            # Scan Scheduler 
     
    475486            </menu> 
    476487            <menuitem action='Script Manager'/> 
     488            <menuitem action='QuickScan'/> 
    477489            </menu> 
    478490 
     
    10691081                scan_page = self._new_scan_cb() 
    10701082 
     1083            if scan_page.get_tool()!='nmap': 
     1084                log.error(">>> Not available for Zion")  
     1085                return 
     1086             
    10711087            log.debug(">>> Enabling page widgets") 
    1072             scan_page.enable_widgets() 
     1088            scan_page.get_page().enable_widgets() 
    10731089 
    10741090        if filename and os.access(filename, os.R_OK): 
     
    10801096            # Parse result 
    10811097            f = open(filename) 
    1082             scan_page.parse_result(f) 
    1083             scan_page.saved_filename = filename 
     1098            scan_page.get_page().parse_result(f) 
     1099            scan_page.get_page().saved_filename = filename 
    10841100 
    10851101            # Closing file to avoid problems with file descriptors 
     
    10911107        elif parsed_result: 
    10921108            # Load scan result from parsed object 
    1093             scan_page.load_from_parsed_result(parsed_result) 
     1109            scan_page.get_page().load_from_parsed_result(parsed_result) 
    10941110 
    10951111            log.debug(">>> Setting tab label") 
     
    12951311        a.save() 
    12961312    def _save(self, saving_page, saved_filename): 
     1313         
     1314        # TODO: save Zion scans 
     1315        if saving_page.get_tool()!='nmap': 
     1316            alert = HIGAlertDialog(message_format=_('Can\'t save file'), 
     1317                                       secondary_text=_('Can\'t open file \ 
     1318to write')) 
     1319            alert.run() 
     1320            alert.destroy() 
     1321            log.debug(">>> Can\'t save zion scan") 
     1322            return 
     1323                 
    12971324        log.debug(">>> File been saved: %s" % saved_filename) 
    12981325        if os.access(split(saved_filename)[0], os.W_OK): 
     
    13101337                saving_page.changes = False 
    13111338                saving_page.saved_filename = saved_filename 
    1312                 saving_page.collect_umit_info() 
     1339                saving_page.get_page().collect_umit_info() 
    13131340 
    13141341                log.debug(">>> Page saved? %s" % saving_page.status.saved) 
     
    13171344                          saving_page.saved_filename) 
    13181345 
    1319                 saving_page.parsed.write_xml(f) 
     1346                saving_page.get_page().parsed.write_xml(f) 
    13201347 
    13211348                # Closing file to avoid problems with file descriptors 
     
    15011528        self.script_manager_window.show_all()         
    15021529 
     1530    def _launch_quickscan(self, widget=None, extra=None): 
     1531        pass 
    15031532 
    15041533    # Properties 
  • network-scanner/branches/GSoC2010/umit/gui/ScanNotebook.py

    r5829 r5840  
    282282             
    283283        if not title: 
    284             title = self.get_new_tab_title(page.parsed) 
     284            title = self.get_new_tab_title(page.get_page().parsed) 
    285285        else: 
    286286            title = self.sanitize_tab_title(title) 
     
    346346        self.__page = {'nmap': NmapScanNotebookPage(self), 
    347347                       'zion': ZionScanNotebookPage(self)} 
     348         
     349    def get_page(self): 
     350        return self.__page[self.__tool] 
    348351 
    349352    def __create_toolbar(self):