Fixed network stack multiple tcp connections

Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
This commit is contained in:
Łukasz Magiera 2015-06-14 13:59:58 +02:00
parent d37e42258e
commit dd184681c9
No known key found for this signature in database
GPG Key ID: DAF1D53BBD4D4790

View File

@ -106,7 +106,7 @@ function network.tcp.open(addr, port)
if internal.tcp.channels[ch] and internal.tcp.channels[ch].next then
internal.tcp.freeCh = internal.tcp.channels[ch].next
else
internal.tcp.freeCh = #internal.tcp.channels+1
internal.tcp.freeCh = #internal.tcp.channels+2
end
internal.tcp.channels[ch] = {open = false, waiting = true, addr = addr, port = port}--mark openning
@ -143,7 +143,7 @@ function internal.tcp.handle(origin, data)
if internal.tcp.channels[ch] and internal.tcp.channels[ch].next then
internal.tcp.freeCh = internal.tcp.channels[ch].next
else
internal.tcp.freeCh = #internal.tcp.channels+1
internal.tcp.freeCh = #internal.tcp.channels+2
end
internal.tcp.channels[ch] = {open = true, remote = rchan, addr = origin, port = port}
driver.send(origin, "TA".. string.char(math.floor(ch/256))..string.char(ch%256) .. string.char(math.floor(rchan/256)) .. string.char(rchan%256))