summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/luasocket/test/tcp-getoptions
blob: f9b3d1bb8a47b72c6cd92af45b68259e917bd1bc (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
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env lua

require"socket"

port = 8765

function options(o)
    print("options for", o)

    for _, opt in ipairs{"keepalive", "reuseaddr", "tcp-nodelay"} do
        print("getoption", opt, o:getoption(opt))
    end

    print("getoption", "linger",
        "on", o:getoption("linger").on,
        "timeout", o:getoption("linger").timeout)
end

local m = socket.tcp()

options(m)

assert(m:bind("*", port))
assert(m:listen())

options(m)

m:close()

local m = socket.bind("*", port)

options(m)

local c = socket.connect("localhost", port)

options(c)

local s = m:accept()

options(s)