diff --git a/src/lua/bsdsocket.lua b/src/lua/bsdsocket.lua
index 3b65bc04137cb3f88591bd588ceae8fba1c939e6..0a4c0ea1067742ba37d9effe61861199ab8751ad 100644
--- a/src/lua/bsdsocket.lua
+++ b/src/lua/bsdsocket.lua
@@ -1054,7 +1054,8 @@ local function tcp_server(host, port, opts, timeout)
         dns = {{host = host, port = port, family = 'AF_UNIX', protocol = 0,
             type = 'SOCK_STREAM' }}
     else
-        dns = getaddrinfo(host, port, timeout, { type = 'SOCK_STREAM' })
+        dns = getaddrinfo(host, port, timeout, { type = 'SOCK_STREAM',
+            flags = 'AI_PASSIVE'})
         if dns == nil then
             return nil
         end