From 681d36d443fcd5a7a9827042a9fb81ea490fbe08 Mon Sep 17 00:00:00 2001 From: Jonathan Staab Date: Wed, 29 Mar 2023 11:13:15 -0500 Subject: [PATCH] Fall back to normal relay connections if multiplexer fails to connect --- package-lock.json | Bin 603917 -> 603917 bytes package.json | 2 +- src/agent/pool.ts | 21 ++++++++++++++++----- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 6b504cb94cfc290d7f78791db3000ca0aa4b63e6..195b630813d814840aa7cec55818f4d23a5c1be3 100644 GIT binary patch delta 279 zcmeBur_%dQWy4=4M#JWROzr=e7=f5+`#&aTyH(SlPGmEhp0}1+eDdM*%AoYoF77a#z@gj@bjS7!BAm8L0HcUw$N&HU delta 279 zcmeBur_%dQWy4=4MuX;mOzr=e7=f5+`#&aTyH(S-Sa29m&tJ pool.get(url))) - ) + let target + + // Try to use our multiplexer, but if it fails to connect fall back to relays + if (Config.multiplextrUrl) { + const socket = pool.get(Config.multiplextrUrl) + + if (!socket.error) { + target = new Plex(urls, pool.get(Config.multiplextrUrl)) + } + } + + if (!target) { + target = new Relays(urls.map(url => pool.get(url))) + } + + const executor = new Executor(target) executor.handleAuth({ onAuth(url, challenge) {