Fixed functions that return messages in ?socket.c.

Moved complexity of connect and accept there.
Created a new options.c module to take care of options.
Auxiliar.c is now cleaner.
This commit is contained in:
Diego Nehab 2004-01-21 18:40:52 +00:00
parent e63f500d24
commit 195069cf5f
16 changed files with 284 additions and 275 deletions

View file

@ -49,8 +49,7 @@ local check_result = function(response, expect, ignore)
for i,v in response do
if not ignore[i] then
if v ~= expect[i] then
v = string.sub(type(v) == "string" and v or "", 1, 70)
print(v)
print(string.sub(tostring(v), 1, 70))
fail(i .. " differs!")
end
end
@ -59,7 +58,7 @@ local check_result = function(response, expect, ignore)
if not ignore[i] then
if v ~= response[i] then
v = string.sub(type(v) == "string" and v or "", 1, 70)
print(v)
print(string.sub(tostring(v), 1, 70))
fail(i .. " differs!")
end
end

View file

@ -378,6 +378,19 @@ function connect_timeout()
c:close()
end
------------------------------------------------------------------------
function rebind_test()
local c = socket.bind("localhost", 0)
local i, p = c:getsockname()
local s, e = socket.tcp()
assert(s, e)
s:setoption("reuseaddr", false)
r, e = s:bind("localhost", p)
assert(not r, "managed to rebind!")
assert(e == "address already in use")
print("ok")
end
------------------------------------------------------------------------
test("method registration")
test_methods(socket.tcp(), {
@ -416,6 +429,9 @@ test_selectbugs()
test("empty host connect: ")
empty_connect()
test("rebinding: ")
rebind_test()
test("active close: ")
active_close()