Skip to content

Commit

Permalink
Merge pull request #3630 from ichorid/f_ipv8-endpoint
Browse files Browse the repository at this point in the history
Use IPv8 endpoint, then packets data to Dispersy
  • Loading branch information
ichorid authored May 15, 2018
2 parents eda8079 + e46649e commit 2809e1f
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 32 deletions.
55 changes: 27 additions & 28 deletions Tribler/Core/APIImplementation/LaunchManyCore.py
Original file line number Diff line number Diff line change
Expand Up @@ -171,25 +171,7 @@ def register(self, session, session_lock):
self.video_server = VideoServer(self.session.config.get_video_server_port(), self.session)
self.video_server.start()

# Dispersy
self.tftp_handler = None
dispersy_endpoint = None
if self.session.config.get_dispersy_enabled():
from Tribler.dispersy.dispersy import Dispersy
from Tribler.dispersy.endpoint import MIMEndpoint

# set communication endpoint
dispersy_endpoint = MIMEndpoint(self.session.config.get_dispersy_port())

working_directory = unicode(self.session.config.get_state_dir())
self.dispersy = Dispersy(dispersy_endpoint, working_directory)

# register TFTP service
from Tribler.Core.TFTP.handler import TftpHandler
self.tftp_handler = TftpHandler(self.session, dispersy_endpoint, "fffffffd".decode('hex'),
block_size=1024)
self.tftp_handler.initialize()

# IPv8
if self.session.config.get_ipv8_enabled():
from Tribler.pyipv8.ipv8.configuration import get_default_configuration
ipv8_config = get_default_configuration()
Expand All @@ -203,16 +185,34 @@ def register(self, session, session_lock):
community_file._DEFAULT_ADDRESSES = [("95.211.155.142", 7001)]
community_file._DNS_ADDRESSES = []

if self.session.config.get_dispersy_enabled():
from Tribler.Core.APIImplementation.IPv8EndpointAdapter import IPv8EndpointAdapter
self.ipv8 = IPv8(ipv8_config, IPv8EndpointAdapter(dispersy_endpoint))
else:
self.ipv8 = IPv8(ipv8_config)
self.ipv8 = IPv8(ipv8_config)

self.session.config.set_anon_proxy_settings(2, ("127.0.0.1",
self.session.
config.get_tunnel_community_socks5_listen_ports()))
# Dispersy
self.tftp_handler = None
if self.session.config.get_dispersy_enabled():
from Tribler.dispersy.dispersy import Dispersy
from Tribler.dispersy.endpoint import MIMEndpoint
from Tribler.dispersy.endpoint import IPv8toDispersyAdapter

# set communication endpoint
if self.session.config.get_ipv8_enabled():
dispersy_endpoint = IPv8toDispersyAdapter(self.ipv8.endpoint)
else:
dispersy_endpoint = MIMEndpoint(self.session.config.get_dispersy_port())

working_directory = unicode(self.session.config.get_state_dir())
self.dispersy = Dispersy(dispersy_endpoint, working_directory)

# register TFTP service
from Tribler.Core.TFTP.handler import TftpHandler
self.tftp_handler = TftpHandler(self.session, dispersy_endpoint, "fffffffd".decode('hex'),
block_size=1024)
self.tftp_handler.initialize()

# Torrent search
if self.session.config.get_torrent_search_enabled() or self.session.config.get_channel_search_enabled():
self.search_manager = SearchManager(self.session)
self.search_manager.initialize()
Expand Down Expand Up @@ -868,10 +868,6 @@ def early_shutdown(self):
yield self.ipv8.unload_overlay(self.tunnel_community)
yield self.ipv8.unload_overlay(self.triblerchain_community)

if self.ipv8:
yield self.ipv8.stop(stop_reactor=False)
self.ipv8.endpoint.close()

if self.dispersy:
self._logger.info("lmc: Shutting down Dispersy...")
now = timemod.time()
Expand All @@ -887,6 +883,9 @@ def early_shutdown(self):
else:
self._logger.info("lmc: Dispersy failed to shutdown in %.2f seconds", diff)

if self.ipv8:
yield self.ipv8.stop(stop_reactor=False)

if self.metadata_store is not None:
yield self.metadata_store.close()
self.metadata_store = None
Expand Down
3 changes: 1 addition & 2 deletions Tribler/Test/Community/Tunnel/test_community.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
from Tribler.pyipv8.ipv8.util import blocking_call_on_reactor_thread
from twisted.internet.defer import inlineCallbacks


# Map of info_hash -> peer list
global_dht_services = {}

Expand Down Expand Up @@ -46,12 +45,12 @@ def tearDown(self):

def create_node(self):
mock_ipv8 = MockIPv8(u"curve25519", TriblerTunnelCommunity, socks_listen_ports=[])
mock_ipv8.overlay._use_main_thread = False
mock_ipv8.overlay.settings.max_circuits = 1

# Load the TriblerChain community
overlay = TriblerChainCommunity(mock_ipv8.my_peer, mock_ipv8.endpoint, mock_ipv8.network,
working_directory=u":memory:")
overlay._use_main_thread = False
mock_ipv8.overlay.triblerchain_community = overlay
mock_ipv8.overlay.dht_provider = MockDHTProvider(mock_ipv8.endpoint.wan_address)

Expand Down
2 changes: 1 addition & 1 deletion Tribler/dispersy
Submodule dispersy updated 3 files
+7 −0 conversion.py
+121 −0 endpoint.py
+227 −0 ipv8_endpoint.py

0 comments on commit 2809e1f

Please sign in to comment.