def _deferred_start(self): ret = update_db() if ret == -1: reactor.stop() return if ret == 0: create_db() init_db() sync_clean_untracked_files() sync_refresh_memory_variables() sync_initialize_snimap() self.state.orm_tp.start() reactor.addSystemEventTrigger('before', 'shutdown', self.shutdown) for sock in self.state.http_socks: listen_tcp_on_sock(reactor, sock.fileno(), self.api_factory) for sock in self.state.https_socks: listen_tls_on_sock(reactor, fd=sock.fileno(), contextFactory=self.state.snimap, factory=self.api_factory) self.start_jobs() self.print_listening_interfaces()
def _deferred_start(self): ret = update_db() if ret == -1: reactor.stop() return if ret == 0: create_db() init_db() sync_clean_untracked_files() sync_refresh_memory_variables() self.state.orm_tp.start() reactor.addSystemEventTrigger('before', 'shutdown', self.shutdown) for sock in self.state.http_socks: listen_tcp_on_sock(reactor, sock.fileno(), self.api_factory) self.state.process_supervisor = ProcessSupervisor( self.state.https_socks, '127.0.0.1', 8082) self.state.process_supervisor.maybe_launch_https_workers() self.start_jobs() self.print_listening_interfaces()
def _deferred_start(self): ret = update_db() if ret == -1: reactor.stop() return if ret == 0: create_db() init_db() sync_clean_untracked_files() sync_refresh_memory_variables() self.state.orm_tp.start() reactor.addSystemEventTrigger('before', 'shutdown', self.shutdown) for sock in self.state.http_socks: listen_tcp_on_sock(reactor, sock.fileno(), self.api_factory) self.state.process_supervisor = ProcessSupervisor(self.state.https_socks, '127.0.0.1', 8082) self.state.process_supervisor.maybe_launch_https_workers() self.start_jobs() self.print_listening_interfaces()
def _deferred_start(self): ret = update_db() if ret == -1: reactor.stop() if ret == 0: init_db() sync_clean_untracked_files() sync_refresh_memory_variables() GLSettings.orm_tp.start() reactor.addSystemEventTrigger('after', 'shutdown', GLSettings.orm_tp.stop) arw = APIResourceWrapper() GLSettings.api_factory = Site(arw, logFormatter=timedLogFormatter) for sock in GLSettings.http_socks: listen_tcp_on_sock(reactor, sock.fileno(), GLSettings.api_factory) GLSettings.state.process_supervisor = ProcessSupervisor(GLSettings.https_socks, '127.0.0.1', 8082) yield GLSettings.state.process_supervisor.maybe_launch_https_workers() GLSettings.start_jobs() GLSettings.start_services() GLSettings.print_listening_interfaces()
def _deferred_start(self): ret = update_db() if ret == -1: reactor.stop() if ret == 0: init_db() sync_clean_untracked_files() sync_refresh_memory_variables() GLSettings.orm_tp.start() reactor.addSystemEventTrigger('after', 'shutdown', GLSettings.orm_tp.stop) arw = APIResourceWrapper() GLSettings.api_factory = Site(arw, logFormatter=timedLogFormatter) for sock in GLSettings.http_socks: listen_tcp_on_sock(reactor, sock.fileno(), GLSettings.api_factory) GLSettings.state.process_supervisor = ProcessSupervisor( GLSettings.https_socks, '127.0.0.1', GLSettings.bind_port) yield GLSettings.state.process_supervisor.maybe_launch_https_workers() GLSettings.start_jobs() print( "GlobaLeaks is now running and accessible at the following urls:") if GLSettings.memory_copy.reachable_via_web: print("- http://%s:%d%s" % (GLSettings.bind_address, GLSettings.bind_port, GLSettings.api_prefix)) if GLSettings.memory_copy.hostname: print("- http://%s:%d%s" % (GLSettings.memory_copy.hostname, GLSettings.bind_port, GLSettings.api_prefix)) else: print("- http://127.0.0.1:%d%s" % (GLSettings.bind_port, GLSettings.api_prefix)) if GLSettings.onionservice is not None: print("- http://%s%s" % (GLSettings.onionservice, GLSettings.api_prefix))
def setUp(self): self.test_reactor = task.Clock() jobs.job.reactor = self.test_reactor tempdict.TempDict.reactor = self.test_reactor self.state = State init_state() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', 'glbackend-%d.db' % DATABASE_VERSION), os.path.join(Settings.db_file_path) ) else: yield db.create_db() yield db.init_db() yield self.set_hostnames(1) yield db.refresh_memory_variables() self.state.reset_hourly() Settings.submission_minimum_delay = 0 self.internationalized_text = load_appdata()['node']['whistleblowing_button']
def setUp(self): self.test_reactor = task.Clock() jobs.base.test_reactor = self.test_reactor tempdict.test_reactor = self.test_reactor token.TokenList.reactor = self.test_reactor runner.test_reactor = self.test_reactor GLSessions.reactor = self.test_reactor init_glsettings_for_unit_tests() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', GLSettings.db_file_name), os.path.join(GLSettings.working_path, 'db', GLSettings.db_file_name) ) else: yield db.init_db(use_single_lang=True) allow_unencrypted = self.encryption_scenario in ['PLAINTEXT', 'MIXED'] yield update_node_setting('allow_unencrypted', allow_unencrypted) yield update_node_setting('submission_minimum_delay', 0) yield db.refresh_memory_variables() Alarm.reset() event.EventTrackQueue.clear() jobs.statistics_sched.StatisticsSchedule.reset() self.internationalized_text = load_appdata()['node']['whistleblowing_button']
def setUp(self): self.test_reactor = task.Clock() jobs.base.test_reactor = self.test_reactor token.TokenList.reactor = self.test_reactor runner.test_reactor = self.test_reactor tempdict.test_reactor = self.test_reactor GLSessions.reactor = self.test_reactor init_glsettings_for_unit_tests() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', GLSettings.db_file_name), os.path.join(GLSettings.working_path, 'db', GLSettings.db_file_name)) else: yield db.init_db(use_single_lang=True) allow_unencrypted = self.encryption_scenario in ['PLAINTEXT', 'MIXED'] yield update_node_setting('allow_unencrypted', allow_unencrypted) yield db.refresh_memory_variables() Alarm.reset() event.EventTrackQueue.clear() jobs.statistics_sched.StatisticsSchedule.reset() self.internationalized_text = load_appdata( )['node']['whistleblowing_button']
def setUp(self): init_glsettings_for_unit_tests() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', GLSettings.db_file_name), os.path.join(GLSettings.working_path, 'db', GLSettings.db_file_name)) else: yield db.init_db() yield db.refresh_memory_variables() for fixture in getattr(self, 'fixtures', []): yield import_fixture(fixture) # override of imported memory variables GLSettings.memory_copy.allow_unencrypted = True anomaly.Alarm.reset() event.EventTrackQueue.reset() statistics_sched.StatisticsSchedule.reset() self.internationalized_text = load_appdata( )['node']['whistleblowing_button']
def setUp(self): self.test_reactor = task.Clock() jobs.base.test_reactor = self.test_reactor token.TokenList.reactor = self.test_reactor runner.test_reactor = self.test_reactor tempdict.test_reactor = self.test_reactor GLSettings.sessions.reactor = self.test_reactor init_glsettings_for_unit_tests() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', GLSettings.db_file_name), os.path.join(GLSettings.working_path, 'db', GLSettings.db_file_name) ) else: yield db.init_db() yield db.refresh_memory_variables() for fixture in getattr(self, 'fixtures', []): yield import_fixture(fixture) # override of imported memory variables GLSettings.memory_copy.allow_unencrypted = True Alarm.reset() event.EventTrackQueue.reset() jobs.statistics_sched.StatisticsSchedule.reset() self.internationalized_text = load_appdata()['node']['whistleblowing_button']
def start_globaleaks(self): try: GLSettings.fix_file_permissions() GLSettings.drop_privileges() GLSettings.check_directories() # Check presence of an existing database and eventually perform its migration check = check_db_files() if check == -1: self._reactor.stop() elif check == 0: yield init_db() else: yield update_version() yield init_appdata() yield clean_untracked_files() yield refresh_memory_variables() if GLSettings.cmdline_options: yield apply_cmdline_options() self.start_asynchronous_jobs() log.msg("GLBackend is now running") for ip in GLSettings.bind_addresses: log.msg("Visit http://%s:%d to interact with me" % (ip, GLSettings.bind_port)) for host in GLSettings.accepted_hosts: if host not in GLSettings.bind_addresses: log.msg("Visit http://%s:%d to interact with me" % (host, GLSettings.bind_port)) for other in GLSettings.configured_hosts: if other: log.msg("Visit %s to interact with me" % other) log.msg( "Remind: GlobaLeaks is not accessible from other URLs, this is strictly enforced" ) log.msg( "Check documentation in https://github.com/globaleaks/GlobaLeaks/wiki/ for special enhancement" ) except Exception as excep: log.err( "ERROR: Cannot start GlobaLeaks; please manual check the error." ) log.err("EXCEPTION: %s" % excep) self._reactor.stop()
def start_globaleaks(self): try: GLSettings.fix_file_permissions() GLSettings.drop_privileges() GLSettings.check_directories() # Check presence of an existing database and eventually perform its migration check = check_db_files() if check == -1: self._reactor.stop() elif check == 0: yield init_db() else: yield update_version() yield init_appdata() yield clean_untracked_files() yield refresh_memory_variables() if GLSettings.cmdline_options: yield apply_cmdline_options() self.start_asynchronous_jobs() log.msg("GLBackend is now running") for ip in GLSettings.bind_addresses: log.msg("Visit http://%s:%d to interact with me" % (ip, GLSettings.bind_port)) for host in GLSettings.accepted_hosts: if host not in GLSettings.bind_addresses: log.msg("Visit http://%s:%d to interact with me" % (host, GLSettings.bind_port)) for other in GLSettings.configured_hosts: if other: log.msg("Visit %s to interact with me" % other) log.msg("Remind: GlobaLeaks is not accessible from other URLs, this is strictly enforced") log.msg("Check documentation in https://github.com/globaleaks/GlobaLeaks/wiki/ for special enhancement") except Exception as excep: log.err("ERROR: Cannot start GlobaLeaks; please manual check the error.") log.err("EXCEPTION: %s" % excep) self._reactor.stop()
def setUp(self): self.test_reactor = task.Clock() jobs.job.reactor = self.test_reactor tempdict.reactor = self.test_reactor token.TokenList.reactor = self.test_reactor Sessions.reactor = self.test_reactor self.state = State init_state() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', 'glbackend-%d.db' % DATABASE_VERSION), os.path.join(Settings.db_file_path)) else: yield db.create_db() yield db.init_db() allow_unencrypted = self.encryption_scenario in ['PLAINTEXT', 'MIXED'] yield tw(db_set_config_variable, 1, u'allow_unencrypted', allow_unencrypted) yield self.set_hostnames(1) yield db.refresh_memory_variables() sup = ProcessSupervisor([], '127.0.0.1', 8082) self.state.process_supervisor = sup self.state.reset_hourly() Settings.submission_minimum_delay = 0 self.internationalized_text = load_appdata( )['node']['whistleblowing_button']
def start_globaleaks(self): try: GLSettings.fix_file_permissions() GLSettings.drop_privileges() GLSettings.check_directories() if GLSettings.initialize_db: yield init_db() yield clean_untracked_files() yield refresh_memory_variables() self.start_asynchronous_jobs() except Exception as excep: log.err( "ERROR: Cannot start GlobaLeaks; please manually check the error." ) log.err("EXCEPTION: %s" % excep) self._reactor.stop()
def start_globaleaks(self): try: GLSettings.fix_file_permissions() GLSettings.drop_privileges() GLSettings.check_directories() GLSettings.orm_tp.start() self._reactor.addSystemEventTrigger('after', 'shutdown', GLSettings.orm_tp.stop) if GLSettings.initialize_db: yield init_db() yield clean_untracked_files() yield refresh_memory_variables() self.start_asynchronous_jobs() except Exception as excep: log.err("ERROR: Cannot start GlobaLeaks; please manually check the error.") log.err("EXCEPTION: %s" % excep) self._reactor.stop()
def start_globaleaks(self): try: GLSettings.fix_file_permissions() GLSettings.drop_privileges() GLSettings.check_directories() if GLSettings.initialize_db: yield init_db() else: yield update_version() yield init_appdata() yield clean_untracked_files() yield refresh_memory_variables() self.start_asynchronous_jobs() except Exception as excep: log.err("ERROR: Cannot start GlobaLeaks; please manual check the error.") log.err("EXCEPTION: %s" % excep) self._reactor.stop()
def setUp(self): self.test_reactor = task.Clock() jobs.job.reactor = self.test_reactor tempdict.reactor = self.test_reactor token.TokenList.reactor = self.test_reactor Sessions.reactor = self.test_reactor self.state = State init_state() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', 'glbackend-%d.db' % DATABASE_VERSION), os.path.join(Settings.db_file_path) ) else: yield db.create_db() yield db.init_db() allow_unencrypted = self.encryption_scenario in ['PLAINTEXT', 'MIXED'] yield tw(db_set_config_variable, 1, u'allow_unencrypted', allow_unencrypted) yield self.set_hostnames(1) yield db.refresh_memory_variables() sup = ProcessSupervisor([], '127.0.0.1', 8082) self.state.process_supervisor = sup self.state.reset_hourly() Settings.submission_minimum_delay = 0 self.internationalized_text = load_appdata()['node']['whistleblowing_button']
def setUp(self): test_config.skipCase(self) self.test_reactor = task.Clock() jobs.base.test_reactor = self.test_reactor tempdict.test_reactor = self.test_reactor token.TokenList.reactor = self.test_reactor GLSessions.reactor = self.test_reactor init_glsettings_for_unit_tests() self.setUp_dummy() if self.initialize_test_database_using_archived_db: shutil.copy( os.path.join(TEST_DIR, 'db', 'empty', GLSettings.db_file_name), os.path.join(GLSettings.working_path, 'db', GLSettings.db_file_name)) else: yield db.init_db(use_single_lang=True) allow_unencrypted = self.encryption_scenario in ['PLAINTEXT', 'MIXED'] yield update_node_setting('allow_unencrypted', allow_unencrypted) yield db.refresh_memory_variables() sup = ProcessSupervisor([], '127.0.0.1', 8082) GLSettings.state.process_supervisor = sup Alarm.reset() event.EventTrackQueue.clear() GLSettings.reset_hourly() GLSettings.submission_minimum_delay = 0 self.internationalized_text = load_appdata( )['node']['whistleblowing_button']