2001-01-25 22:59:39 +01:00
|
|
|
host = host or "127.0.0.1"
|
|
|
|
port = port or 7
|
|
|
|
if arg then
|
|
|
|
host = arg[1] or host
|
|
|
|
port = arg[2] or port
|
|
|
|
end
|
|
|
|
print("Binding to host '" ..host.. "' and port " ..port.. "...")
|
|
|
|
udp, err = udpsocket()
|
|
|
|
if not udp then print(err) exit() end
|
2001-03-06 20:46:42 +01:00
|
|
|
err = udp:setsockname(host, port)
|
2001-01-25 22:59:39 +01:00
|
|
|
if err then print(err) exit() end
|
2001-03-06 20:46:42 +01:00
|
|
|
udp:timeout(5)
|
|
|
|
ip, port = udp:getsockname()
|
2001-01-25 22:59:39 +01:00
|
|
|
print("Waiting packets on " .. ip .. ":" .. port .. "...")
|
|
|
|
while 1 do
|
2001-03-06 20:46:42 +01:00
|
|
|
dgram, ip, port = udp:receivefrom()
|
2001-01-25 22:59:39 +01:00
|
|
|
if not dgram then print(ip)
|
|
|
|
else
|
|
|
|
print("Echoing from " .. ip .. ":" .. port)
|
2001-03-06 20:46:42 +01:00
|
|
|
udp:sendto(dgram, ip, port)
|
2001-01-25 22:59:39 +01:00
|
|
|
end
|
|
|
|
end
|