def init(self, server: BaseServer) -> None: """ Should be overridden by a subclass if the initialization is costly. Will be called after check. """ server.start(self.handle_client_stream) self.initialized = True
def init(self, server: BaseServer) -> None: server.start(self.handle_client_stream) self.scanner_info['version'] = Openvas.get_version() self.set_params_from_openvas_settings() if not self.nvti.ctx: with self.feed_lock.wait_for_lock(): Openvas.load_vts_into_redis() self.load_vts() self.initialized = True
def exit_cleanup(pidfile: str, server: BaseServer, _signum=None, _frame=None) -> None: """ Removes the pidfile before ending the daemon. """ pidpath = Path(pidfile) if not pidpath.is_file(): return with pidpath.open() as f: if int(f.read()) == os.getpid(): LOGGER.info("Shutting-down server ...") server.close() LOGGER.debug("Finishing daemon process") pidpath.unlink() sys.exit()
def init(self, server: BaseServer) -> None: server.start(self.handle_client_stream) self.scanner_info['version'] = Openvas.get_version() self.set_params_from_openvas_settings() with self.feed_lock.wait_for_lock(): Openvas.load_vts_into_redis() current_feed = self.nvti.get_feed_version() self.set_vts_version(vts_version=current_feed) vthelper = VtHelper(self.nvti) self.vts.sha256_hash = vthelper.calculate_vts_collection_hash() self.initialized = True
def init(self, server: BaseServer) -> None: notus_handler = NotusResultHandler(self.report_results) if self._mqtt_broker_address: try: client = MQTTClient(self._mqtt_broker_address, self._mqtt_broker_port, "ospd") daemon = MQTTDaemon(client) subscriber = MQTTSubscriber(client) subscriber.subscribe(ResultMessage, notus_handler.result_handler) daemon.run() except (ConnectionRefusedError, gaierror, ValueError) as e: logger.error( "Could not connect to MQTT broker at %s, error was: %s." " Unable to get results from Notus.", self._mqtt_broker_address, e, ) else: logger.info( "MQTT Broker Adress empty. MQTT disabled. Unable to get Notus" " results.") self.scan_collection.init() server.start(self.handle_client_stream) self.scanner_info['version'] = Openvas.get_version() self.set_params_from_openvas_settings() with self.feed_lock.wait_for_lock(): Openvas.load_vts_into_redis() self.set_feed_info() logger.debug("Calculating vts integrity check hash...") vthelper = VtHelper(self.nvti) self.vts.sha256_hash = vthelper.calculate_vts_collection_hash() self.initialized = True
def init(self, server: BaseServer) -> None: self.scan_collection.init() server.start(self.handle_client_stream) self.scanner_info['version'] = Openvas.get_version() self.set_params_from_openvas_settings() with self.feed_lock.wait_for_lock(): Openvas.load_vts_into_redis() notushandler = NotusMetadataHandler(nvti=self.nvti) notushandler.update_metadata() current_feed = self.nvti.get_feed_version() self.set_vts_version(vts_version=current_feed) logger.debug("Calculating vts integrity check hash...") vthelper = VtHelper(self.nvti) self.vts.sha256_hash = vthelper.calculate_vts_collection_hash() self.initialized = True
def exit_cleanup( pidfile: str, server: BaseServer, daemon: OSPDaemon, _signum=None, _frame=None, ) -> None: """Removes the pidfile before ending the daemon.""" signal.signal(signal.SIGINT, signal.SIG_IGN) pidpath = Path(pidfile) if not pidpath.is_file(): return with pidpath.open(encoding='utf-8') as f: if int(f.read()) == os.getpid(): logger.debug("Performing exit clean up") daemon.daemon_exit_cleanup() logger.info("Shutting-down server ...") server.close() logger.debug("Finishing daemon process") pidpath.unlink() sys.exit()