diff --git a/jester.nim b/jester.nim index 5c5379f..c193b2d 100644 --- a/jester.nim +++ b/jester.nim @@ -522,12 +522,21 @@ proc serve*( [$self.settings.port, self.settings.appName]) var jes = self + let domain = block: + if self.settings.bindAddr != "": + let ip = self.settings.bindAddr.parseIpAddress() + if ip.family == IPv4: + AF_INET + else: + AF_INET6 + else: + AF_INET when useHttpBeast: run( proc (req: httpbeast.Request): Future[void] = {.gcsafe.}: result = handleRequest(jes, req), - httpbeast.initSettings(self.settings.port, self.settings.bindAddr, self.settings.numThreads) + httpbeast.initSettings(self.settings.port, self.settings.bindAddr, self.settings.numThreads, domain) ) else: self.httpServer = newAsyncHttpServer(reusePort=self.settings.reusePort) @@ -535,7 +544,7 @@ proc serve*( self.settings.port, proc (req: asynchttpserver.Request): Future[void] {.gcsafe, closure.} = result = handleRequest(jes, req), - self.settings.bindAddr) + self.settings.bindAddr, domain = domain) if not self.settings.futureErrorHandler.isNil: serveFut.callback = self.settings.futureErrorHandler else: diff --git a/jester/request.nim b/jester/request.nim index 9a1a83c..249dc2a 100644 --- a/jester/request.nim +++ b/jester/request.nim @@ -1,6 +1,6 @@ import uri, cgi, tables, logging, strutils, re, options -import jester/private/utils +import private/utils when useHttpBeast: import httpbeast except Settings