summary refs log tree commit diff stats
path: root/lib/pure
diff options
context:
space:
mode:
authorAndreas Rumpf <rumpf_a@web.de>2016-06-28 19:37:24 +0200
committerGitHub <noreply@github.com>2016-06-28 19:37:24 +0200
commita5f234250ea971d6fc3269429aaf6ab3e1ead236 (patch)
tree6db7beea6f4855648ae82d316fb26b53217ac9ea /lib/pure
parentd8fda3e4bb533f75473bb7abcbe5f31a02699850 (diff)
parent45f76738ee6643cf434eb1f7326ad8ad40c344f9 (diff)
downloadNim-a5f234250ea971d6fc3269429aaf6ab3e1ead236.tar.gz
Merge pull request #4419 from endragor/android4-sockets
Added 'android4' define that declares a different gethostbyaddr
Diffstat (limited to 'lib/pure')
-rw-r--r--lib/pure/nativesockets.nim9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/pure/nativesockets.nim b/lib/pure/nativesockets.nim
index 15828ff35..4526afa49 100644
--- a/lib/pure/nativesockets.nim
+++ b/lib/pure/nativesockets.nim
@@ -326,8 +326,13 @@ proc getHostByAddr*(ip: string): Hostent {.tags: [ReadIOEffect].} =
                                   cint(AF_INET))
     if s == nil: raiseOSError(osLastError())
   else:
-    var s = posix.gethostbyaddr(addr(myaddr), sizeof(myaddr).Socklen,
-                                cint(posix.AF_INET))
+    var s =
+      when defined(android4):
+        posix.gethostbyaddr(cast[cstring](addr(myaddr)), sizeof(myaddr).cint,
+                            cint(posix.AF_INET))
+      else:
+        posix.gethostbyaddr(addr(myaddr), sizeof(myaddr).Socklen,
+                            cint(posix.AF_INET))
     if s == nil:
       raiseOSError(osLastError(), $hstrerror(h_errno))