Lua Socket: Difference between revisions

From Spring
Jump to navigationJump to search
Abma (talk | contribs)
Abma (talk | contribs)
No edit summary
Line 2: Line 2:


see https://github.com/spring/spring/tree/luasocket
see https://github.com/spring/spring/tree/luasocket
==config settings==
All LuaSocket related config is readonly for LuaWidgets. They can be only changed through unitsync.
{|
|-
|LuaSocketEnabled = 1
|Default is 0 means, all Socket functions are disabled
|-
|TCPAllowConnect
|allow TCP-connections to the listed hosts, for example: "springrts.com:80 springfiles.com:80"
|-
|TCPAllowListen
|Server TCP-sockets are allowed on this port, for example: "localhost:1234 0.0.0.0:12345"
|-
|UDPAllowConnect
|see TCPAllowConnect
|-
|UDPAllowConnect
|see TCPAllowListen
|-
|}





Revision as of 00:43, 30 January 2012

LuaSocket is a development branch of spring:

see https://github.com/spring/spring/tree/luasocket


config settings

All LuaSocket related config is readonly for LuaWidgets. They can be only changed through unitsync.


LuaSocketEnabled = 1 Default is 0 means, all Socket functions are disabled
TCPAllowConnect allow TCP-connections to the listed hosts, for example: "springrts.com:80 springfiles.com:80"
TCPAllowListen Server TCP-sockets are allowed on this port, for example: "localhost:1234 0.0.0.0:12345"
UDPAllowConnect see TCPAllowConnect
UDPAllowConnect see TCPAllowListen



example code

see https://github.com/spring/spring/blob/luasocket/cont/examples/Widgets/luasocket.lua

Notes / known issues / TODO

  • dns resolving is blocking
  • allow rules have exactly match the host:port in script. currently its not possible to use host:port in a lua widget and use the resolved hostname for connecting (and vice versa) (simple workaround, add both as rule)
  • socket=require("socket") is needed
  • most lua scripts from luasocket won't work as they are blocking! rewriting them non-blocking is required! (should be in most cases few work, as parsing stuff can be reused)
  • udp sendto isn't checked, only binding the udp-socket

documentation