Browse Source

cleaned up vtunnel, should actually work now

pull/1/head
XeonSquared 5 months ago
parent
commit
0d01b03ddc
1 changed files with 5 additions and 20 deletions
  1. +5
    -20
      service/vtunnel.lua

+ 5
- 20
service/vtunnel.lua View File

@@ -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
]]

Loading…
Cancel
Save