aboutsummaryrefslogtreecommitdiff
path: root/test/testsrvr.lua
blob: cf94b45e1fc45e09d48a1f37261d9ec413990f78 (plain)
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
28
29
30
31
require"socket"

host = host or "localhost"
port = port or "8080"

server, error = socket.bind(host, port)
if not server then print("server: " .. tostring(error)) os.exit() end
ack = "\n"
while 1 do
    print("server: waiting for client connection...");
    control, error = server:accept()
    assert(control, error)
    -- control:setoption("nodelay", true)
    while 1 do 
        command, error = control:receive()
print(error)
        if error then
            control:close()
            print("server: closing connection...")
            break
        end
        sent, error = control:send(ack)
        if error then
            control:close()
            print("server: closing connection...")
            break
        end
        print(command);
        (loadstring(command))()
    end
end