From 7b93a172efd15c8d62c117a04256afded2e3f92a Mon Sep 17 00:00:00 2001 From: librelois <elois@ifee.fr> Date: Fri, 19 Jan 2018 23:06:12 +0100 Subject: [PATCH] [fix] #1252 HEAD network infos incorrect with UPnP config --- app/modules/ws2p/lib/WS2PCluster.ts | 31 ++++++++++++++++++----------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/app/modules/ws2p/lib/WS2PCluster.ts b/app/modules/ws2p/lib/WS2PCluster.ts index 3502138a3..101e0c89d 100644 --- a/app/modules/ws2p/lib/WS2PCluster.ts +++ b/app/modules/ws2p/lib/WS2PCluster.ts @@ -587,24 +587,31 @@ export class WS2PCluster { } let ws2pPrivate = '' let ws2pPublic = '' - if (this.server.conf.proxiesConf && (this.server.conf.proxiesConf.proxyTorAddress || this.server.conf.proxiesConf.forceTor)) { - network.out = WS2PConstants.NETWORK.OUTCOMING.TOR - } if (this.server.conf.ws2p) { - if (this.server.conf.ws2p.remotehost) { - if (this.server.conf.ws2p.remotehost.match(WS2PConstants.HOST_ONION_REGEX)) { + if (this.server.conf.ws2p.publicAccess && + (this.server.conf.ws2p.remotehost && this.server.conf.ws2p.remoteport) + || + (this.server.conf.ws2p.upnp && this.server.conf.upnp) + ) + { + ws2pPublic = 'I' + // Determine the network layer + if (this.server.conf.ws2p.remotehost && this.server.conf.ws2p.remotehost.match(WS2PConstants.HOST_ONION_REGEX)) { network.in = WS2PConstants.NETWORK.INCOMING.TOR } - if (this.server.conf.ws2p.publicAccess) { - ws2pPublic = 'I' - switch (network.in) { - case WS2PConstants.NETWORK.INCOMING.TOR: ws2pPublic += 'T'; break; - default: ws2pPublic += 'C'; break; - } + // Apply the network layer + switch (network.in) { + case WS2PConstants.NETWORK.INCOMING.TOR: ws2pPublic += 'T'; break; + default: ws2pPublic += 'C'; break; } } if (this.server.conf.ws2p.privateAccess) { ws2pPrivate = 'O' + // Determine the network layer + if (this.server.conf.proxiesConf && (this.server.conf.proxiesConf.proxyTorAddress || this.server.conf.proxiesConf.forceTor)) { + network.out = WS2PConstants.NETWORK.OUTCOMING.TOR + } + // Apply the network layer switch (network.out) { case WS2PConstants.NETWORK.OUTCOMING.TOR: ws2pPrivate += 'T'; if (this.server.conf.proxiesConf && this.server.conf.proxiesConf.reachingClearEp) { @@ -615,7 +622,7 @@ export class WS2PCluster { } } break; - default: ws2pPrivate += 'C'; break; + default: ws2pPrivate += 'CA'; break; } } } -- GitLab