summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua')
-rw-r--r--Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua28
1 files changed, 28 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua b/Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua
new file mode 100644
index 00000000000..ea564e246d7
--- /dev/null
+++ b/Build/source/texk/web2c/luatexdir/luasocket/samples/echosrvr.lua
@@ -0,0 +1,28 @@
+-----------------------------------------------------------------------------
+-- UDP sample: echo protocol server
+-- LuaSocket sample files
+-- Author: Diego Nehab
+-----------------------------------------------------------------------------
+local socket = require("socket")
+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 = assert(socket.udp())
+assert(udp:setsockname(host, port))
+assert(udp:settimeout(5))
+ip, port = udp:getsockname()
+assert(ip, port)
+print("Waiting packets on " .. ip .. ":" .. port .. "...")
+while 1 do
+ dgram, ip, port = udp:receivefrom()
+ if dgram then
+ print("Echoing '" .. dgram .. "' to " .. ip .. ":" .. port)
+ udp:sendto(dgram, ip, port)
+ else
+ print(ip)
+ end
+end