diff options
author | Matthew Wild <mwild1@gmail.com> | 2010-01-21 12:56:08 +0000 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2010-01-21 12:56:08 +0000 |
commit | 4ec0f47224c55725182e2fefa1749fba77e6fc0a (patch) | |
tree | c014045a4e8eee1684aa25b599b2d368a78350d1 /net/server_select.lua | |
parent | d532b1173a36940f73046798371b8077af98d0b7 (diff) | |
download | prosody-4ec0f47224c55725182e2fefa1749fba77e6fc0a.tar.gz prosody-4ec0f47224c55725182e2fefa1749fba77e6fc0a.zip |
net.server_{select,event}: Fail gracefully if socket doesn't have a setoption method (LuaSec issue I think)
Diffstat (limited to 'net/server_select.lua')
-rw-r--r-- | net/server_select.lua | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/server_select.lua b/net/server_select.lua index 116b4327..682a155d 100644 --- a/net/server_select.lua +++ b/net/server_select.lua @@ -354,7 +354,10 @@ wrapconnection = function( server, listeners, socket, ip, serverport, clientport return shutdown( socket, pattern ) end handler.setoption = function (self, option, value) - return socket:setoption(option, value); + if socket.setoption then + return socket:setoption(option, value); + end + return false, "setoption not implemented"; end handler.close = function( self, forced ) if not handler then return true; end |