From b744e4abc52ceafc54ef9d368e00422bcbf6d782 Mon Sep 17 00:00:00 2001
From: "Dmitry E. Oboukhov" <unera@debian.org>
Date: Mon, 25 Aug 2014 14:16:40 +0400
Subject: [PATCH] tcp_server: call prepare function before bind

(so user can use 'SO_REUSEADDR' option in tcp_server)
---
 src/lua/bsdsocket.lua | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lua/bsdsocket.lua b/src/lua/bsdsocket.lua
index 25dd1f6704..c036daf096 100644
--- a/src/lua/bsdsocket.lua
+++ b/src/lua/bsdsocket.lua
@@ -947,9 +947,9 @@ local function tcp_server_remote(list, prepare, handler)
 
         local ok = false
         if s ~= nil then
+            local backlog = prepare(s)
             if s:bind(addr.host, addr.port) then
-                local prepared, backlog = pcall(prepare, s)
-                if prepared and s:listen(backlog) then
+                if s:listen(backlog) then
                     ok = true
                 end
             end
-- 
GitLab