From 395e63d5aafb26fbd4c216ae7e03e58efad4ec34 Mon Sep 17 00:00:00 2001
From: zawata <zawataza@gmail.com>
Date: Tue, 30 Jun 2015 16:59:27 -0700
Subject: [PATCH] SOC:U : Update deprecated function gethostbyname() to
 getaddrinfo()

---
 src/core/hle/service/soc_u.cpp | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/core/hle/service/soc_u.cpp b/src/core/hle/service/soc_u.cpp
index 1e0f5df9b..3f0c5e388 100644
--- a/src/core/hle/service/soc_u.cpp
+++ b/src/core/hle/service/soc_u.cpp
@@ -469,11 +469,17 @@ static void GetHostId(Service::Interface* self) {
 
     char name[128];
     gethostname(name, sizeof(name));
-    hostent* host = gethostbyname(name);
-    in_addr* addr = reinterpret_cast<in_addr*>(host->h_addr);
+    addrinfo hints = {};
+    addrinfo* res;
+
+    hints.ai_family = AF_INET;
+    getaddrinfo(name, NULL, &hints, &res);
+    sockaddr_in* sock_addr = reinterpret_cast<sockaddr_in*>(res->ai_addr);
+    in_addr* addr = &sock_addr->sin_addr;
 
     cmd_buffer[2] = addr->s_addr;
     cmd_buffer[1] = 0;
+    freeaddrinfo(res);
 }
 
 static void Close(Service::Interface* self) {