ABI fixes for OSX/BSD; fixes #6860 (#11666)

(cherry picked from commit 02b9af2f75)
This commit is contained in:
Andreas Rumpf
2019-07-06 13:00:29 +02:00
committed by narimiran
parent 1b10f926c8
commit 5ecfbb5a4a
9 changed files with 613 additions and 11 deletions

View File

@@ -46,7 +46,7 @@ proc createServer(port: Port) {.async.} =
var server = createAsyncNativeSocket()
block:
var name: Sockaddr_in
name.sin_family = toInt(AF_INET).uint16
name.sin_family = typeof(name.sin_family)(toInt(AF_INET))
name.sin_port = htons(uint16(port))
name.sin_addr.s_addr = htonl(INADDR_ANY)
if bindAddr(server.SocketHandle, cast[ptr SockAddr](addr(name)),

View File

@@ -28,7 +28,7 @@ proc saveReceivedPort(port: int) =
proc prepareAddress(intaddr: uint32, intport: uint16): ptr Sockaddr_in =
result = cast[ptr Sockaddr_in](alloc0(sizeof(Sockaddr_in)))
result.sin_family = toInt(nativesockets.AF_INET).uint16
result.sin_family = typeof(result.sin_family)(toInt(nativesockets.AF_INET))
result.sin_port = nativesockets.htons(intport)
result.sin_addr.s_addr = nativesockets.htonl(intaddr)