diff --git a/third_party/musl/src/starboard/network/socket.c b/third_party/musl/src/starboard/network/socket.c index 2ad9df12db5..d3d0528d735 100644 --- a/third_party/musl/src/starboard/network/socket.c +++ b/third_party/musl/src/starboard/network/socket.c @@ -177,20 +177,24 @@ int ConvertSocketAddressPosixToSb(const struct sockaddr* address, SbSocketAddres errno = EINVAL; return -1; } - struct sockaddr_in* addr_in = (struct sockaddr_in*)address; - switch (addr_in->sin_family){ - case AF_INET: + switch (addr_in->sin_family) { + case AF_INET: { + struct sockaddr_in* addr_in = (struct sockaddr_in*)address; sbAddress->type = kSbSocketAddressTypeIpv4; + sbAddress->port = addr_in->sin_port; memcpy(sbAddress->address, &addr_in->sin_addr, kAddressLengthIpv4); break; + } #if SB_HAS(IPV6) - case AF_INET6: + case AF_INET6: { + struct sockaddr_in6* addr_in = (struct sockaddr_in6*)address; sbAddress->type = kSbSocketAddressTypeIpv6; - memcpy(sbAddress->address, &addr_in->sin_addr, kAddressLengthIpv6); + sbAddress->port = addr_in->sin6_port; + memcpy(sbAddress->address, &addr_in->sin6_addr, kAddressLengthIpv6); break; + } #endif } - sbAddress->port = addr_in->sin_port; return 0; } @@ -200,21 +204,25 @@ int ConvertSocketAddressSbToPosix(const SbSocketAddress* sbAddress, struct socka errno = EINVAL; return -1; } - struct sockaddr_in* addr_in = (struct sockaddr_in*)address; - switch (sbAddress->type){ - case kSbSocketAddressTypeIpv4: + switch (sbAddress->type) { + case kSbSocketAddressTypeIpv4: { + struct sockaddr_in* addr_in = (struct sockaddr_in*)address; addr_in->sin_family = AF_INET; + addr_in->sin_port = sbAddress->port; memcpy(&addr_in->sin_addr, sbAddress->address, kAddressLengthIpv4); break; + } #if SB_HAS(IPV6) - case kSbSocketAddressTypeIpv6: - addr_in->sin_family = AF_INET6; - memcpy(&addr_in->sin_addr, sbAddress->address, kAddressLengthIpv6); + case kSbSocketAddressTypeIpv6: { + struct sockaddr_in6* addr_in = (struct sockaddr_in6*)address; + addr_in->sin6_family = AF_INET6; + addr_in->sin6_port = sbAddress->port; + memcpy(&addr_in->sin6_addr, sbAddress->address, kAddressLengthIpv6); break; + } #endif default:{} } - addr_in->sin_port = sbAddress->port; return 0; }