@Kalamatee I stumbled over a 64bit bug in ArosTCP, but I am not sure if I have the actual sources. The fix would be:
diff --git a/workbench/network/stacks/AROSTCP/bsdsocket/api/gethostnamadr.c b/workbench/network/stacks/AROSTCP/bsdsocket/api/gethostnamadr.c
index 8a32476a89..849cd14e12 100644
--- a/workbench/network/stacks/AROSTCP/bsdsocket/api/gethostnamadr.c
+++ b/workbench/network/stacks/AROSTCP/bsdsocket/api/gethostnamadr.c
@@ -401,7 +401,7 @@ D(bug("[AROSTCP](gethostnameadr.c) gethostbyname: name IS an IP address\n"));
}
if (allocDataBuffer(&libPtr->hostents,
- sizeof (struct hostent) + 28) == FALSE) {
+ sizeof (struct hostent) + 3 * sizeof(u_long) + strlen(name) + 1) == FALSE) {
writeErrnoValue(libPtr, ENOMEM);
h_errno = 0;
return NULL;
The fixed 28 is too small when pointers are 64bit