def is_root(): if 'NMAP_PRIVILEGED' in os.environ: return True elif 'NMAP_UNPRIVILEGED' in os.environ: return False else: return sys.platform == "win32" or os.getuid() == 0 or is_maemo()
def __init__(self): HIGVBox.__init__(self) # The borders are consuming too much space on Maemo. Setting it to # 0 pixels while on Maemo if is_maemo(): self.set_border_width(0) self.set_spacing(0) # True if nothing has happened here page yet, i.e., it's okay to load a # scan from a file here. self.empty = True # The most recent name the inventory on this page has been saved under. self.saved_filename = None # The network inventory shown by this page. It may consist of multiple # scans. self.inventory = NetworkInventory() # The list of currently running scans (NmapCommand objects). self.jobs = [] # The list of running and finished scans shown on the Nmap Output page. self.scans_store = ScansListStore() self.top_box = HIGVBox() self.__create_toolbar() self.__create_command_toolbar() self.select_default_profile() self.scan_result = ScanResult(self.inventory, self.scans_store) self.host_view_selection = self.scan_result.get_host_selection() self.service_view_selection = self.scan_result.get_service_selection() self.host_view_selection.connect('changed', self.update_host_info) self.service_view_selection.connect('changed', self.update_service_info) self.scan_result.scan_result_notebook.scans_list.remove_button.connect( "clicked", self._remove_scan_cb) self.hosts = {} self.services = {} self.top_box.set_border_width(6) self.top_box.set_spacing(5) self.top_box._pack_noexpand_nofill(self.toolbar) self.top_box._pack_noexpand_nofill(self.command_toolbar) self._pack_noexpand_nofill(self.top_box) self._pack_expand_fill(self.scan_result) self.scan_result.scan_result_notebook.scans_list.cancel_button.connect( "clicked", self._cancel_scan_cb)
def new_window(): w = ScanWindow() w.connect("destroy", _destroy_callback) if is_maemo(): import hildon hildon_app = hildon.Program() hildon_app.add_window(w) open_windows.append(w) return w
def _create_menubar(self): # Get and pack the menubar menubar = self.ui_manager.get_widget('/menubar') if is_maemo(): menu = gtk.Menu() for child in menubar.get_children(): child.reparent(menu) self.set_menu(menu) menubar.destroy() self.menubar = menu else: self.menubar = menubar self.vbox.pack_start(self.menubar, False, False, 0) self.menubar.show_all()
def __init__(self): HIGVBox.__init__(self) # The borders are consuming too much space on Maemo. Setting it to # 0 pixels while on Maemo if is_maemo(): self.set_border_width(0) self.set_spacing(0) # True if nothing has happened here page yet, i.e., it's okay to load a # scan from a file here. self.empty = True # The most recent name the inventory on this page has been saved under. self.saved_filename = None # The network inventory shown by this page. It may consist of multiple # scans. self.inventory = FilteredNetworkInventory() # The list of currently running scans (NmapCommand objects). self.jobs = [] # The list of running and finished scans shown on the Nmap Output page. self.scans_store = ScansListStore() self.top_box = HIGVBox() self.__create_toolbar() self.__create_command_toolbar() self.select_default_profile() self.scan_result = ScanResult(self.inventory, self.scans_store, scan_interface=self) self.host_view_selection = self.scan_result.get_host_selection() self.service_view_selection = self.scan_result.get_service_selection() self.host_view_selection.connect( 'changed', self.host_selection_changed) self.service_view_selection.connect( 'changed', self.service_selection_changed) host_page = self.scan_result.scan_result_notebook.open_ports.host host_page.host_view.get_selection().connect( 'changed', self.service_host_selection_changed) self.host_view_selection.connect( 'changed', self.host_selection_changed) self.scan_result.scan_result_notebook.nmap_output.connect( "changed", self._displayed_scan_change_cb) self.scan_result.scan_result_notebook.scans_list.remove_button.connect( "clicked", self._remove_scan_cb) # The hosts dict maps hostnames (as returned by HostInfo.get_hostname) # to HostInfo objects. self.hosts = {} # The services dict maps service names ("http") to lists of dicts of # the form # {'host': <HostInfo object>, 'hostname': u'example.com', # 'port_state': u'open', 'portid': u'22', 'protocol': u'tcp', # 'service_conf': u'10', 'service_extrainfo': u'protocol 2.0', # 'service_method': u'probed', 'service_name': u'ssh', # 'service_product': u'OpenSSH', 'service_version': u'4.3'} # In other words each dict has the same keys as an entry in # HostInfo.ports, with the addition of "host" and "hostname" keys. self.services = {} self.top_box.set_border_width(6) self.top_box.set_spacing(5) self.top_box._pack_noexpand_nofill(self.toolbar) self.top_box._pack_noexpand_nofill(self.command_toolbar) self._pack_noexpand_nofill(self.top_box) self._pack_expand_fill(self.scan_result) self.scan_result.scan_result_notebook.scans_list.cancel_button.connect( "clicked", self._cancel_scans_list_cb) self.update_cancel_button() # Create the filter GUI self.filter_bar = FilterBar() self.pack_start(self.filter_bar, False, True, 0) self.filter_bar.set_no_show_all(True) self.filter_timeout_id = None self.filter_bar.connect("changed", self.filter_changed) self.scan_result.filter_toggle_button.connect("toggled", self.filter_toggle_toggled) self.scan_result.filter_toggle_button.show()
# ***************************************************************************/ import gtk from zenmapGUI.SearchGUI import SearchGUI import zenmapCore.I18N from zenmapCore.UmitConf import is_maemo from zenmapGUI.higwidgets.higboxes import HIGVBox from zenmapGUI.higwidgets.higbuttons import HIGButton BaseSearchWindow = None hildon = None if is_maemo(): import hildon class BaseSearchWindow(hildon.Window): def __init__(self): hildon.Window.__init__(self) def _pack_widgets(self): pass else: class BaseSearchWindow(gtk.Window): def __init__(self): gtk.Window.__init__(self) self.set_title(_("Search Scans")) self.set_position(gtk.WIN_POS_CENTER)
def is_root(): return sys.platform == "win32" or os.getuid() == 0 or is_maemo()
# ***************************************************************************/ import gtk from zenmapGUI.SearchGUI import SearchGUI import zenmapCore.I18N from zenmapCore.UmitConf import is_maemo from zenmapGUI.higwidgets.higboxes import HIGVBox from zenmapGUI.higwidgets.higbuttons import HIGButton BaseSearchWindow = None hildon = None if is_maemo(): import hildon class BaseSearchWindow(hildon.Window): def __init__(self): hildon.Window.__init__(self) def _pack_widgets(self): pass else: class BaseSearchWindow(gtk.Window): def __init__(self): gtk.Window.__init__(self) self.set_title(_("Search Scans")) self.set_position(gtk.WIN_POS_CENTER) def _pack_widgets(self):