about summary refs log tree commit diff stats
path: root/network.tlv
blob: c4c2d10b0fa4d9bb82df8e10a051c2c978d7e6bf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
teliva_program = {
  main = [==[
function main()
  local server = assert(socket.bind("*", 8080))
  server:settimeout(1)
  curses.mvaddstr(1, 1, "Server bound and waiting for one request")
  curses.refresh()
  local available_sockets, _, error = socket.select({server}, nil)
  for _, available_socket in ipairs(available_sockets) do
    local client = available_socket:accept()
    curses.mvaddstr(2, 1, "Connection received")
    curses.refresh()
    client:settimeout(1)
    local line, error = client:receive()
    if error then
        curses.mvaddstr(3, 1, "error")
        curses.refresh()
        server:close()
    else
        curses.stdscr():mvaddstr(3, 1, "received:")
        curses.stdscr():mvaddstr(4, 3, line)
        curses.refresh()
    end
  end
  curses.getch()
end]==],
}