From 3c022ef91a2f56c9a1573d0d4134d04e8ee5ca56 Mon Sep 17 00:00:00 2001 From: RblSb Date: Tue, 8 Nov 2022 21:30:36 +0300 Subject: Add "localNetworkOnly" option --- src/Types.hx | 1 + src/server/Main.hx | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/Types.hx b/src/Types.hx index 61a1ab1..fe0e6b2 100644 --- a/src/Types.hx +++ b/src/Types.hx @@ -26,6 +26,7 @@ typedef Config = { requestLeaderOnPause:Bool, localAdmins:Bool, allowProxyIps:Bool, + localNetworkOnly:Bool, templateUrl:String, youtubeApiKey:String, youtubePlaylistLimit:Int, diff --git a/src/server/Main.hx b/src/server/Main.hx index f7d61e0..282c09a 100644 --- a/src/server/Main.hx +++ b/src/server/Main.hx @@ -91,7 +91,8 @@ class Main { userList = loadUsers(); config.isVerbose = verbose; config.salt = generateConfigSalt(); - localIp = Utils.getLocalIp(); + if (config.localNetworkOnly) localIp = "127.0.0.1"; + else localIp = Utils.getLocalIp(); globalIp = localIp; port = config.port; final envPort = (process.env : Dynamic).PORT; @@ -115,10 +116,14 @@ class Main { function runServer():Void { trace('Local: http://$localIp:$port'); - if (!isNoState) Utils.getGlobalIp(ip -> { - globalIp = ip; - trace('Global: http://$globalIp:$port'); - }); + if (config.localNetworkOnly) { + trace("Global network is disabled in config"); + } else { + if (!isNoState) Utils.getGlobalIp(ip -> { + globalIp = ip; + trace('Global: http://$globalIp:$port'); + }); + } final dir = '$rootDir/res'; HttpServer.init(dir, '$rootDir/user/res', config.localAdmins); @@ -129,7 +134,8 @@ class Main { }); wss = new WSServer({server: server}); wss.on("connection", onConnect); - server.listen(port, onServerInited); + if (config.localNetworkOnly) server.listen(port, localIp, onServerInited); + else server.listen(port, onServerInited); new Timer(25000).run = () -> { for (client in clients) { -- cgit v1.2.3