From 0d01b03ddc286ce0cbfa8818b8f402e7091097aa Mon Sep 17 00:00:00 2001 From: XeonSquared Date: Sat, 21 Dec 2019 18:36:02 +1100 Subject: [PATCH] cleaned up vtunnel, should actually work now --- service/vtunnel.lua | 25 +++++-------------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/service/vtunnel.lua b/service/vtunnel.lua index dda0f98..f34c0ef 100644 --- a/service/vtunnel.lua +++ b/service/vtunnel.lua @@ -10,7 +10,6 @@ cfg.peers = {} cfg.rtimer = 5 cfg.katimer = 30 local listeners = {} -local timers = {} local proxies = {} local function loadcfg() @@ -84,7 +83,7 @@ local function createTunnel(host,port,addr,raddr) end proxy.connect() proxy.last = computer.uptime() - return proxy, read + return proxy end vt = {} @@ -94,9 +93,8 @@ function start() print(string.format("Connecting to %s:%d",v.host,v.port)) v.addr = v.addr or vcomponent.uuid() v.raddr = v.raddr or vcomponent.uuid() - local px,tr = createTunnel(v.host, v.port, v.addr, v.raddr) + local px = createTunnel(v.host, v.port, v.addr, v.raddr) vcomponent.register(v.addr, "tunnel", px) - timers[v.addr] = tr proxies[v.addr] = px end for k,v in pairs(os.tasks()) do @@ -106,12 +104,6 @@ function start() end end function vt.stop() - for k,v in pairs(listeners) do - event.ignore(v[1],v[2]) - end - for k,v in pairs(timers) do - event.cancel(v) - end for k,v in pairs(proxies) do vcomponent.unregister(k) end @@ -157,21 +149,14 @@ end vt.start = start _G.libs.vtunnel = vt -print(pcall(start)) +start() local last = computer.uptime() while true do local tE = {coroutine.yield()} if computer.uptime() > last + cfg.rtimer then - for k,v in pairs(timers) do - print(pcall(v)) + for k,v in pairs(proxies) do + v.read() end last = computer.uptime() end end - ---[[ -_G.vtunnel = {} - -_G.vtunnel.start = start -_G.vtunnel.delpeer = delpeer -]]