Index: src/OFTCPSocket.m ================================================================== --- src/OFTCPSocket.m +++ src/OFTCPSocket.m @@ -612,11 +612,11 @@ @throw [OFNotOpenException exceptionWithObject: self]; if (_address == NULL) @throw [OFInvalidArgumentException exception]; - if (_addressLength > sizeof(address.address)) + if (_addressLength > (socklen_t)sizeof(address.address)) @throw [OFOutOfRangeException exception]; memset(&address, '\0', sizeof(address)); memcpy(&address.address, _address, _addressLength); address.length = _addressLength; Index: src/socket.h ================================================================== --- src/socket.h +++ src/socket.h @@ -48,38 +48,31 @@ # include #endif /*! @file */ -#ifdef OF_AMIGAOS +#if defined(OF_AMIGAOS) && defined(OF_MORPHOS_IXEMUL) struct sockaddr_storage { uint8_t ss_len; - uint8_t ss_family; + sa_family_t ss_family; char ss_data[2 + sizeof(struct in_addr) + 8]; }; #endif #ifdef OF_MORPHOS typedef long socklen_t; #endif - #ifdef OF_MORPHOS_IXEMUL typedef int socklen_t; - -struct sockaddr_storage { - uint8_t ss_len; - uint8_t ss_family; - char ss_data[2 + sizeof(struct in_addr) + 8]; -}; #endif #ifdef OF_WII # include struct sockaddr_storage { u8 ss_len; - u8 ss_family; + sa_family_t ss_family; u8 ss_data[14]; }; #endif #ifdef OF_PSP Index: src/socket.m ================================================================== --- src/socket.m +++ src/socket.m @@ -315,12 +315,12 @@ return false; break; #ifdef OF_HAVE_IPV6 case AF_INET6: - if (address1->length < sizeof(struct sockaddr_in6) || - address2->length < sizeof(struct sockaddr_in6)) + if (address1->length < (socklen_t)sizeof(struct sockaddr_in6) || + address2->length < (socklen_t)sizeof(struct sockaddr_in6)) @throw [OFInvalidArgumentException exception]; addrIn6_1 = (struct sockaddr_in6 *)&address1->address; addrIn6_2 = (struct sockaddr_in6 *)&address2->address; @@ -368,11 +368,11 @@ hash ^= addrIn->sin_addr.s_addr; break; #ifdef OF_HAVE_IPV6 case AF_INET6: - if (address->length < sizeof(struct sockaddr_in6)) + if (address->length < (socklen_t)sizeof(struct sockaddr_in6)) @throw [OFInvalidArgumentException exception]; addrIn6 = (struct sockaddr_in6 *)&address->address; hash += (addrIn6->sin6_port << 1);