Each incoming connection requires its own client socket.

This commit is contained in:
Mahlon E. Smith 2018-02-14 17:27:29 -08:00
parent 0dc6545498
commit 9441693a4a

View file

@ -200,9 +200,7 @@ proc serverloop: void =
let db = open( "", "", "", conf.dbopts ) let db = open( "", "", "", conf.dbopts )
if conf.verbose: echo( "Successfully connected to the backend database.".hl( fgGreen ) ) if conf.verbose: echo( "Successfully connected to the backend database.".hl( fgGreen ) )
var var server = newSocket()
server = newSocket()
client = newSocket()
server.set_sock_opt( OptReuseAddr, true ) server.set_sock_opt( OptReuseAddr, true )
server.bind_addr( Port(conf.listen_port), conf.listen_addr ) server.bind_addr( Port(conf.listen_port), conf.listen_addr )
@ -218,7 +216,10 @@ proc serverloop: void =
echo "" echo ""
while true: while true:
var client = newSocket()
var address = "" var address = ""
client.close
server.acceptAddr( client, address ) # blocking call server.acceptAddr( client, address ) # blocking call
spawn runthread( client, address, db, conf ) spawn runthread( client, address, db, conf )